聊天机器人和用户之间的聊天历史(微软僵尸框架)使用python语言



我想将聊天对话保存在azure门户的COSMOS数据库中。

我创建了一个Cosmos帐户,并创建了新的数据库和容器,之后我遵循了Microsoft官方文档中的步骤,但每当我测试机器人并在模拟器中运行它时,对话中的任何内容都不会添加到项目中,如文档中所示。那么,我还应该做些什么来挽救这段对话吗?

注意:该项目使用的是python。

以下是我在这个项目中为保存对话所做的步骤:

  1. 创建Cosmos数据库帐户
  2. 添加数据库
  3. 在配置文件中添加Cosmos DB配置信息
  4. 使用pip安装Cosmos软件包
  5. Cosmos DB实现,如下所示代码
  6. 在本地运行机器人
  7. 与机器人互动那么对话应该显示在DB中,但什么都没有

``机器人程序文件中的此代码

def init(self,config:DefaultCon):
cosmos_config = CosmosDbPartitionedConfig(
DBendpoint = config.COSMOS_DB_URI,
PrimaryKey = config.COSMOS_DB_PRIMARY_KEY,
DataBaseID = config.COSMOS_DB_DATABASE_ID,
ContainerID = config.COSMOS_DB_CONTAINER_ID,
compatibility_mode=False
)
self.storage = CosmosDbPartitionedStorage(cosmos_config)

``

**该代码在配置文件中,但其值为

COSMOS_DB_URI="<your-CosmosDb-URI>"
COSMOS_DB_PRIMARY_KEY="your-primary-key"
COSMOS_DB_DATABASE_ID="<your-database-id>"
COSMOS_DB_CONTAINER_ID="bot-storage"

如果可能的话,请检查以下内容:

  1. Cosmos数据库配置信息

COSMOS_DB_URI=">

COSMOS_DB_PRIMARY_KEY=";您的主键";

DATABASE_ ID=">

CONTAINER_ID=";bot存储";

  1. 正确安装cosmos软件包。(建议使用虚拟环境安装程序包(

pip安装botbuilder azure

from botbuilder.azure import CosmosDbPartitionedStorage, CosmosDbPartitionedConfig
from config import DefaultConfig
CONFIG = DefaultConfig()
def __init__(self):
cosmos_config = CosmosDbPartitionedConfig(
cosmos_db_endpoint=CONFIG.COSMOS_DB_URI,
auth_key=CONFIG.COSMOS_DB_PRIMARY_KEY,
database_id=CONFIG.COSMOS_DB_DATABASE_ID,
container_id=CONFIG.COSMOS_DB_CONTAINER_ID,
compatibility_mode = False
)
self.storage = CosmosDbPartitionedStorage(cosmos_config)

注意:在python 中创建虚拟环境

$ pip install virtualenv
$ virtualenv --version
$ virtualenv my_name - Giving suitable name for virtual environment
$ virtualenv -p /usr/bin/python3 virtualenv_name
$ source virtualenv_name/bin/activate - For activation
(virtualenv_name)$ deactivate - For deactivation

最新更新