这个项目能做什么
S.A.G.A. (Story Analysis, Generation, and Archives) 被描述为一种具备正典意识的叙事智能,用于分析、检索、时间线构建和故事生成。该项目并非单一的庞大应用程序,而是组织为一个由合约驱动的可复用运行时集合。
功能
README 指出,S.A.G.A. 能将源书分析为有证据支撑的正典,生成基于正典的故事和视觉资产,合成经过审核的有声书,并打包发布制品。其生产编排路径被记录为以下序列:源数据摄取与分析基础;Modal XCore LitBank 身份解析;正典提取;角色与世界建模;生成规划;叙事生成与语义支持;视觉生成与图像 QA;有声书合成与转录 QA;最后是 EPUB、清单、血缘关系和资格报告。
架构
活跃的源码树包含四个主要界面:
- packages/ —— 独立的运行时包,涵盖代理、推理、检索、持久化、执行、身份、媒体生成、可观测性、血缘、资格验证和部署。
- integrations/ —— ComfyUI、Kokoro TTS 以及 Modal 上 XCore LitBank 的提供商实现。
- apps/dashboard_api/ —— 一个无状态的 FastAPI 控制与查询界面。
- apps/dashboard_pro/ —— 一个 React 操作员控制面板。
Supabase Postgres、pgvector 和对象存储作为 packages/persistence_runtime 背后的持久化提供商。LangGraph 的执行由 packages/agent_runtime 负责。提供商凭据保存在持久化或部署密钥存储中,并注入到运行时中,而非提交至源码控制系统。
一个显著的设计决策是将早期的实现作为惰性参考资料保留在 backup/reference/ 下。活跃代码被禁止导入该部分,且此边界由自动化的架构边界测试强制执行。其他文档文件涵盖了存储架构和架构加固审计。
开发工作流
Python 依赖项使用 uv 锁定,记录的命令为:
uv sync --frozen --extra dev
uv run pytest -q
控制面板的开发在 apps/dashboard_pro 内部通过 npm ci、npm test -- --run 和 npm run build 处理。在配置 Supabase 环境后,通过 uv run saga-runtime-api 启动 API。
生产与运维
生产拓扑和运维位于 deploy/production/ 下,并在 docs/deployment_operations.md 中记录。部署被分为 API、工作节点 (workers)、调度器、可观测性、前端、迁移和遥测收集器的独立进程。提供了一个 docker compose 工作流用于配置验证和启动。
容器基础镜像和 OpenTelemetry 收集器通过摘要 (digest) 固定。CI 从 main 分支发布运行时和控制面板镜像,拒绝现有版本标签,创建来源证明,并存储包含提交记录和镜像摘要的发布清单。生产环境的晋升被描述为“故障关闭”模式,除非部署清单具有干净的已提交源码来源证明。
文档索引
README 指向 docs/system_agent_roadmap.md 和 docs/production_qualification.md 以了解实现和资格验证状态,以及关于部署(构建、滚动更新、回滚、备份、恢复)、运行时密钥所有权、存储合约与提供商边界、端到端编排、认可的真实书籍资格证据以及架构完整性审计的运维参考。
评估
该仓库最好被理解为一种用于基于正典的叙事生产的基础设施:它将针对源书的检索和身份解析与文本、图像和音频的生成阶段相结合,并以发布打包和面向来源证明的 CI 结尾。README 侧重于架构和运维合约细节,并未发布基准测试或质量声明;其能力陈述应结合其引用的资格验证文档进行阅读。
评论
0 评分人数达到10人后显示
登录后参与讨论。