通过小米万兆路由器将小米SoundMove 无缝接入 ChatGPT

news2024/11/23 10:56:08

通过小米万兆路由器将小米SoundMove 无缝接入 ChatGPT

  • 本教程内容
  • 参考 Github 地址
  • (可选)部署查看小米 SoundMove 信息的环境
  • (可选)查看小米 SoundMove 的信息
  • 以容器方式部署程序到小米万兆路由器
  • 实际效果
  • 有待改善点

本教程内容

1 是记录了将小米 SoundMove 接入 ChatGPT 的操作步骤。
2 是将小米 SoundMove 接入 ChatGPT 构建成了容器镜像,部署在小米万兆路由器上,实现了无缝接入。每次打开小米 SoundMove 的同时自动接入 ChatGPT。

在这里插入图片描述

参考 Github 地址

整个操作过程参考了 https://github.com/yihong0618/xiaogpt 的说明和代码,非常感谢原作者!!!

(可选)部署查看小米 SoundMove 信息的环境

git clone https://github.com/engchina/MiService.git; cd MiService
conda create -n xiaoai python=3.10.6
conda activate xiaoai
pip install .

(可选)查看小米 SoundMove 的信息

设置账号,

export MI_USER=<your_mi_user>
export MI_PASS=<your_mi_password>

查询自己的设备,

micli.py list

输出结果示例,

[
  {
    "name": "xiaoaitongxue",
    "model": "xiaomi.wifispeaker.m03a",
    "did": "<your_mi_did>",
    "token": "<your_token>"
  }
]

设置 MI_DID,

export MI_DID=<your_mi_did> # 上面输出结果

查询设备的接口文档,

micli.py spec xiaomi.wifispeaker.m03a # 上面输出结果

输出结果示例(实际只有 Intelligent_Speaker = 7 会用到),

Device_Information = 1
    Device_Manufacturer = 1
    Device_Model = 2
    Device_ID = 3
    Current_Firmware_Version = 4
    Serial_Number = 5  # rn

Speaker = 2
    Volume = 1  # uint8  # rwn
    Mute = 2  # bool  # rwn

Play_Control = 3
    Playing_State = 1  # uint8  # rn
    _Seek_Time = 2  # int16
    Play_Loop_Mode = 3  # uint8  # rwn

    _Seek = 1  # in=[2]
    _Play = 2
    _Pause = 3
    _Stop = 4
    _Previous = 5
    _Next = 6

Microphone = 4
    Mute = 1  # bool  # rwn

Clock = 6
    Switch_Status = 1  # bool  # rwn
    Status = 2  # uint8  # rn
    Device_Fault = 3  # uint8  # rn
    Ringtone = 4  # uint8  # rwn

    _Stop_Alarm = 1

Intelligent_Speaker = 7
    _Text_Content = 1
    _Silent_Execution = 2  # bool
    Sleep_Mode = 3  # bool  # rwn
    Audio_Id = 4  # rn

    _Wake_Up = 1
    _Play_Radio = 2
    _Play_Text = 3  # in=[1]
    _Execute_Text_Directive = 4  # in=[1, 2]
    _Play_Music = 5

tv-switch = 8

    _tv = 1  # -switchon

Speaker_Volume
    MIN = 0
    MAX = 100

Play_Control_Playing_State
    Playing = 1
    Stop = 0
    Pause = 2

Play_Control_Seek_Time
    MIN = -30000
    MAX = 30000
    STEP = 10

Play_Control_Play_Loop_Mode
    Single_Cycle = 1

Clock_Status
    Idle = 1
    Busy = 2

Clock_Device_Fault
    No_Faults = 0

Clock_Ringtone
    MIN = 1
    MAX = 5

以容器方式部署程序到小米万兆路由器

打开小米万兆路由器 SimpleDocker 界面,拉取新的镜像 engchina/xiaogpt:v1
在这里插入图片描述
然后单击右侧的 “启动镜像”,

在这里插入图片描述
选择 ”专业模式“,输入基础信息,单击 “下一步”,

在这里插入图片描述
存储信息界面按默认就可以,单击 “下一步”,网络信息界面选择绑定网络为 “bridge”,单击 “下一步”,

在这里插入图片描述
环境信息界面参考截图配置一些环境变量,单击 “下一步”,
在这里插入图片描述
最后单击 “确定创建”,

在这里插入图片描述

实际效果

查查/查一查/查一下/算一算/想一想/问一下/你认为/你觉得/你知道/介绍一下/解释一下/说明一下/总结一下开头来提问,我们部署的程序会拦截小米 SoundWave 的语音文字信息,然后将这些文字信息发送给 ChatGPT,然后将 ChatGPT 的返回结果朗读出来。
博客这里只能展示一下日志了,有时间时录个视频展示一下效果。

在这里插入图片描述

有待改善点

现在已知的有点个人觉得还需要不断改善,

1, 虽然设置 Mute 了小爱自带的回答,但是还是没有做到完全消除,会在朗读 ChatGPT 的结果前,朗读一部分小爱自带的回答。
2, 调用 ChatGPT 的耗时比较长,需要等待 10几秒或者更长的时间。
3, 对英语和其他语音支持不完善。

完结!

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

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

相关文章

面向《海贼王》领域数据的知识图谱项目

访问【WRITE-BUG数字空间】_[内附完整源码和文档] 本次任务试图为《海贼王》中出现的各个实体&#xff0c;包括人物、地点、组织等&#xff0c;构建一个知识图谱&#xff0c;帮助我们更好的理解这部作品。 项目内容包括数据采集、知识存储、知识抽取、知识计算、知识应用五大部…

【运动规划算法项目实战】如何使用Pure Pursuit算法进行路径跟踪(附ROS C++代码)

文章目录 前言一、简介二、Pure Pursuit算法优缺点三、 代码实现3.1 算法实现步骤3.2 pure_pursuit.h3.3 pure_pursuit.cpp3.4 cubic_spline_path.py3.5 节点连接关系3.6 RVIZ显示四、总结前言 在自动驾驶和机器人导航领域,路径跟踪是一项关键技术,它使车辆或机器人能够按照…

多线程排序法

多线程排序法 chatGPT给我改的多线程排序法 using System.Collections.Concurrent; using System.Threading; ConcurrentBag<int> sortedList new ConcurrentBag<int>(); void Sort() { int[] arr {2, 6, 12, 8}; List<Thread> threads new List<Threa…

chatgpt赋能Python-pythondone

PythonDone&#xff1a;将Python编程变得更加简单 介绍 Python是一种有着广泛应用的高级编程语言&#xff0c;由于其简洁易学、开发效率高、可移植性好等特点&#xff0c;成为业内最热门的技术之一。但是&#xff0c;对于一些初学者来说&#xff0c;Python的学习过程可能还是…

【论文分享|SIGMOD‘22】WeTune 自动发现和验证重写规则

作者&#xff1a;谢其骏 北京航空航天大学在读硕士&#xff0c; Databend 研发工程师实习生 https://github.com/jun0315 论文原文&#xff1a; Zhaoguo Wang, Zhou Zhou, Yicun Yang, Haoran Ding, Gansen Hu, Ding Ding, Chuzhe Tang, Haibo Chen, Jinyang Li. WeTune: Auto…

【AIGC】11、MDETR | LeCun 团队于 2021 年推出的端到端多模态理解模型

文章目录 一、背景二、方法2.1 DETR2.2 MDETR 三、效果3.1 预训练调整后的检测器3.2 下游任务 论文&#xff1a;MDETR - Modulated Detection for End-to-End Multi-Modal Understanding 代码&#xff1a;https://github.com/ashkamath/mdetr 出处&#xff1a;ICCV 2021 Oral…

chatgpt赋能Python-pythonctrl快捷键

PythonCtrl快捷键使用指南 作为一名有10年Python编程经验的工程师&#xff0c;我深知PythonCtrl快捷键的重要性。PythonCtrl作为一个Python的开源编辑器&#xff0c;在每一个版本中都加入了更多的功能和快捷键&#xff0c;使得Python编程更加高效和易用。在本篇文章中&#xf…

卡方分布分析与应用

卡方检验(chi-square&#xff0c;记为χ2检验)是统计学中常用来计数数据分析的方法&#xff0c;对于总体的分布不作任何假设&#xff0c;因此它属于非参数检验法中的一种。本博文从理论到实际应用去阐述卡方检验&#xff0c;最后用python语言去实现卡方分布的代码。 1. 卡方分…

Spring Security的基本组件

一.简介 Spring Security通过一些列的过滤器完成了用户身份认证及其授权工作&#xff0c;每个过滤器都有不同分工&#xff0c;当然这些过滤器并不是全部都一起工作&#xff0c;而是根据我们需要什么功能&#xff0c;才会选取对应的过滤器加入。 当然这些过滤器并不是直接加入…

Linux 终端特殊符号含义大全

Linux特殊符号使用及含义 总结 Linux 终端中有许多特殊符号&#xff0c;本文对常用的进行了总结&#xff1a; $ 表示变量/普通终端用户&#xff1a;用于引用变量的值/表示终端中的普通用户。# 表示注释/超级用户&#xff1a;用于在脚本中注释代码/表示终端中的超级用户。/ &…

Doxygen 源码分析: QCString类

2023-05-20 23:41:56 ChrisZZ imzhuofoxmailcom Hompage https://github.com/zchrissirhcz 文章目录 1. Doxygen 版本2. QCString 类概览3. QCString 特殊成员函数3.1 default 方式的构造函数3.2 单个参数和两个参数的构造函数 4. inline方式实现的成员函数4.1 operator 函数4.…

chatgpt赋能Python-pythonguanwang

Python官网SEO分析 Python是一种高级编程语言&#xff0c;被广泛应用于Web开发、数据科学、人工智能、机器学习等领域。Python官网&#xff08;https://www.python.org&#xff09;是Python语言的官方网站&#xff0c;为Python用户和开发者提供了最新的Python解释器、文档、库…

中文Python(5)中文Python的while条件循语句

中文Python&#xff08;5&#xff09;中文Python的while条件循语句 Python是一种流行的编程语言&#xff0c;其简单而直观的语法吸引了很多人学习和使用。中文Python则是针对中文用户开发的一种版本。中文Python原先为了给不懂编写程序的人写量化程序&#xff0c;我们开发了中…

代码随想录算法训练营 Day 43 | 1049.最后一块石头的重量 II,494.目标和,474.一和零

1049.最后一块石头的重量 II 讲解链接&#xff1a;代码随想录-1049.最后一块石头的重量 II 确定 dp 数组以及下标的含义&#xff1a;dp[j]表示容量&#xff08;这里说容量更形象&#xff0c;其实就是重量&#xff09;为 j 的背包&#xff0c;最多可以背最大重量为 dp[j]。 石…

XPath语法:在XML文档中定位和选择节点的利器

XPath&#xff08;XML Path Language&#xff09;是一种用于在XML文档中定位和选择节点的语言。它提供了强大的定位和选择能力&#xff0c;使开发人员能够准确、灵活地定位所需的元素。本篇博客将介绍XPath的语法和常用定位方法&#xff0c;帮助你在Web自动化测试等场景中更好地…

Glob 文件匹配

前言 glob本质是Unix shell 风格的路径匹配规则。 该规则后续被其它语言支持。 ?&#xff1a;匹配一个任意字符 *&#xff1a;匹配任意个任意字符 [sequence]&#xff1a;匹配出现在sequence里面的一个字符 [!sequence]&#xff1a;匹配没有出现在sequence里面的一个字符 [a…

【解决】CSS下拉菜单不会显示的问题

导航栏的下拉菜单显示&#xff0c;但按 F5 刷新的一瞬间又能看见 下拉菜单的内容&#xff0c;但就是不会显示出来&#xff0c;一开始以为是 js 代码写错或者 css 的动画函数的影响&#xff0c;后面找到一篇博客&#xff0c;说这是老生常谈的问题&#xff0c;对于小白确实很难找…

移动应用数据安全性:如何防止应用程序被黑客攻击和数据泄露?

第一章&#xff1a;引言 在移动应用成为人们生活中不可或缺的一部分的今天&#xff0c;数据安全性已经成为一个非常重要的问题。随着黑客攻击和数据泄露事件的频繁发生&#xff0c;用户对于移动应用程序的信任度也在逐渐下降。本文将探讨移动应用数据安全性的重要性&#xff0…

chatgpt赋能Python-pythongpu加速

Python GPU加速&#xff1a;让你的Python应用飞速运行 介绍 Python是一种高级编程语言&#xff0c;具有易于学习、易于使用和强大的功能。作为一门解释型语言&#xff0c;Python会在运行时逐行解释程序代码&#xff0c;而这种解释方式会导致Python在运行速度上较慢。在需要大…

2023上半年软考系统分析师科目一整理-01

2023上半年软考系统分析师科目一整理-01 1. 面向对象2. UML 1. 面向对象 面向对象分析中&#xff0c;对象是类的实例。对象的构成成分包含了&#xff08;A&#xff09;&#xff0c;属性和方法&#xff08;或操作&#xff09;。 A.标识 B.消息 C.规则 D.结构 对象的三要素为&am…