You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在OpenAI API的completions端点实现Chat界面的续问等效功能?

如何通过OpenAI API实现类似Chat界面的上下文续问功能

核心结论

completions 端点不会自动维护对话上下文,user 字段仅用于用户身份标识(风控用途),和上下文传递无关——这是你之前尝试失败的原因。要实现续问功能,有两种可行方案:


方案1:手动拼接历史对话到completions的Prompt中

你需要自己把每一轮的用户提问和AI回复拼接成新的Prompt,让模型基于完整对话历史生成内容。

示例流程:

  1. 第一次请求(初始提问):
curl https://api.openai.com/v1/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "text-davinci-003",
    "prompt": "解释一下什么是机器学习",
    "max_tokens": 200
  }'
  1. 得到AI回复后,第二次续问时,把历史对话拼入Prompt:
curl https://api.openai.com/v1/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "text-davinci-003",
    "prompt": "用户:解释一下什么是机器学习\nAI:机器学习是人工智能的一个分支,通过数据训练模型来完成特定任务...\n用户:那它和深度学习的区别是什么?",
    "max_tokens": 200
  }'
  1. 多次续问时,重复上述逻辑,每次都追加最新的对话内容。如果遇到token上限,可截断早期非关键对话,或对历史对话做摘要压缩后再拼接。

方案2:使用Chat Completions端点(更适配对话场景)

如果你的核心需求是对话式续问,推荐使用专门的Chat Completions端点,它原生支持结构化的对话历史格式,无需手动拼接Prompt。

示例流程:

  1. 第一次请求(初始提问):
curl https://api.openai.com/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "gpt-3.5-turbo",
    "messages": [{"role": "user", "content": "解释一下什么是机器学习"}]
  }'
  1. 续问时,将历史对话(用户+AI的消息)全部放入messages数组:
curl https://api.openai.com/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "model": "gpt-3.5-turbo",
    "messages": [
      {"role": "user", "content": "解释一下什么是机器学习"},
      {"role": "assistant", "content": "机器学习是人工智能的一个分支,通过数据训练模型来完成特定任务..."},
      {"role": "user", "content": "那它和深度学习的区别是什么?"}
    ]
  }'
  1. 每次续问只需追加新的user角色消息即可,遇到token上限时,同样可通过截断早期对话或摘要压缩来继续请求。

关于突破单次token限制

不管使用哪个端点,都可以通过以下方式实现类似Chat界面的多次续问突破单次token限制:

  • 对历史对话进行摘要压缩:把之前的对话总结成一段简洁的上下文描述,放入新请求中
  • 截断非关键对话:只保留最近几轮核心对话,丢弃早期无关内容

内容的提问来源于stack exchange,提问作者qus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 17:05:18