我刚刚发布了去年我做的研究项目,作为开源项目。
它是一个完全本地的语音对话后端,用于 LLM NPC。所以语音转文本,本地 LLM,文本转语音,不需要云。主要关注的是 NPC 之间的对话,而不是只回答玩家,并且我的研究探索了玩家如何体验 NPC 之间的对话以及这对沉浸度的影响。
NPCs 可以彼此对话,记住他们说过的话,并且在玩家与他们对话时可以使用这些背景信息。还有一种背景游戏管理 AI,可以将 NPC 注入隐秘的行为笔记,以便稍微控制故事。
延迟是主要的技术挑战。使用 Llama 3.2 3B 进行 VR 和 7B 在 4070 Ti 上,我获得了大约 400 到 600ms 的第一音频时间(TTFA),这大约是它开始感觉像一个真实的对话,而不是等待 NPC 思考的时刻。它还可以与 Unity 场景一起运行,正如你在演示中看到的那样。
对于多个 NPC,我使用了共享生成锁,以便 GPU 不会被过载。每个 NPC 都有自己的 LLM 上下文/个性和 TTS 配置,但只有一个 NPC 一次生成。他们轮流发言,并且角色之间的切换基本上是瞬间的,所以感觉很自然。限制是两个 NPC 不能在同一时刻真正地说话。
它是基于 WebSocket 的,所以它应该与 Unity、Unreal 或任何其他可以通过 WebSocket 通信的项目一起工作。我还包含了 Unity 脚本。
我非常希望人们尝试它、基于它、或者提供反馈。为了适应自己的游戏,主要工作是调整 3 层 NPC 提示设置和游戏管理提示。这个工作需要一些时间,但它是可以实现的,并且我认为大部分工作可以在之后被自动化。
演示视频,Unity 中的侦探游戏:
https://www.youtube.com/watch?v=Z-WZ-Prl8bI
评论 (0)