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,納入發布前腳本。

相關內容