实操给触摸一体机接入大模型语音交互

本文以CSK6 大模型开发板+串口触摸屏为例,实操讲解触摸一体机怎样快速增加大模型语音交互功能,使用户能够通过语音在一体机上查询信息、获取智能回答及实现更多互动功能等。

在本文方案中通过CSK6大模型语音开发板采集用户语音,将语音数据传输到大模型进行处理,再将大模型生成的回答转换为语音输出和在触摸一体机屏幕上显示文字结果。

一、硬件准备

  1. 语音交互模块:CSK6大模型语音开发板(接入自定义的私有大模型知识库,生成和接入方式可以参考前面发布的文章)

  1. 触摸一体机:用淘晶驰X2七寸串口触摸屏模块代替演示

二、硬件连接

  1. 串口触摸屏模块和CSK6大模型开发板各自使用5V2A独立供电

  1. 将 CSK6 大模型开发板引脚与触摸一体机模块的串口接口进行连接。确保连接线路稳定且正确,开发板 PA00引脚连接触摸一体机模块的 RX 端(黄色线),PA01引脚连接触摸一体机模块的 TX 端(橙色线),同时开发板的GND与串口屏的GND互联(红色线杜邦线)。

  • 语音交互模块配置

1、下载聆思官方开放的SDK后做完初始化和更新,在 LLM_pic 目录下打开 prj.conf,增加以下配置项并保存:

CONFIG_UART_DISP_EN=y

  1. 编译固件(如不方便编译,想先体验可以使用演示固件,下载地址:https://docs2.listenai.com/z/217.zip
  2. 烧录到开发板上即可 (此处省略实操内容,详细操作步骤请参考官方上手文档固件下载与烧录 | 聆思文档中心

  • 触摸一体机(串口触摸屏模块)设置

串口触摸屏官方提供有可视化编辑工具, 可以联系串口屏提供方要下载程序,安装好后参考以下步骤实现语音交互文字和指令的接入。

  1. 在官方出厂示例下方增加【滑动文本】模块,w设置为600、h设置为50,文本框、文字颜色、排版特效和互动方式都可以自定义配置,详情参考控件说明。

【友情提醒】不要修改objname的值,该值被CSK6 大模型开发板关联,修改会导致文字不能显示。

  1. 配置utf-8支持,由于开发板输出的中文是utf-8格式,需要手动增加到串口屏的支持字库。
    1. 下载utf-8字库文件,下载地址:https://docs2.listenai.com/z/216.zi

    1. 点+导入utf-8字库,可以看到导入后的字库ID为:7

    1. 更改【滑动文本】模块使用 ID为 7 的utf-8字库,然后保存。

  1. 完成以上配置后,点击输出生产文件,然后通过tf卡更新串口屏幕程序,重启即可。

  1. 【重点提醒】CSK6开发板接串口屏后,只能使用csk_usb口供电,且dap_usb口不能接电脑,否则串口屏不会显示聊天文字

  • CSK6大模型开发板SDK的串口屏相关代码

可以在下载的大模型语音交互SDK中查看修改串口屏相关的代码以实现不同的串口交互功能,串口屏代码文件路径:\duomotai_ap\apps\LLM_pic\src\app_ui\uart_disp_ui\uart_disp.c

触摸一体机通过串口接入CSK6大模型开发板,不仅可以实现聊天文字实时显示,还可以借助CSK6大模型开发板的AI能力在触摸一体机上实现更多功能,同时还降低了方案开发难度和工作量,更快速的验证产品功能可行性。

聆思CSK6 大模型开发板详细信息可参考线上文档套件简介 | 聆思文档中心,解锁更多玩法、例如更换大模型、添加私有知识库、自定义流程、控制设备等请参考之前发布的博客,也可以私信、评论或在技术群交流。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/68196.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RabbitMQ 从入门到精通:从工作模式到集群部署实战(一)

#作者:闫乾苓 文章目录 RabbitMQ简介RabbitMQ与VMware的关系架构工作流程RabbitMQ 队列工作模式及适用场景简单队列模式(Simple Queue)工作队列模式(Work Queue)发布/订阅模式(Publish/Subscribe&#xff…

RK3568平台开发系列讲解(ConfigFS篇)ConfigFS核心数据结构

🚀返回专栏总目录 文章目录 一、数据结构二、结构体关系三、案例3.1、configfs_subsystem 实例3.2、config_group 实例化四、属性和方法五、config_item实例化沉淀、分享、成长,让自己和他人都能有所收获!😄 理解 ConfigFS 的核心数据结构对于深入使用和定制 ConfigFS 非…

微信小程序案例1——制作猫眼电影底部标签导航栏

文章目录 一、项目步骤1 新建一个无AppID的movie项目2将准备好的底部标签导航图标拷贝到movie项目下面(将图标文件夹image放到项目文件夹里)3 打开App.json配置文件,在pages数组里添加4个页面路径:电影“pages/movie/movie”、影院“pages/cinema/cinema…

CSS 伪类(Pseudo-classes)的详细介绍

CSS 伪类详解与示例 在日常的前端开发中,CSS 伪类可以帮助我们非常精准地选择元素或其特定状态,从而达到丰富页面表现的目的。本文将详细介绍以下伪类的使用: 表单相关伪类 :checked、:disabled、:enabled、:in-range、:invalid、:optional、…

Elasticsearch 开放推理 API 增加了 Azure AI Studio 支持

作者:来自 Elastic Mark Hoy Elasticsearch 开放推理 API 现已支持 Azure AI Studio。在此博客中了解如何将 Azure AI Studio 功能与 Elasticsearch 结合使用。 作为我们持续致力于为 Microsoft Azure 开发人员提供他们选择的工具的一部分,我们很高兴地宣…

JUC学习笔记02

文章目录 JUC笔记2练习题:手写线程池代码解释:AdvancedThreadPool 类:WorkerThread 内部类:AdvancedThreadPoolExample 类: 线程池的思考CPU密集型IO密集型 练习题:手写自动重试机练习题:手写定…

baigeiRSA

baigeiRSA 打开附件有两个: 1.import libnumfrom Crypto.Util import numberfrom secret import flag​size 128e 65537p number.getPrime(size)q number.getPrime(size)n p*q​m libnum.s2n(flag)c pow(m, e, n)​print(n %d % n)print(c %d % c)​​2.n…

【csp-j学习完C++语法后,如何进阶学习C++算法和数据结构?】

在掌握了 CSP - J 的 C 语法基础后,接下来的进阶学习需要系统地掌握各类算法和数据结构知识,并通过大量练习来巩固和提高应用能力。以下是一份详细的进阶学习规划: 第一阶段:基础算法学习(1 - 2 个月) 排…

QT中解决使用QCustomplot绘制高速大量数据时频谱图卡顿问题

[!!!核心方法!!!] 使用带参数的replot()函数绘制m_pCustomPlot>replot(QCustomPlot::rpQueuedReplot) 1. replot() 方法 void QCustomPlot::replot(QCustomPlot::RefreshPriority refreshPriority rp…

【AI】卷积神经网络CNN

不定期更新,建议关注收藏点赞。 目录 零碎小组件经验总结早期的CNN 零碎小组件 全连接神经网络 目前已经被替代。 每个神经元都有参与,但由于数据中的特征点变化大,全连接神经网络把所有数据特征都学习了,故效果不好。感受野&…

微信小程序~电器维修系统小程序

博主介绍:✌程序猿徐师兄、8年大厂程序员经历。全网粉丝15w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…

LLAMA-Factory安装教程(解决报错cannot allocate memory in static TLS block的问题)

步骤一: 下载基础镜像 # 配置docker DNS vi /etc/docker/daemon.json # daemon.json文件中 { "insecure-registries": ["https://swr.cn-east-317.qdrgznjszx.com"], "registry-mirrors": ["https://docker.mirrors.ustc.edu.c…

Java高频面试之SE-18

hello啊,各位观众姥爷们!!!本baby今天又来了!哈哈哈哈哈嗝🐶 BIO NIO AIO的区别? 在 Java 网络编程中,BIO、NIO 和 AIO 是三种不同的 I/O 模型,它们的核心区别在于 阻塞…

蓝桥杯刷题DAY3:Horner 法则 前缀和+差分数组 贪心

所谓刷题,最重要的就是细心 📌 题目描述 在 X 进制 中,每一数位的进制不固定。例如: 最低位 采用 2 进制,第二位 采用 10 进制,第三位 采用 8 进制, 则 X 进制数 321 的十进制值为&#xff…

BUU24 [GXYCTF2019]BabyUpload 1

开局上传文件 上传muma.php 上传.htaccess文件也被打回 再次求助互联网,才发现这提示给的多么明显,上传.htaccess文件是检查文件类型(Contnet-Type),上传muma.php是检查后缀里头有没有ph ,检查文件类型那…

RabbitMQ 从入门到精通:从工作模式到集群部署实战(三)

文章目录 使用CLI管理RabbitMQrabbitmqctlrabbitmq-queuesrabbitmq-diagnosticsrabbitmq-pluginsrabbitmq-streamsrabbitmq-upgraderabbitmqadmin 使用CLI管理RabbitMQ RabbitMQ CLI 工具需要安装兼容的 Erlang/OTP版本。 这些工具假定系统区域设置为 UTF-8(例如en…

3.攻防世界 weak_auth

题目描述提示 是一个登录界面,需要密码登录 进入题目页面如下 弱口令密码爆破 用1 or 1 #试试 提示用admin登录 则尝试 用户名admin密码:123456 直接得到flag 常用弱口令密码(可复制) 用户名 admin admin-- admin or -- admin…

优化深度神经网络

训练集、开发集(验证集)、测试集 偏差与方差 正则化 L2正则 Dropout 随机丢弃部分神经元输入,经常用于计算机视觉的神经网络内,因为通常没有足够的训练数据,很容易出现过拟合的问题 数据增强 训练集规一化 可以使其图像更均匀,…

【玩转 Postman 接口测试与开发2_018】第14章:利用 Postman 初探 API 安全测试

《API Testing and Development with Postman》最新第二版封面 文章目录 第十四章 API 安全测试1 OWASP API 安全清单1.1 相关背景1.2 OWASP API 安全清单1.3 认证与授权1.4 破防的对象级授权(Broken object-level authorization)1.5 破防的属性级授权&a…

Spring @PropertySource:让你的应用配置更加模块化和可维护

PropertySource注解在Spring中的作用,就像是给Spring应用配了一个“外部配置箱”。 想象一下,你在开发一个Spring应用时,有很多配置信息需要设置,比如数据库的连接信息、应用的某些功能开关等。如果这些信息都硬编码在代码中&…