版本图谱一张表看懂三代差异先把结论说在前面GPT-4 不是“全面碾压”而是在“上下文、多模态、推理”三个维度做了加法代价是更高的单价与延迟。下面这张表建议收藏后续做预算和 SLA 都能直接套用。维度GPT-3 davinciGPT-3.5 turboGPT-4 turbo最大上下文4 k16 k128 k知识截止2021-062021-092023-04输入单价 $/1k token0.020.0010.01输出单价 $/1k token0.020.0020.03多模态无无图文典型首响延迟0.8 s0.4 s1.2 s支持微调是否否强化学习人类反馈(RLHF)无有有注价格取自 2024-05 官方页实际结算按“批次数地区”浮动但比例基本稳定。场景化选型开发团队如何“对症下药”代码生成与单测需求高并发、低延迟、代码 token 通常 2 k。推荐GPT-3.5-turbo。理由单价便宜 10 倍延迟低 50%且代码属于“高概率模式”3.5 的 RLHF 已足够对齐人类偏好。客服/IM 机器人需求上下文需要长期记忆、回答必须可控。推荐GPT-4-turbo-128k。理由一次可塞入 20 条 FAQ 对话历史避免“失忆”导致的答非所问虽然贵但客服并发远低于代码场景综合 ROI 可接受。多模态处理读图 OCR 推理需求输入图片、输出 JSON。推荐GPT-4-turbo-vision。理由目前唯一官方支持图文的版本zero-shot 即可做版面分析、票据抽取省去训练 CV 小模型的时间。离线批量摘要需求一次性跑 100 万条评论预算锁死。推荐GPT-3.5-turbo 16 k 上下文temperature0.3。理由批量大、延迟不敏感3.5 的性价比最高若摘要质量仍不达标可“分段摘要→再摘要”两级流水线成本只有 GPT-4 的 1/20。API 集成示例一份拿来即用的 Python 模板下面这段代码同时兼容 3.5/4自动重试、流式输出、异常熔断一步到位可直接贴进你的 utils.py。import openai, tenacity, os from openai import OpenAI client OpenAI(api_keyos.getenv(OPENAI_API_KEY)) tenacity.retry( waittenacity.wait_exponential(multiplier1, min4, max30), stoptenacity.stop_after_attempt(5), retrytenacity.retry_if_exception_type( (openai.RateLimitError, openai.APIConnectionError) ), ) def chat_completion( model: str, messages: list, temperature: float 0.3, stream: bool True, max_tokens: int 2048, ): response client.chat.completions.create( modelmodel, messagesmessages, temperaturetemperature, max_tokensmax_tokens, streamstream, ) if stream: for chunk in response: delta chunk.choices[0].delta.content or yield delta else: yield response.choices[0].message.content # 调用示例 if __name__ __main__: prompt [ {role: system, content: 你是一位资深 Python 代码审查师}, {role: user, content: 下面这段代码为什么慢\ndef foo() canned_fish}, ] for token in chat_completion(gpt-3.5-turbo, prompt, streamTrue): print(token, end, flushTrue)小提示把streamFalse即可拿到完整 JSON方便入库做结构化解析若切换 GPT-4只需改第一参。成本优化三板斧temperature、缓存、批处理temperature 调节经验值代码生成 00.2创意写作 0.81.0。温度每下降 0.1平均 token 长度减少 5%8%直接省预算。语义缓存对“高频相似提问”做向量检索命中后直接返回历史答案可把 30% 的调用抹掉。推荐用 faiss sentence-transformers离线灌好 10 万条 FAQ线上延迟 50 ms。批处理 长上下文把 50 条短 prompt 拼接成 1 条长 prompt一次性让模型输出 50 个答案再按换行符切分。GPT-4-128k 的“长上下文”特性让这一招可行实测可降低 35% 总 token系统提示只需写一次。避坑指南版本差异导致的 Prompt 兼容性System 角色权重变化GPT-3 davinci 时代没有 system 字段很多老项目把指令写在 user 里。迁移到 3.5/4 后如果直接把旧 prompt 粘过去会出现“指令不跟读”的现象。解决把最高优先级指令挪到 system且在第一句就声明“你是一名 xxx必须遵守以下规则”。Function calling 格式差异GPT-4-turbo 的tools字段与 3.5 的functions不兼容混用会 400 报错。解决封装一层 adapter根据 model 名自动切换字段名保持上层业务 0 改动。最大 token 数“双向计费”3.5 的 16 k 是“输入输出”共享容易误以为“输入 15 k 后还能返 15 k”结果触发截断。解决先预估输出长度再反推输入可塞多少或者干脆用 GPT-4-128k把 buffer 拉到 20 k 以上。知识截断幻觉3.5 的知识停在 2021-09问“2022 年之后的事件”会一本正经地编答案。解决在 system 里加“如果你确认事件不在你的知识范围请回答‘我不知道’”或者外挂检索增强RAG让模型基于搜索结果生成。结论与开放思考题选模型本质上是在“质量—成本—延迟”三角里找切点代码辅助追求低延迟 低成本3.5 仍是主力客服、知识库需要长记忆4 的 128 k 让“多轮不丢上下文”成为可能多模态业务则只能上 4-vision别无分店。但大模型迭代速度远超软件工程惯例今天刚调好的 temperature明天可能就被新 RLHF 策略推翻。不妨一起思考如果明年 GPT-5 把上下文拉到 1 M我们现有的“分片→摘要→召回”架构是否直接作废当模型能力溢出团队该把预算投向“数据工程”还是“推理加速”在“模型即服务”的时代如何设计一套版本可回滚、灰度可监控的 Prompt 配置中心想亲手把“选模型—调 prompt—压成本”完整跑一遍却又担心环境搭建太麻烦我最近在从0打造个人豆包实时通话AI的实验里用火山引擎的豆包语音系列模型完整地搭了 ASR→LLM→TTS 闭环一小时就跑通了可语音对话的 Demo。对“实时交互”场景有需求的同学不妨也去试试相信你会对“模型选型”这件事有更具象的体感。