同步帧协议
概述
同步帧协议是一种标准化的JSON通信协议,用于在LLM驱动的智能体和游戏引擎之间进行同步通信,确保游戏状态与智能体决策之间的精确协调。
关键内容
- 设计动机:
- 解决LLM推理耗时(1-3秒)与游戏高帧率(60 FPS)之间的矛盾
-
通过阻塞式通信让游戏"冻结"等待智能体决策,避免游戏在LLM思考期间继续运行
-
协议特性:
- 时间步长:固定dt = 1/60s,消除真实时间依赖,确保测试结果可复现
- I/O模式:阻塞式fgets(),游戏帧率完全由智能体驱动
- 帧推进:1命令 = 1帧,实现精确控制,无帧跳过
-
空推进:支持{"action":"tick"}消息,允许仅观察而不执行动作的帧
-
消息格式:
- 引擎至智能体:JSON格式的状态消息,包含帧号、时间步长、FPS、游戏状态等信息
- 智能体至引擎:包含动作类型的JSON命令,如按键、空推进、截图、退出等
- 采用stdin/stdout管道进行同步通信
来源
- TITAN-技术框架核心点报告 — 第2节核心技术点一: 同步帧协议
相关
- TITAN-智能体 — part_of
- Luna-Engine — connects_to
- JSON-Protocol — implements
- LangGraph — relates_to