f0dce05ac13c92c53a2d737bcec92b9bdd5e05da
交接文档规定"未经 spike 结论,不进入 Phase 3"。本次完成 Phase 1 spike, 7 项验证全部通过,并给出可进入 Phase 2 的结论。 新增 P1-Flows兼容性Spike结论.md 核心结论: - **不装 pipecat-ai-flows**。Pipecat 1.10 内置 Flows(pipecat.flows), 装独立包会报错提示卸载;独立包 1.4.0 会把 pipecat 降到 1.4.0 - **复用 DeepSeekLLMService**,不写 FallbackProvider 适配器。它自带 DeepSeekLLMAdapter 处理 reasoning_content 回传(P0 踩过的坑), thinking 默认 disabled。代价是失去本地 vLLM 降级 - 实测:中文流式 14–22 块/回复、工具参数无重复拼接、回灌后出最终回答、 worker.cancel() 立即终止、role_message 生效 定位了 5 个坑(4 个 Flows 相关 + 1 个环境): 1. FlowManager.initialize 是协程但签名显示 -> None,漏 await 静默失效, role_message/task_messages/工具全部不生效而 LLM 照样回复,极易误判 2. 必须用 PipelineRunner 跑 worker;直接 run() 会让工具执行失败, 异常被转成通用错误串,handler 从不执行,默认日志看不到 3. respond_immediately 默认 True,initialize 会立刻触发一轮回复, 做归因测试时不清空观察窗口会归因错 4. role_message 与 task_messages 各产生一条 system 消息, 两者不要同时用(切回本地 vLLM 时会 400) 5. NLTK punkt_tab 本地也需预装,否则 setup 超时卡住 对现有功能的影响:分句 TTS、RTVI、记忆身份不受影响; SearXNG 工具需迁移;本地 vLLM fallback 会失去。 第四节给出 Phase 3 的最小生产集成 diff 要点。
Description
个人笔记仓库
135 MiB
Languages
Python
100%