『瀚思彼岸』» 智能家居技术论坛

标题: 来一起用openai手搓siri吧【代码已贴】 [打印本页]

作者: c1pher_小愚    时间: 2023-12-2 18:38
标题: 来一起用openai手搓siri吧【代码已贴】
本帖最后由 25989406 于 2024-3-5 10:23 编辑

最近升级ha看了官方的新版本介绍后 瞬间来了兴趣,Year of the Voice - Chapter 4: Wake wordshttps://www.home-assistant.io/blog/2023/10/12/year-of-the-voice-chapter-4-wakewords/
看到了手搓siri的可能——自定义唤醒词,然后再用一个普通的麦克风,结合openai,一个更智能版本的siri不就出来了吗?赶紧淘宝下单了两个atom
来论坛翻了一下目前大家都是用node做的

https://bbs.hassbian.com/thread-22418-1-1.html
但node这个我就不太喜欢了,因为俺没有node,为啥不能直接在ha里搞定呢?既然是大模型那,那他说什么返回什么应该也可以按照我的设计来吧?没有必要中间再加一道中转吧。

所以就先搜了一下,主要有两个项目可以通过openai直接控制ha
https://github.com/alanjames1987/OpenAI-Control-HA
https://github.com/jekalmin/extended_openai_conversation

但实际运行起来都不是太舒服,第一个只支持灯,作者后面也没有更新了。第二个太复杂,感觉很多东西没啥用。
所以我自己在OpenAI-Control-HA 的基础上做了一些简单调整,终于跑通了,逻辑跟五年前搞天猫精灵差不多,甚至还更简单

有一点遗憾的是我的atom唤醒词跑不起来,因为我不是os,docker部署的只能强行的用docker去跑homeassistant/amd64-addon-openwakeword:latest

但是就是运行不起来,有谁能跑起来的可以给我说一下~

没有语音唤醒,但是可以用按钮触发,先假装可以唤醒吧,哈哈哈,至少语音控制本身是没有啥问题了,除了tts stt都走了云端有点慢,再加上openai自身也是有些延时。
以下内容回帖可见



下面是openai的演示视频:建议手机观看,电脑看的时候声音听起来很奇怪


下面是国产通义千问的演示视频:




















作者: xinyang128    时间: 2023-12-2 18:52
来一起用openai手搓siri吧
作者: I1dLa3Y2    时间: 2023-12-2 20:53
刚到了个 echo 来学习下(
作者: ghostist    时间: 2023-12-2 21:31
挺好 除了反应太慢,确实希望有轻量版的AI能离线部署,TTS STT做的好一点,语义能理解控制设备就够了,联网可以问些刁钻问题
每个房间部署一个mic,感觉可以格了各种智障音箱的命(到时候估计就会有这种版本的音箱卖了)
大佬....东北的?
作者: c1pher_小愚    时间: 2023-12-2 21:49
本帖最后由 25989406 于 2023-12-4 10:19 编辑
ghostist 发表于 2023-12-2 21:31
挺好 除了反应太慢,确实希望有轻量版的AI能离线部署,TTS STT做的好一点,语义能理解控制设备就够了,联网 ...

再也不仅仅是电影情节了 有生之年应该能做得到 哈哈哈

东北的

作者: ghostist    时间: 2023-12-2 22:05
25989406 发表于 2023-12-2 21:49
再也不仅仅是电影情节了 有生之年应该能做得到 哈哈哈

沈阳的

不求像贾维斯自己手搓代码执行
能挫个自动化就满足了
比如临时性的xx小时后关灯
或者模糊性的:自动控制房间空调到舒适温度(体感温度根据传感器、湿度、外部温度、后续反馈等,自己调节模式、温度、风速)
作者: c1pher_小愚    时间: 2023-12-2 22:27
ghostist 发表于 2023-12-2 22:05
不求像贾维斯自己手搓代码执行
能挫个自动化就满足了
比如临时性的xx小时后关灯

做自动化有点复杂,https://github.com/jekalmin/extended_openai_conversation 但我看这哥们代码是应该已经实现了,我只是觉得没啥必要。
第二个,我觉得是大模型接ha时重点要做的,让他基于自己的理解主动帮我们操作一些事情,第一阶段前面我们把家里的数据喂给它,然后他能单独控制某个设备。第二阶段我理解就主要是从引导词上教育大模型应该就能做到了,甚至不用我们写代码
作者: mrlaogui    时间: 2023-12-3 11:36
延迟、延迟、延迟,各种延迟叠加,这个太磨人了
作者: 81795791    时间: 2023-12-4 10:09
我为啥识别出来的繁体.,,,,
作者: zerock    时间: 2023-12-5 16:10
学习一下
作者: c1pher_小愚    时间: 2023-12-5 16:18
81795791 发表于 2023-12-4 10:09
我为啥识别出来的繁体.,,,,

你看下assistant配置里,tts和stt的选项,里面应该是有繁体中文的,改一下就好了
作者: xiaolei_0125    时间: 2023-12-6 19:10
请教一下SST如何解决?
作者: c1pher_小愚    时间: 2023-12-7 17:17
xiaolei_0125 发表于 2023-12-6 19:10
请教一下SST如何解决?

STT吧 有条件可以用本地部署的
没条件就只能走云服务 我自己这个月用的是hacloud带的(第一个月免费后面收费)
作者: fyf    时间: 2023-12-8 11:00
来一起用openai手搓siri吧
作者: xiaolei_0125    时间: 2023-12-11 09:48
25989406 发表于 2023-12-7 17:17
STT吧 有条件可以用本地部署的
没条件就只能走云服务 我自己这个月用的是hacloud带的(第一个月免费后面 ...

谢谢回复, 目前看到使用的python sdk每次对话,都要把Hass本地的device信息作为prompt发给OpenAI,  非常消耗token,  再研究看看有什么节省的办法
作者: c1pher_小愚    时间: 2023-12-12 09:48
xiaolei_0125 发表于 2023-12-11 09:48
谢谢回复, 目前看到使用的python sdk每次对话,都要把Hass本地的device信息作为prompt发给OpenAI,  非常 ...

这个我特意问过,然后大模型告诉我system prompt不会每次都发只有创建新对话时发(不知道是不是在胡说八道)所以我把我的设备信息都在初始化的system prompt里,
每次提交的都是user prompt,只要不是反复建立新对话 对token的消耗还好


作者: c1pher_小愚    时间: 2023-12-12 09:55
xiaolei_0125 发表于 2023-12-11 09:48
谢谢回复, 目前看到使用的python sdk每次对话,都要把Hass本地的device信息作为prompt发给OpenAI,  非常 ...

再完美一点就是单独训练一个assistant,基础设备信息列表都先告诉他。不用在创建绘画时候说,然后他需要的时候可以走ha的api主动查询各个设备的状态,让他自己再根据我们的指令判断要做啥以及怎么做

但我看官方api里还没有分assistant的,也许后面会支持吧,或者自己写一个。但这些并不是遥不可及,总归是有办法能实现!
作者: c1pher_小愚    时间: 2023-12-15 12:02
代码已贴
作者: xiaolei_0125    时间: 2023-12-25 14:06
25989406 发表于 2023-12-12 09:48
这个我特意问过,然后大模型告诉我system prompt不会每次都发只有创建新对话时发(不知道是不是在胡说八 ...

我看资料说openai 服务端不会记忆用户的上下文信息,从每次调用返回的usage用量看,应该无法节省token
作者: xiaolei_0125    时间: 2023-12-25 14:10
25989406 发表于 2023-12-12 09:55
再完美一点就是单独训练一个assistant,基础设备信息列表都先告诉他。不用在创建绘画时候说,然后他需要 ...

对,开始和我你的想法一样, 使用assistant, 将现有的HA的设备信息预先提供给它, 不用每次在prompt里写, 而且可以配合function calling,来查询状态和执行服务。
但是我想到太好了,加使用python写代码实测assistant, 发现并不能节省token , 而且conext token占用更多, 查了很多资料也证实了这个情况,还可以参考这里的讨论:
https://github.com/jekalmin/exte ... versation/issues/30
作者: zhangyan996    时间: 2024-2-1 16:16
学习学习 大佬!
作者: maooo    时间: 2024-2-2 09:20
学习  学习~~~~
作者: bestsort    时间: 2024-3-4 19:41
研究一下
作者: motoyu    时间: 2024-3-4 20:06
I1dLa3Y2 发表于 2023-12-2 20:53
刚到了个 echo 来学习下(

买的哪里的 国内好像没有啊
作者: c1pher_小愚    时间: 2024-3-5 10:19
motoyu 发表于 2024-3-4 20:06
买的哪里的 国内好像没有啊

https://item.taobao.com/item.htm ... .0.0.36e22e8dQgut41
官方的店在这呢
作者: motoyu    时间: 2024-3-5 12:02
25989406 发表于 2024-3-5 10:19
https://item.taobao.com/item.htm?_u=5k9k9k63c0c&id=619747289913&spm=a1z09.2.0.0.36e22e8dQgut41
官 ...

3q 买个试试
作者: moqumingzi    时间: 2024-3-29 22:09
1111111111111111111111




欢迎光临 『瀚思彼岸』» 智能家居技术论坛 (https://bbs.hassbian.com/) Powered by Discuz! X3.5