更新时间: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构建步骤如下:

  1. 将首轮对话中模型(role的值为"assistant")的输出内容添加到messages结尾。
  2. 将新的用户问题添加到messages结尾。
  3. 最终传递给chat api的请求体中的messages为:
    [
        {"role": "user", "content": "9.11和9.8哪个大?"},
        {"role": "assistant", "content": "9.8更大"},
        {"role": "user", "content": "他们相加等于多少"}
    ]

相关文档

网站地图