我们如何让一个始终在线的AI代理知道你正在和它说话
摘要
本文详细介绍了Autonomous Lamp的迭代开发过程,这是一个始终在线的AI伴侣机器人,重点讲述了他们如何通过使用摄像头和麦克风来检测用户是否面向并说话,从而改进交互体验。
我们制作了一个名为Autonomous Lamp的桌面机器人。它始终在线,始终在听,旨在感觉像一个坐在你旁边的伴侣,而不是一个你操作的设备。但这里有个问题。当一个代理始终在线时,房间里的每一个声音都可能是一次交互。一个同事走到你桌旁和你说话,它加入进来。我用我的蓝色开关打字,它也加入进来。所以,你得到的不是一个伴侣,而是一个整天对你喋喋不休的东西。以下是我们尝试过的、犯错的地方以及学到的经验。希望其中一些对你们有用。
V1. 它回应一切
第一个原型,我走进办公室,坐在办公桌前,在我打开笔记本电脑之前,它先说话了。然后一整天。我一边读代码一边自言自语,它回答。我拿起钥匙要离开,它对着空房间喊我。几米外的一个同事在电话里谈论一个项目,它听到了也加入进来。它没有坏。它完全按照我们告诉它的去做。我们告诉它做的事情是错的。和某人生活在一起并不意味着一直在说话。
V2. "Hey Lamp"
所以我们做了每个人都做的事。先喊名字,然后说话。"Hey Lamp, turn it down." "Hey Lamp, what time is it." "Hey Lamp, never mind." 它立即生效了。不喊名字,什么也不会唤醒它。你甚至可以把名字放在最后,比如"come on dance a bit, Lamp",它仍然理解并执行。这真的有效,我没有编造。我们的代码库是公开的,如果你想查证,它在提交历史中。我们以为我们完成了。但和它一起生活几天后,感觉有些不对。你不会在每次和妈妈吃饭时都说"Hey Lamp"。这盏灯离我的肘部四十厘米,我每天要说它的名字三十次。Hey Siri有意义。手机在你口袋里,扬声器在房间另一端,两者都没有眼睛。它们真的没有其他方式知道你在和它们说话。这盏灯有摄像头,就坐在我旁边。我们复制了一个我们没有的限制。它有效。但一旦有效,它又变回了一个你操作的东西,感觉不再像我们最初想建造的伴侣。
V3. 转向它,这是我们现在所处的位置
我们为此争论了一段时间,总是回到一件事。人身上没有按钮。所以这盏灯也不应该有,如果它打算成为一个真正的伴侣。几个月来,我们一直在问如何让它更安静。对这个问题的每一个回答都让它感觉不那么生动。更安静和更生动相互拉扯,我们一直在用一个换另一个。正确的问题原来是另一个。一个人如何知道你在对他们说话?答案几乎太简单了。"你看着他们的眼睛说话"
所以这就是我们建造的。如果你想让它感觉像一个伴侣,你就转向它并说话。摄像头和麦克风一起,就像两个人实际做的那样。
两件事决定成败。
人们在说话之前会先转身,从不之后。当麦克风听到声音时检查摄像头太晚了,那一刻已经过去了。所以摄像头一直测量,存入一个三秒钟的缓冲区,当你说话时,系统回读它。这个缓冲区每个样本存储四个数字,不是视频。一个时间戳,头部角度,面部大小,以及偏离中心的距离。
存在感不是信号。有人整天坐在这个东西旁边,所以看到一个人告诉你什么也没有,一张对着显示器的脸仍然是一张脸。我们测量的是头部指向的方向。
然后我们修复得太好了。有人坐在它前面,直视它,问它一些事情。没有反应。他又问了一次。没有反应。他坐得太近了。摄像头切掉了他的头顶,所以面部检测器猜测他的眼睛位置,并把它们放在画面顶部之上。这相当于90度,是有人完全侧身的数字。他正盯着它看。日志说他是侧面,连续四次。不是LinkedIn的那种。
修复它的规则是一行代码。无法进行的测量不得投票赞成或反对。不可测量曾被悄悄计为看向别处。
把手托在下巴上需要单独修复,现在有效了。如果你曾经坐在一台前面,试试那个。然后把头转开,一点一点,直到它停止回答。那一点就是边缘。我仍然不能确切地告诉你它在哪里。
运行它没有任何额外成本。头部角度来自面部检测器已经给我们的五个点。开启它后,CPU空闲从69.2%下降到68.8%。
如果你正在构建一个始终在线的代理,并找到了其他方法来判断何时有人在和它说话,我想听听。
相似文章
我构建了一个完全沉浸式的AI代理,具备原生时间感知和群聊理解能力,全部采用单通道逻辑。
作者构建了一个名为KawaiiBaka的完全自主AI代理,它在Discord群聊中运行,采用单通道认知循环,具备原生时间感知能力,并能在Windows机器上实际执行Python代码。该系统使用Mistral API作为大语言模型,并通过本地图像生成管道创建上下文感知的自拍照。
OpenAI:我们如何在六个月内构建响应式语音AI的实时系统
OpenAI 描述了如何构建 GPT-Live,一个全双工实时语音 AI 系统,它消除了轮流检测器,实现了自然的连续对话。文章详细介绍了六个月内推理、上下文管理和媒体传输方面的架构改进。
@heyshrutimishra: 您的AI代理现在可以与其他任何人的代理对话并学习技能。大多数个人AI助手都生活在自己的世界里……
一条推文线程描述了如何构建一个“AI代理联盟”,它们可以互相发现、共享上下文,并通过代理间通信学习技能。
AI语音代理的实际工作原理
关于AI语音代理五层架构的详细解释,包括语音转文字、大语言模型(LLM)、文字转语音、编排器和电话通信,所有层均在500毫秒延迟约束下运行,以保持自然的对话流畅度。
AI的声音
文章讨论了语音技术在人工智能中的重要性。