基于 Tuya.AI 开源的大模型构建智能聊天机器人
your_chat_bot是基于涂鸦T5AI开发板的智能语音交互机器人,通过麦克风实现语音识别和对话功能。使用指南包括:1)注册涂鸦开发者平台并创建AI产品,获取PID、UUID和授权码;2)搭建Python开发环境,安装Git、Make等工具;3)下载并激活TuyaOpen开源项目。开发板支持锂电池供电,可实现便携应用。项目提供了详细的操作流程图和硬件连接示意图,帮助开发者快速完成环境配置。

文章目录
一、前言
your_chat_bot 是基于 Tuya.AI 开源的大模型智能聊天机器人。通过麦克风采集语音,经语音识别处理后,实现对话交流、互动响应及调侃功能,同时可在屏幕上实时显示聊天内容。
二、先决条件
- 准备TUYA_T5AI_CORE 开发板
- type-c 数据线
- (
可选) JST PH 1.25 mm 电池连接器: 支持 3.7 V 锂电池供电,实现便携式应用



三、操作步骤
操作流程概览

3.1 注册并登录涂鸦开发者平台
登录涂鸦开发者平台(iot.tuya.com),创建你的AI产品
- 注册涂鸦账号

- 登录涂鸦开发者平台

- 同意协议并开始使用

- 同意AI助手隐私政策协议并开始使用

- 按照如下图示指引,创建新的Tuya.AI 产品。

- 选择 「AI 玩偶」 🧸



- 查看“产品硬件”中的「AI 玩偶」 的 PID,并记录📝

3.2 获取 pid、uuid、authkey
‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️
‼️PID: o9ixxxxxxxxxx2um ‼️
‼️uuid:uuidxxxxxxxxxxxx4594 ‼️
‼️key:AKcxxxxxxxxxxxxxxxxxxxxxxxxxxx5z‼️
‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️‼️
- 点击「硬件开发」,选择“免费领取2个授权码”。

- 点击确认。

- 确认领取

- 确认订单信息,点击「提交订单」。

- 订单提交成功。

- 等待授权码生成出来。

- 刷新页面,查看状态已完成,点击「下载授权码清单」。

- 手机号码验证,点击「确认生成并下载」。

- 下载授权码清单,有一份 Excel 表格,内含两个授权码。

3.3 环境搭建
本项目基于 MacOS 系统进行操作演示。
- 环境准备
本地环境安装必要的工具:
# 安装 python3
brew install python3
# 检查 Python 是否完成安装
python3 --version
Python 3.14.0
# 安装 git
brew install git
# 检查 git 是否完成安装
git --version
git version 2.51.2
# 安装 make
brew install make
# 检查 git 是否完成安装
make --version
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for i386-apple-darwin11.3.0
- 进入Python 虚拟环境
yebaoxu@yebaodeMacBook-Air TuyaOpen % python3 -m venv path/to/venv
yebaoxu@yebaodeMacBook-Air TuyaOpen % source path/to/venv/bin/activate
- 下载并激活 TuyaOpen
# 使用 github
git clone https://github.com/tuya/TuyaOpen.git
# 或者使用 gitee
git clone https://gitee.com/tuya-open/TuyaOpen.git
# 进入项目
cd TuyaOpen

激活 tos.py:
./export.sh

出现 Successfully,表示激活成功。

- 验证结果
使用命令 ./tos.py version 以及 ./tos.py check,会出现如下信息:
# 安装必要的依赖包
pip install pyyaml
pip3 install Click
pip install click-completion
# 或查找并安装项目的依赖文件
pip install -r requirements.txt
(venv) yebaoxu@yebaodeMacBook-Air TuyaOpen % ./tos.py version
[INFO]: Running tos.py ...
[NOTE]: v1.5.0-3-g95aa4496
(venv) yebaoxu@yebaodeMacBook-Air TuyaOpen % ./tos.py check
[INFO]: Running tos.py ...
[NOTE]: [git] (2.51.2 >= 2.0.0) is ok.
[NOTE]: [cmake] (4.0.2 >= 3.28.0) is ok.
[NOTE]: [make] (3.81 >= 3.0.0) is ok.
[NOTE]: [ninja] (1.11.1 >= 1.6.0) is ok.
[INFO]: Downloading submoudules ...
[INFO]: >>> subprocess >>>
cd /Users/yebaoxu/VScode/tuya/TuyaOpen && git submodule update --init
Submodule 'src/common/backoffAlgorithm' (https://github.com/FreeRTOS/backoffAlgorithm.git) registered for path 'src/common/backoffAlgorithm'
Submodule 'src/libcjson/cJSON' (https://github.com/DaveGamble/cJSON.git) registered for path 'src/libcjson/cJSON'
Submodule 'src/tal_kv/FlashDB' (https://github.com/armink/FlashDB.git) registered for path 'src/tal_kv/FlashDB'
Submodule 'src/tal_kv/littlefs' (https://github.com/littlefs-project/littlefs.git) registered for path 'src/tal_kv/littlefs'
Cloning into '/Users/yebaoxu/VScode/tuya/TuyaOpen/src/common/backoffAlgorithm'...
Cloning into '/Users/yebaoxu/VScode/tuya/TuyaOpen/src/libcjson/cJSON'...
Cloning into '/Users/yebaoxu/VScode/tuya/TuyaOpen/src/tal_kv/FlashDB'...
Cloning into '/Users/yebaoxu/VScode/tuya/TuyaOpen/src/tal_kv/littlefs'...
Submodule path 'src/common/backoffAlgorithm': checked out 'dcdfffb0edbce3f3815d421e2b4c93554d19ad16'
Submodule path 'src/libcjson/cJSON': checked out 'f66cbab4bfb3926ffd4c5e13f9fb6d506ee0241d'
Submodule path 'src/tal_kv/FlashDB': checked out '0594fdc95700745ee8b26f43a9a28f3dba8407bb'
Submodule path 'src/tal_kv/littlefs': checked out '3513ff1afc1d67adb2e6f492f0b9bc0d798fcb0d'
[NOTE]: Download submoudules successfully.
(venv) yebaoxu@yebaodeMacBook-Air TuyaOpen %

使用如下命令退出激活 tos.py:
deactivate
3.4 配置 PID、uuid、authkey
- 设置pid
执行如下命令,通过menu菜单进行配置,添加PID。
(venv) yebaoxu@yebaodeMacBook-Air your_chat_bot % ../../../tos.py config menu
导航并进入到“
configure app(your_chat_bot)”。

输入
PID。



- 配置 uuid、authkey
找到该配置文件“
tuya_config.h”
在该环境中,该项目存放路径如下:
/Users/yebaoxu/VScode/tuya/TuyaOpen/apps/tuya.ai/your_chat_bot/include/tuya_config.h
#ifndef TUYA_PRODUCT_ID
#define TUYA_PRODUCT_ID "oxxxxxxxxxxum"
#endif
#define TUYA_OPENSDK_UUID "xxxxxxxxxxxx" // Please change the correct uuid
#define TUYA_OPENSDK_AUTHKEY "xxxxxxxxxxxxxxxxxxxxxxxx" // Please change the correct authkey
配置 uuid、authkey,操作界面接入如下:
修改完,Command+S 保存该配置文件即可。
3.5 项目编译
tos.py build
该命令会提供已经验证过的配置选项,您可根据自己的硬件设备进行选择。
- 本实验的硬件设备是T5AI-CORE DevKit,选择“
9. TUYA_T5AI_CORE.config”。
(venv) yebaoxu@yebaodeMacBook-Air TuyaOpen % cd apps/tuya.ai/your_chat_bot
(venv) yebaoxu@yebaodeMacBook-Air your_chat_bot % ../../../tos.py config choice
[INFO]: Running tos.py ...
[NOTE]: Fullclean success.
--------------------
1. DNESP32S3.config
2. DNESP32S3_BOX.config
3. DNESP32S3_BOX2_WIFI.config
4. ESP32S3_BREAD_COMPACT_WIFI.config
5. T5AI_MINI_LCD_1.54.config
6. T5AI_MOJI_1.28.config
7. TUYA_T5AI_BOARD_LCD_3.5.config
8. TUYA_T5AI_BOARD_LCD_3.5_v101.config
9. TUYA_T5AI_CORE.config
10. TUYA_T5AI_EVB.config
11. WAVESHARE_ESP32S3_TOUCH_AMOLED_1_8.config
12. WAVESHARE_T5AI_TOUCH_AMOLED_1_75.config
13. XINGZHI_ESP32S3_Cube_0_96OLED_WIFI.config
--------------------
Input "q" to exit.
Choice config file: 9
操作过程结果如下:
使用命令 tos.py build,编译项目。
tos.py build
# 注意tos.py配置文件存放的实际路径‼️
# 执行如下命令:
(venv) yebaoxu@yebaodeMacBook-Air your_chat_bot % ../../../tos.py build
执行完项目编译,结果如下:

清理编译缓存,使用命令 tos.py clean 或 tos.py clean -f(深度清理)。

3.6 固件烧录
tos.py flash
‼️ 将设备与 PC 连接。
使用该命令的前提是,必须在应用项目路径中(执行tos.py build的位置),并且项目已经编译成功(如下图所示)。
tos.py flash
# 注意tos.py配置文件存放的实际路径‼️
(venv) yebaoxu@yebaodeMacBook-Air your_chat_bot % ../../../tos.py flash
使用命令 tos.py flash 烧录固件,并选择烧录口。若有多个串口可以依次尝试。

开始固件烧录,烧录完成结果截图如下:

3.7 设备配网
项目编译完,固件烧录完成后,有语音请示,开始连接网络配对。
在应用商店里,搜索“涂鸦”,点击下载。
打开该应用软件,注册并登录。
- 点击右上角的加号,选择“添加设备”。

- 然后在设备中搜索,查看构建的智能体,点击完成适配。

- 正在添加中,需要稍等片刻。

- 添加成功

添加成功,会有语音提示,连接成功,开始对话。
3.8 设备调试
可以创建自己想要的智能体,进行自定义,DIY设置。
OEM-AI 玩偶opdo
使用的LLM模型:Qwen Max
prompt:
你是一个陪伴玩偶,你需要以玩偶的角色陪伴5至12周岁的儿童成长,你能做的事很多,包括但不限于:以朋友的口吻安抚儿童的消极情绪;以朋友的口吻回答儿童提出的各种百科问题;以朋友的口吻为儿童讲故事,并且参与到故事的二次创作;以朋友的口吻与儿童做文字游戏...
你输出的所有内容都必须满足12周岁以下的限制,不允许输出成人内容。
文字游戏举例:当需要做文字游戏时你可以说:“亲爱的小朋友,想要玩个游戏吗?”

可以通过“你好,涂鸦”唤醒涂鸦,进行对话交流。
以下是 创建智能体-天气预报小助手 智能体的提示词:
prompt:请作为专业的天气预报助手,当用户查询天气时,首先确认城市和日期。回复需包含天气状况、温度、风力、湿度等关键信息,并给出穿衣出行等生活建议。你必须声明:所有数据均为模拟示例,建议用户查阅专业服务获取实时信息。若信息不明确请主动询问,只回答天气相关提问。

- 创建完成。

- 设备端投放教程
如果需要让此智能体在设备端投放
可以通过 产品开发 >功能定义 >产品 AI 功能 将此智能体添加到设备端智能体,如下图:

最后,可以召唤属于自己的智能体啦!
T5AI-Core 开发板展示视频
四、常见问题
- 项目环境依赖包缺失
yebaoxu@yebaodeMacBook-Air TuyaOpen % ./tos.py version
Traceback (most recent call last):
File "/Users/yebaoxu/VScode/tuya/TuyaOpen/./tos.py", line 5, in <module>
import click
ModuleNotFoundError: No module named 'click'

使用 pip 命令批量安装 requirements.txt 里的依赖包:
source .venv/bin/activate
pip install -r requirements.txt
-
type-c数据连接线问题:数据线要支持数据通信协议,要能识别设备串口;
-
所连接的 WiFi 或热点信号频段需要是 2.4Gb 频段;
-
切换 WiFi 或设备断电重启之后都需要重新进行【项目编译】和【固件烧录】操作;
五、参考链接
2️⃣ https://github.com/tuya/tuyaopen
3️⃣ T5AI-Core 开发套件
4️⃣ https://tuyaopen.ai/zh/docs/applications/tuya.ai/demo-your-chat-bot
更多推荐




所有评论(0)