跳转到主要内容
大模型相比于传统的模型,拥有支持用户自定义 Prompt、用户可传入上下文等优势,从而轻松实现大模型的人设锚定、多轮对话等能力。 在实际使用时,阶跃星辰的 Chat Completion API 支持传入一个数组作为 Message List 。你只需要按照用户沟通的顺序,将用户信息和大模型返回的信息,构建成数组用于调用大模型,即可轻松实现基于大模型的多轮对话能力。

实现多轮对话

想要实现多轮对话,你需要在自己的业务系统中存储对话和对话内容,以便于形成对话记录。 因此,你需要在业务系统中建设 Chat 和 Message 对象,并在业务系统中存储 Chat 和 Messages。
  • 当用户开启对话时,则创建 Chat;
  • 当用户发送消息时,则创建 Message,并按照创建时间正序查询 Message,并构建对话记录作为参数传递给大模型用于结合上下文生成内容;
  • 当大模型返回信息时,同样创建 Message。

代码示例

管理对话上下文

阶跃星辰模型支持最大 256k 上下文,支持开发者将完整对话记录作为上下文传入。但对话记录也会计算整体的 Token,产生 Token 消耗,因此,建议开发者需要根据自己的业务场景选择合适的对话上下文长度发送给大模型。
  • 一般日常的对话可以保留 10 轮对话记录;
  • 对于某些需要深度沟通、对话的场景,则可以选择将完整对话记录交给大模型进行补全。

引入 Prompt 缓存降低费用,提升推理速度

常见问题

  • 如果要实现多轮对话的效果,需要在存储对话记录时,按时间记录,并在重新取出给大模型时,按照时间正序给出答案,以便于大模型正确的理解上下文。