大模型应用开发从零到能跑,走 6 步就够:定场景、选模型、拿 key、写最小调用、调提示与参数、上线前加限频。有 1 点编程基础的人 2 天能跑通第一个能用的接口,剩下的时间都花在提示词和异常处理上。
我给 2 个内部系统做过接入,第 1 版都栽在同一处:把输出格式只写在提示词里,没做返回值校验,模型偶尔换个写法,下游解析就崩了。这篇按踩过的顺序写,能省掉那 2 次返工。
环境没备齐,第 3 步就会卡住,先把这 4 样落实。
第 4 条最容易被跳过。场景越具体,提示词越好写,验收标准也越好定。我见过 6 个人同时上手做"通用智能助手",5 个人在第 3 天放弃,原因是没法判断做得好不好。
拿 1 张纸,左边写用户会送进来什么,右边写系统要吐出什么。摘要场景的输入是 300 到 800 字的对话记录,输出是 3 行、每行不超过 30 字的结论加 1 个跟进动作。
输入里要标出长度上限。超过上限的内容要么截断,要么分段处理,这一步不做,上线后长文本一定报错。输出要标出格式,是纯文本、JSON 还是带小标题的段落,格式定了才好写校验。
下游要程序解析的时候用 JSON,字段名提前定死,比如 summary、action、risk 三个键。纯给人看的场景用段落就行,硬套 JSON 反而让模型多花 token 去维护括号。
同一家平台往往有 2 到 3 个模型档位,选错档位照样出结果,代价是又慢又贵。判断维度看 3 个:任务难度、单次长度、响应速度要求。
| 场景 | 选型方向 | 理由 |
|---|---|---|
| 分类、抽取、摘要 | 轻量对话模型 | 单次几百 token,响应 1 秒内,成本低 |
| 多步推理、代码生成 | 推理增强模型 | 会先输出思考过程,耗时 5 到 30 秒 |
| 长文档理解 | 长上下文版本 | 上下文 64K 以上,能吃整份报告 |
先用轻量模型跑通流程,效果不够再换档。反过来做的代价是调试期每天都在等 20 秒的响应,一天试不了 20 次。
最小调用只要 4 个要素:接口地址、认证头、模型名、消息数组。Python 里 8 行能跑通,key 从环境变量读,不要写进代码。
写法是先 import os 与 requests,把 url 设成平台的对话接口,headers 里放 Content-Type 和 Authorization 两项,data 里放 model 与 messages,最后取 response.json() 里的 choices 第 1 项。
system 放角色与规则,user 放这次的任务,assistant 放上一轮回答。多轮对话按时间顺序追加,system 始终排在第 1 位。顺序乱了模型会答得跳,跑通不受影响,质量差一截。
提示词写成三段,比写一大段散文稳定得多。三段是角色、约束、输出样例,顺序不要换。
角色那句限定身份和范围,比如"你是电商客服质检员,只判断回复里有没有承诺赔付"。约束那句列禁止项,比如不许编造订单号、不许给金额。输出样例给 2 条正例加 1 条反例,模型的格式跟随会明显变稳。
约束要写成可判定的句子。"态度友好"没法判定,"回复里不出现感叹号"可以判定。我把自己项目里 12 条模糊约束改成可判定的写法后,人工复核的返工率从 3 成降到 1 成以内。
参数不多,4 个就够用,填错会直接影响稳定性。
| 参数 | 填什么 | 常见错填 |
|---|---|---|
| temperature | 抽取类 0 到 0.3,写作类 0.7 到 1 | 全场景用 1,抽取结果每次都不一样 |
| max_tokens | 摘要 300,长文 1500 | 设成 100,回答在句子中间被截断 |
| stream | 前端逐字显示开 true | 后端批处理也开,日志拼接收割麻烦 |
| top_p | 保持默认,改了要重测 | 与 temperature 同时大幅调,效果不可控 |
temperature 设 0 不等于每次结果完全一样。平台侧还有并发与版本切分,同一请求连发 5 次,偶尔会有 1 次措辞不同。要绝对稳定,靠返回校验和重试,不要靠参数。
第 5 条最容易被忽略。返回体 200 但 content 是空串,很多人以为是模型故障,实际是长度或审核拦截,改 1 个参数就能恢复。
3 个动作,做完再进下一步。发 1 条最短请求,看 choices 里的 content 是否非空;连发 3 次,看 3 次是否都返回 200;拿 10 条真实数据跑 1 遍,人工看前 3 条结果是否符合预期。
10 条真实数据这一步别省。演示用的样例往往太干净,真实数据里有错别字、有方言、有半截话,前 3 条就能暴露提示词的缺口。我在 1 个项目里跳过这步,上线第 1 天收到 7 条"答非所问"的反馈。
本地跑通和线上可用隔着 3 件事,缺 1 件都会出事。
日志里记 token 用量这件事,1 个月后能救命。用量突然翻 3 倍,多半是某个入口死循环调用,有日志 5 分钟能定位,没日志只能逐段加打印。
Demo 能跑,交付还差 3 件事:异常输入的处理、结果的校验与兜底、还有 1 份写清楚边界的使用说明。3 件事都不难,漏掉任意 1 件,用户第一次用就会遇到。
3 类输入要提前拦住:空内容、超长内容、纯符号。空内容直接提示重新输入,超长内容按 2000 字切段再送,纯符号与乱码先做 1 次字符过滤。3 类都不拦,接口会返回空结果,用户看到的是 1 个白屏。
按输出格式写校验。JSON 用解析函数试 1 次,解析失败就重发 1 次并追加 1 句格式要求;段落格式检查长度区间,少于 20 字或多于 800 字都判为异常。校验通过率能到 95% 以上,剩下的 5% 走兜底文案。
兜底文案不要写"服务繁忙"。写成"这段内容我暂时处理不了,请换 1 种说法或联系人工",用户知道下一步做什么,投诉量会低很多。我在 1 个客服工具里换过这 1 句,转人工的比例从 12% 降到 4%。
使用说明写 1 页够用,3 段内容:能做什么、不能做什么、结果不准时怎么反馈。边界写清楚,用户不会拿它去算账,也不会把错误结果当结论用。
本文信息核对时间:2026-11。各平台的接口字段与模型名会调整,动手前先看开放平台文档页的最新版本说明。