gpt4 book ai didi

redis - 如何在聊天机器人中管理上下文/状态?

转载 作者:可可西里 更新时间:2023-11-01 11:11:38 26 4
gpt4 key购买 nike

我正在使用 Python、celery 和 MS 机器人框架开发聊天机器人。我想添加如下小对话框:

User: Hi

User: Order me fries.

Bot: ok. address?

User: xyz, state, 82288

Bot: Got it. I will order fries for you.

这里,如何在用户给我地址后临时存储fries来访问它?

此外,我认为如果用户在 2-3 分钟内没有响应,我的用例应该可以忘记订单是什么。所以,我也可以为存储的变量设置超时。

我想到了用redis。我正在考虑在 redis 数据库中存储如下内容:

{
'conversationId':['orderitem':'fries','address':'state, pincode']
}

基本上是键值对,key=conversationId 和 value='order,address'。

那么,这看起来是个不错的选择吗?

最佳答案

您应该考虑使用 Bot State REST API管理机器人中的状态。

机器人可以管理 3 种类型的状态数据,开箱即用:

  1. 特定 channel 上用户的状态数据 (UserData)
  2. 声明特定 channel 上对话的数据 (ConversationData)
  3. 在特定对话的上下文中为用户声明数据 (PrivateConversationData)

关于redis - 如何在聊天机器人中管理上下文/状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45222073/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com