作者分享了在游戏中实现 AI 语音低延迟的关键思路。核心方法包括预录常用语音直接播放、缓存已生成语音按 hash 复用、利用大模型 prefill 快 decode 慢的机制让模型只输出 {"decision":n} 少量 token 以最快约2秒出字,兜底则是用 AI 队友闲聊分散玩家注意力等待约5秒的真实生成。
作者拆解了游戏内 AI 语音降低延迟的可复用工程方法,覆盖预录、缓存、prefill 结构化输出到注意力兜底设计。
好多同学好像最感兴趣如何做到AI语音这么低延迟的, 讲一下关键思路, 其实还是软件工程的老一套. 没啥魔法, 我说一下大家就能立刻学会:
降低延迟3个思路, 一个是固定一下常用语音, 比如我录屏里AI经常说"右侧有敌人", 这个完全就可以先把生成好的语音录下来, 然后遇敌触发的时候直接播放语音, 都不用调用大模型重新生成.
另一个是缓存, AI 每次对话完毕后可以给它实时生成的语音缓存下来, 下次一旦说了同样的话, 直接用hash播放本地缓存. 这样即省语音合成API的钱, 也速度快.
还可以手动给AI做MTP, 比如: 现在的游戏情况是blablabla, 现在需要做出的决策是: 1, 进攻, 2, 躲避, 3, 开箱子......, 如果在上述情况, 请输出{"decision":n}. 否则请使用标准模板进行回复 然后利用大模型prefill速度快但decode速度慢的机制, 让它只吐非常少的 token, 这样能做到最快2秒左右就吐字. 然后程序立刻根据 {"decision":n} 随机出来一条缓存的符合情况的语音. 这样实时效果就非常好.
最后以上都不行怎么办? 利用人类的注意力缺陷, 人不太适应跟多个人说话, 所以我这里有个小设计, 当上面的加速规则都没办法命中, 进入兜底流程, 真的让kimi开始生成文本, 然后再走语音合成了. 那么这时候会给kimi 一个2s的超时, 它没回复立刻就让另外一个AI队友先聊一句无关痛痒的, 这时候你的注意力就会被拉开. 等到AI大概5s左右回复了也会觉得还行这个AI队友可能忙着舔包呢.
上面这几个流程加起来, 还要有个时效性FIFO队列, 我设计的队列深度是5, 也就是说, 会积累5条语音按顺序播放, 防止AI抢话或者同事说话. 然后一旦超过队列深度, 立刻淘汰头部的三条. 因为这种情况多半是已经在打架了, 快速获得最新的信息反而是正确的.
上面就是整体的思路啦. 是不是没啥难的嘿嘿.
给大家带来Kimi-K3.1-Pro 实测! 直接说结论, K3.1-Pro保持了一直以来的高质量前端水平. 无论是审美还是空间理解, 3D建模, 光影特效等能力都非常在线. 可以说想写炫酷的页面或者3D演示, 这就是国模最佳选择了. 另外 Agent 能力这次也有提升, 最大的特性就是可以十分清晰的知道自己在 Agent 系统中的目标, 排除干扰项推进任务. 而本次表现最差的反而是之前很强的后端 Agentic Coding 能力. 最大的问题是它在难以获得信息的情况下, 判断过于悲观, 给自己设置了一个很小的超时, 被迫使用了性能差但是对超时友好的算法. 结果导致分数没有跑赢上一代 K3. 这里我给到的使用建议是, 它本身并不是不能写, 而是会预设状态, 所以在后端编程过程中, 最好先写 Plan, 再开始编码, 尽量减少信息差, 才能让它发挥实力. #k31pro #kimik31 #kimik31pro #AgenticCoding #AIAgent在 X 查看被引用的帖子
来源:karminski-牙医 · x.com