fuzi nlu
1.0.0
?️ 聊天机器人——夫子
的「自然语言理解」模块。
夫子
聊天机器人有 7 个模块组成:
常见地聊天机器人有两种:
open domain
task oriented
本项目属于第二种,即面向任务的聊天机器人。这类型机器人的常见应用是智能客服,目的是为了解决用户的明确需求。
上图为面向任务的聊天机器人的一般流程,该项目目前实现了第一部分的 NLU
功能,包含 Slot Filling
和 Intent Prediction
。
>> 点我立即尝试 <<
guotie
:这份数据集的主要内容是关于我家?锅贴
,只使用了意图识别的功能。weather
: 在 Github 上找到的一份关于天气的 中文公开数据集 。fewjoint
: SMP2020 。这里使用 RASA 开源的标注工具 RASA-NLU-Trainer 进行标注。
我自己部署了一份在线上,可以直接使用 。
标注完成后需要进行格式转化才能使用,这里以 /back/data/guotie.json
为例:
pip install rasa==2.6.3
cd fuzi-nlu/data
mkdir guotie
# rasa 暂时不支持从 json 直接转成 yaml,因此需要先转 md,再转 yaml
rasa data convert nlu -f md --data guotie.json --out ./guotie/nlu.md
rasa data convert nlu -f yaml --data ./guotie/nlu.md --out ./guotie/
rm ./guotie/nlu.md
mv ./guotie/nlu_converted.yml ./guotie/nlu.yml
# 生成 domain
python -m run.generate_domain_from_nlu --nlu ./data/guotie/nlu.yml --domain ./data/guotie/domain.yml
git clone https://github.com/Ailln/fuzi-nlu.git
cd fuzi-nlu
# 安装依赖
pip install -r requirements.txt
python -m run.server
git clone https://github.com/Ailln/fuzi-nlu.git
# in amd64
cd fuzi-nlu
# 打包
docker build -t fuzi-nlu:1.0.0 .
# 运行
docker run -d --restart=always --name fuzi-nlu -p 8081:8081 fuzi-nlu:1.0.0
# in arm64
cd fuzi-nlu
# 打包
docker build -t fuzi-nlu:1.0.0 -f deploy/arm64.Dockerfile .
# 运行
docker run -d --restart=always --name fuzi-nlu -p 8081:8081 fuzi-nlu:1.0.0
cd fuzi-nlu
# 准备好镜像
kubectl apply -f deploy/deployment.yaml
cd fuzi-nlu
# 训练
python -m run.train
# 测试
python -m run.test
pip install locust -U
locust -f test/qps_test.py -u 10 -r 2
# 打开 http://127.0.0.1:8089
请添加微信号:Ailln_
,备注「fuzi」,我邀请你进入交流群。