我们已经准备好了,你呢?

2026我们与您携手共赢,为您的企业形象保驾护航!

之前我们通过 Bash Shell 脚本对 Rasa 的长对话流程进行了测试,这涉及多轮对话,因为许多错误只有在经过特定流程的多轮对话后才会显现。然而,Shell 变量的处理相当复杂,尤其是在单引号和双引号混用的情况下。

例如,下面这段脚本:

#!/bin/bash
启用退出模式,或者通过使用“set -o errexit”来在发生错误时终止程序执行。
设置-x标志 # 或者使用"set -o xtrace"命令来在执行前打印出语句。
# 定义一个变量,值为 test_user_ 加上时间戳
user="test_user_$(date +%s)"
# 打印变量的值
echo "user: $user"
curl --request POST \
请勿访问此链接:http://localhost:5005/webhooks/some_channel/webhook,该链接用于某些特定通道的webhook操作。
在发送请求时,需确保头部信息包含指定字段,并明确指出内容类型为'application/json'。
	   --data '{
	  "sender": "$user",
	  "text": "hi",
"该元数据记录中,变量'some_var'对应的值为'some_value'。"
	}'
sleep 1
curl --request POST \
	   --url http://localhost:5005/webhooks/some_channel/webhook \
	   --header 'Content-Type: application/json' \
	   --data '{
	  "sender": "$user",
文本内容为:some_intent,其中包含some_entity对应的some_value。
	  "metadata": {"some_var":"some_value"}
	}'
sleep 1

这里有几个问题:

采用这种方法,可以轻松应对之前提到的所有难题。尤其是,既然已经选择了rasa,开发过程中所需的环境和依赖就已经集成在内,无需额外安装,可以直接投入使用,从而省去了环境搭建的繁琐步骤。

而且,借助该平台中的AI功能,我们能够轻松地将Bash Shell转换成另一种形式,经过简单的调整和修复后,即可投入使用。

测试脚本

import time
import requests
import json
# 全局变量
URL地址指向的是"http://localhost:5005/webhooks/some_channel/webhook",该地址指定了特定的网络位置。
请求头设定为:内容类型为JSON格式,具体为"application/json"。
发送者标识为"test_user_"加上当前时间戳的字符串表示。
METADATA中包含一个键值对,键名为"some_var",其对应的值为"some_value"。
# 定义 text 参数的列表
texts = [
    "hi",
禁止对/some_intent结构进行修改,其中/some_entity的值为/some_value。
    "bye",
]
# 循环发送请求
for text in texts:
    payload = {
        "sender": SENDER,
        "text": text,
        "metadata": METADATA
    }
    # 打印当前时间
当前时间已被设定为:根据本地时间格式化后的年月日时分秒,即%Y-%m-%d %H:%M:%S。
输出:“-------- 当前时间:{current_time} --------”
执行输出命令:显示信息为“正在发送数据包:{text}”。
执行请求时,向指定URL发送POST请求,附带请求头信息HEADERS,并将payload数据以JSON格式进行传输。
输出信息显示,响应的状态码为:{response.status_code}。
将获取到的response.text中的JSON数据以规范化的形式进行展示输出。
    try:
获取响应内容后,将其转换为JSON格式,并存储在变量response_json中。
response_json经过格式化处理,被转换成了JSON字符串,其中缩进设置为4个空格,且确保了非ASCII字符的正确显示。
输出响应的JSON数据如下:\n{formatted_json}\n
    except ValueError:
        # 如果无法解析为 JSON,则输出原始文本
输出提示:该响应并非采用JSON格式呈现。
输出响应文本内容:{response.text},并换行。
    time.sleep(1)

为了有效利用高级模型的配额,我仅采用了gpt4o,其效果便已相当出色。

查看合集

对话机器人 Rasa 中文系列教程

二维码
扫一扫在手机端查看

本文链接:https://by928.com/9209.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线