更新时间:2026-01-20 gmt 08:00
创建多轮对话-j9九游会登录
本文介绍如何使用maas chat api进行多轮对话。
maas服务端不会记录用户请求的上下文,用户每次发起请求时,需要将之前所有对话历史拼接好后,传递给chat api。下文以一个python代码为例进行说明,请您根据实际情况进行修改。
以下为python的上下文拼接和请求示例代码:
from openai import openai
client = openai(api_key="maas api key", base_url="https://xxxxxxxxxxxxxxxx")
# 首轮对话
messages = [{"role": "user", "content": "9.11和9.8哪个大?"}]
response = client.chat.completions.create(
model="deepseek-r1",
messages=messages
)
messages.append(response.choices[0].message)
print(f"messages round 1: {messages}")
# 第二轮对话
messages.append({"role": "user", "content": "他们相加等于多少"})
response = client.chat.completions.create(
model="deepseek-r1",
messages=messages
)
messages.append(response.choices[0].message)
print(f"messages round 2: {messages}")
首轮对话时,请求体中的messages为:
[
{"role": "user", "content": "9.11和9.8哪个大?"}
]
在第二轮对话时,请求体中的messages构建步骤如下:
- 将首轮对话中模型(role的值为"assistant")的输出内容添加到messages结尾。
- 将新的用户问题添加到messages结尾。
- 最终传递给chat api的请求体中的messages为:
[ {"role": "user", "content": "9.11和9.8哪个大?"}, {"role": "assistant", "content": "9.8更大"}, {"role": "user", "content": "他们相加等于多少"} ]
相关文档
意见反馈
文档内容是否对您有帮助?
提交成功!非常感谢您的反馈,我们会继续努力做到更好!
您可在查看反馈及问题处理状态。
系统繁忙,请稍后重试
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨