Skip to content

文本生成(Text Generation)

最后更新:2026-08-12· 17 分钟阅读

🚀 快速通道

  • ChatGPT 国内版:点击直达↗
  • 稳定镜像站:打开镜像↗
  • 官方 ChatGPT:chatgpt.com ↗

文本生成(Text Generation)

更新时间:2026-08-12

导读

文本生成是 OpenAI API 最高频场景:给定上下文,模型续写或回答。质量取决于 model、采样参数、输出约束与评测流程,不只是 prompt 文案。本文说明 Chat Completions / Responses 共通的调参思路;具体字段名以 Text generation 文档 为准。

在 pipeline 中的位置

[业务输入] → [Prompt 组装 + 可选 RAG] → [OpenAI 生成] → [解析校验] → [下游]

核心参数

参数作用开发建议
model能力 / 成本 / 上下文配置化管理;上线前查文档
temperature随机性事实任务 0–0.3;创意 0.7+
top_p核采样通常与 temperature 二选一微调
max_tokens输出上限防失控;过小会截断
stop停止序列模板输出可用 \n---
presence_penalty / frequency_penalty减重复长列表生成时小幅调整

Responses API 可能用 max_output_tokens 等别名;以 API reference 为准。

调参请求示例

curl https://api.openai.com/v1/chat/completions \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o-mini",
    "temperature": 0.2,
    "max_tokens": 600,
    "messages": [
      {"role": "system", "content": "用 Markdown 分点回答,不超过 200 字。"},
      {"role": "user", "content": "解释 max_tokens 设太小会怎样"}
    ]
  }'

gpt-4o-mini 仅为示例 model ID,请替换为文档当前型号。

控制输出形态

Markdown / 固定章节

必须包含:
## 结论(1 句)
## 步骤(编号,最多 5 条)
## 注意( bullet )
不要寒暄或重复用户问题。

JSON / Structured Outputs

{
  "model": "gpt-4o-mini",
  "response_format": {"type": "json_object"},
  "messages": [
    {"role": "system", "content": "只输出 JSON:{\"intent\":\"\",\"confidence\":0.0,\"slots\":{}}"},
    {"role": "user", "content": "我想改收货地址到上海市浦东新区"}
  ]
}

生产必做: 服务端 JSON Schema 校验;失败重试或明确错误。文档若提供 strict schema,优先采用。

固定标签分类

从 [SHIPPING, REFUND, OTHER] 选一项,只输出标签,不要解释。
用户:{{message}}

配合 temperature: 0 与 golden set 测准确率。

长上下文与成本

策略说明
摘要历史旧轮次用小模型摘要再注入
RAG只注入相关 chunk,见 embeddings
裁剪 messagessystem + 最近 N 轮
Prompt 缓存(若提供)重复 system 前缀可能降费,查定价

输入 token 含 system、工具定义、RAG——缩短 prompt 往往比换小模型更有效。

流式 vs 非流式

模式适合注意
stream: true聊天 UI需拼接完整结果再解析 JSON
非流式批处理、ETL用户等待更长

详见 API 开发指南。

质量评测工作流

  1. Golden set:20–100 条真实问句 + 期望要点(非逐字)。
  2. 自动指标:JSON 通过率、标签准确率、关键词覆盖。
  3. 人工抽检:每周抽 5% 生产日志。
  4. 回归:改 prompt 或 model 后跑同一套集,对比 diff。

版本管理:Prompt Engineering。

场景参数速查

场景temperaturemax_tokens备注
客服 FAQ0–0.2256–512不知则转人工
代码解释0.1–0.31024+仍须跑测试
营销文案0.7–0.9512–1024人工审 brand
字段抽取0512JSON + schema
中译英0.2–0.4源文约 1.2×术语表放 system

中文与多语言

  • 明确输出语言:「无论输入语言,用简体中文回答」。
  • 专有名词表放 system,减少中英混用。
  • 中文 token 密度与英文不同——用 usage 实测,勿靠字符数估算。

常见问题

temperature=0 就完全确定吗?

随机性更低,但非严格 deterministic;以官方说明为准。

max_tokens 太小会怎样?

中途截断,可能出现半句 JSON。检查 finish_reason 并留余量。

JSON mode 还会夹带说明文字吗?

可能。结合 system 约束 + 校验;优先 strict schema。

质量突然变差?

排查:model 是否变更、RAG 检索、prompt 截断、temperature 误调。

何时考虑 Fine-tuning?

多数团队先 prompt + RAG;有大量标注且格式极固定时再评估 Fine-tuning。

官方资源

下一步阅读

行动路径

今天:选 5 条真实 query,记录 usage 与输出质量。明天:固定 temperature / max_tokens 做 A/B。本周:加 JSON 校验层 + 10 条 golden case,纳入发布前脚本。

相关内容