Azure OpenAI对话存储与外部资源调用方案咨询
Azure OpenAI 外部存储历史对话并调用的实现方案
完全可以将历史对话存储到外部资源,并让AI生成回复时调用该资源,核心是借助Azure OpenAI的**函数调用(Function Calling)**能力实现,具体步骤如下:
搭建外部存储服务
可选用Azure Cosmos DB、Azure Blob Storage这类原生服务,或者PostgreSQL、MySQL等常规数据库存储历史对话。每条记录需包含会话ID、用户提问、AI回复、时间戳等字段,确保能精准关联和检索特定会话的历史内容。定义检索历史的函数
在调用Azure OpenAI API时,定义一个用于检索历史对话的函数(比如get_conversation_history),函数参数可设置会话ID、检索时间范围或对话条数等。将该函数的描述传入API的functions参数中,让模型理解如何调用它获取历史数据。触发历史检索与结果整合
当用户发起新提问时,若问题涉及历史对话关联内容,Azure OpenAI会自动判断是否调用定义好的检索函数。获取到历史对话后,将这些内容整合到当前prompt上下文,再让模型基于完整信息生成回复。
额外注意事项
- 做好会话ID的唯一标识与管理,确保每个用户的对话能准确关联到对应的历史记录。
- 可为历史对话添加关键词或标签索引,提升检索效率,让模型更快定位到相关内容。
- 严格管控外部存储的访问权限,避免数据泄露风险。
内容的提问来源于stack exchange,提问作者ArcaneLight
相关产品推荐
相关产品推荐

