从GPT-3走到GPT-4:AI GPT笔记

技术的进步往往快于预算表的更新速度。

最近有朋友问我:“GPT-4 这么强,是不是该把项目里所有模型都换掉?“当时场景是自动化客服和部分内容生成,GPT-3.5-turbo 已经能应付基本需求。

为什么从 GPT-3 开始,又为什么要考虑 GPT-4

最开始上 GPT-3 的原因很简单:能跑、能用、成本相对可控。当时的项目场景是自动化客服和部分内容生成,GPT-3.5-turbo 已经能满足基本需求。但用着用着就发现几个问题:

  • 复杂任务理解力不够,尤其是多轮对话中的上下文维护
  • 对行业术语的理解有偏差,需要大量 prompt 工程来弥补
  • 生成的文案偶尔会出现逻辑断裂,需要人工二次审核

这些问题在业务量不大时还能靠人力兜底,业务一扩张就顶不住。GPT-4 进入评估名单,主要是因为 GPT-3.5 在复杂任务上已经摸到天花板,跟"最新最强"关系不大。

GPT-3 时代的实践

基础使用模式

刚开始用 GPT-3 的方式很直接:写一段 prompt,调用 API,拿结果。

from openai import OpenAI

client = OpenAI(api_key="your-api-key")

response = client.chat.completions.create(
    model="gpt-3.5-turbo",
    messages=[
        {"role": "system", "content": "你是一个专业的客服助手"},
        {"role": "user", "content": "我想了解产品定价"}
    ]
)

这个阶段的问题主要在 prompt 设计上。同样的需求,用不同的问法、不同的上下文结构,结果差别很大。于是开始尝试各种 prompt 模板和工程化方案。

踩坑记录

第一个坑是上下文管理。GPT-3.5 的上下文窗口有限,长对话很容易超出限制,只能通过各种"压缩历史"的方法来缓解。我们试过:

  • 只保留最近 10 轮对话
  • 对历史对话做摘要式压缩
  • 用向量检索找到最相关的历史片段

这些方法都有用,但也都各有局限。保留最近轮数会丢失关键信息,压缩会丢失细节,向量检索虽然能找回相关内容,但增加了复杂度和延迟。

第二个坑是成本控制。早期没做优化,单次调用成本虽不高,但累积起来就很可观。后来开始做:

  • 输出 token 数量限制
  • 批量处理优化
  • 模型选择策略(简单任务用小模型,复杂任务用大模型)

第三个坑是稳定性。偶尔会遇到响应超时、格式不一致或者突然"胡言乱语"的情况。这种时候只能靠重试和人工兜底。

成本与效果权衡

在 GPT-3 时代,我们的成本控制策略大概是:

  • 简单问答:gpt-3.5-turbo,成本最低,响应快
  • 中等复杂度任务:gpt-3.5-turbo + prompt 优化,成本可控
  • 高复杂度任务:gpt-3.5-turbo + 多步拆解,成本较高但必需

效果上,简单任务表现不错,复杂任务则需要大量 prompt 工程和流程拆解才能达到可用水平。

为什么考虑 GPT-4

业务量上来后,GPT-3 的几个问题变得越来越明显:

  • 复杂任务效果不稳定,需要大量人力审核
  • 行业理解和逻辑推理能力不足,需要额外知识库和规则引擎
  • 长文本处理能力有限,很多场景做不了

这些问题不是通过 prompt 优化就能解决的,它们是模型能力的天然限制。这时候 GPT-4 就成了需要认真评估的选项。

GPT-4 的实践过程

初期尝试与成本冲击

第一次把 GPT-4 接入测试环境时,成本数据直接把我们吓了一跳。同样的 prompt,GPT-4 的成本是 GPT-3.5 的 10 倍以上。如果直接全量迁移,成本会直接翻倍不止。

我们做了几次成本对比:

# 简单任务成本对比
gpt35_cost = 0.002  # 每 1K tokens
gpt4_cost = 0.03    # 每 1K tokens
cost_ratio = gpt4_cost / gpt35_cost  # 15倍

# 复杂任务成本对比(因 GPT-4 效果更好,可用更少 token 达到同样效果)
gpt35_complex = 0.01
gpt4_complex = 0.025
cost_ratio = gpt4_complex / gpt35_complex  # 2.5倍

这个对比告诉我们:简单任务上 GPT-4 明显不值得,但复杂任务上,如果 GPT-4 能用更少的 token 达到更好的效果,成本差距就没那么大。

混合策略的摸索

既然全量迁移成本太高,那就只能做混合策略。我们的方案是:

  • 简单任务继续用 GPT-3.5
  • 复杂任务用 GPT-4
  • 设置触发规则,根据任务复杂度自动选择模型

实现逻辑大概是这样:

flowchart TD A[接收任务] --> B{复杂度评估} B -->|简单| C[GPT-3.5] B -->|中等| D{需要深度推理?} B -->|复杂| E[GPT-4] D -->|是| E D -->|否| C C --> F[结果评估] E --> F F --> G{结果质量达标?} G -->|是| H[返回结果] G -->|否| I[尝试另一个模型] I --> F

这个方案运行一段时间后,我们发现效果还可以,但成本仍然偏高。于是继续优化。

效果与成本的平衡点

经过一段时间的摸索,我们找到了一些实用的平衡点:

场景优先级

  • 高价值、低频次任务:优先 GPT-4
  • 低价值、高频次任务:GPT-3.5 就够了
  • 需要高度准确性的内容:GPT-4 + 人工审核
  • 容错率较高的内容:GPT-3.5

Prompt 优化

  • GPT-4 的 prompt 可以更简洁,它理解力强
  • GPT-3.5 的 prompt 需要更详细和明确
  • 复杂任务下,给 GPT-4 更好的 prompt 能显著减少 token 使用量

流程拆解

  • 能拆的任务尽量拆,简单步骤用 GPT-3.5,关键步骤用 GPT-4
  • 批量处理时,先抽样本测试不同模型的效果和成本
  • 设置兜底规则,避免某个环节拖慢整个流程

实践中的关键差异

理解能力

GPT-4 在理解复杂上下文和隐含意图方面确实比 GPT-3 强不少。比如这个例子:

GPT-3.5 的表现

用户:我不满意你们的服务,但也不想换供应商,只是希望改进。
模型:非常抱歉给您带来不好的体验,如果您对我们的服务不满意,我们可以为您退款...

GPT-4 的表现

用户:我不满意你们的服务,但也不想换供应商,只是希望改进。
模型:理解您的顾虑。既然您还是愿意继续合作,那我们来具体看看哪些方面需要改进?

这种差别在日常对话中可能不明显,但在客服场景下,正确的理解能直接提升用户体验。

逻辑推理

GPT-4 的逻辑推理能力明显更好,尤其是在需要多步推理的任务中。

graph LR A[输入复杂问题] --> B[GPT-3.5<br>直接回答] A --> C[GPT-4<br>先拆解步骤] B --> D[可能遗漏细节] C --> E[逐步推理<br>覆盖关键点] E --> F[更准确的结果]

行业知识

GPT-4 对专业术语和行业知识的理解也更准确,我们不再需要花大量精力做领域 prompt 注入。

成本优化实战

实际成本结构

经过优化后,我们的月度成本结构大概是:

  • GPT-3.5 占 70%
  • GPT-4 占 30%
  • 总成本比全量 GPT-4 降低 60%
  • 比全量 GPT-3.5 增加 40%,但效果提升明显

监控与调优

我们还做了实时的成本监控和效果追踪:

  • 按任务类型记录成本和效果
  • 设置成本告警阈值
  • 定期评估模型选择策略的合理性

这些监控数据帮助我们持续优化模型分配策略。

最终的实践经验

经过这些折腾,我们总结出了一些实用的经验:

不要迷信最新最强

  • 不是所有任务都需要 GPT-4
  • 成本和效果的权衡永远是动态的
  • 业务价值要优先于技术追新

渐进式迁移更稳妥

  • 先在小流量上测试
  • 积累足够数据后再做决策
  • 设置回滚机制,避免一次性风险

监控和评估要持续

  • 成本和效果都会随着时间变化
  • 定期回顾策略的有效性
  • 不要一次性定死所有规则

结果与反思

最终的成果是:我们通过混合策略,把复杂任务的效果提升了约 40%,而总成本只增加了 30%。更重要的是,人工审核的工作量明显减少,团队可以把更多精力放在业务创新上。

折腾下来更清楚一点:模型选型首先是业务账——同样的 API 组合,换场景结论可以完全不同。

GPT-4 确实更强,也有它够不着的地方。技术选型最后还是看哪块业务值得多花那几倍的 token 钱。


回头看,收获主要在决策框架:怎么拆任务、怎么测成本、怎么设回滚。GPT-5 如果在路上,大概还得再走一遍这套流程,至少不会像第一次换模型那样抓瞎。

版权声明: 本文首发于 指尖魔法屋-从GPT-3走到GPT-4:AI GPT笔记https://blog.thinkmoon.cn/post/400-ai-openai-gpt-gpt3-gpt4-practice/) 转载或引用必须申明原指尖魔法屋来源及源地址!