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

如何用Python API实现两个独立OpenAI聊天机器人的持续对话与信息隔离

关于OpenAI Python API实现双机器人文字游戏的问题解答

问题1:如何与指定实例持续对话?

目前OpenAI最新版Python API已经移除了chat_completion::send_message这类维护会话状态的方法,统一使用openai.chat.completions.create()接口实现对话延续。

  • 核心逻辑是手动维护对话历史列表:每次发起新请求时,把包含之前所有交互(用户消息、AI回复)的messages列表作为参数传入create()方法。
  • 关于API成本:目前没有更优的官方方案,因为大语言模型本身是无状态的,必须依赖传入完整对话历史才能理解上下文。如果想降低成本,可以尝试精简对话历史(比如只保留关键上下文,剔除冗余内容),但这可能会影响对话连贯性,需要根据场景权衡。

问题2:如何创建不共享信息的独立机器人实例?

完全不需要使用不同的API密钥,只需要给每个机器人维护独立的对话历史列表即可:

  • 比如为机器人A维护一个history_a列表,里面只存储和A的所有交互(示例:[{"role": "user", "content": "我的名字是Alice"}]);为机器人B维护history_b列表,只存储和B的交互(示例:[{"role": "user", "content": "我的年龄是20"}])。
  • 每次调用API时,给机器人A传入history_a,给机器人B传入history_b,两个机器人的上下文完全隔离,不会互相知晓对方的对话内容。每次发送新消息时,只需要往对应机器人的历史列表里追加新消息即可——OpenAI API本身没有"实例"概念,都是通过传入的对话历史区分会话的。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 09:47:47