Files
WorkBuddy f0c1cc1491 feat(logging): 日志持久化落盘(LOG_FILE 滚动文件)
- LOG_FILE 配置: 空(默认)保持 stdout + Admin 内存日志页(重启清零);
  填路径后额外写 RotatingFileHandler(单文件 10MB × 5 份,utf-8)
- setup_logging 幂等挂载(按 abspath 判重,相对/绝对同文件算一个);
  目录自动创建;文件基础设施失败只 warning 绝不拖垮启动
- docker-compose: api 挂 applogs 卷,默认 LOG_FILE=/app/logs/app.log,
  容器重建日志不丢;.env.example/.gitignore/docs 同步
- tests/test_log_persistence.py: 落盘/幂等/空值禁用/自动建目录/失败降级
- test_p0_standings_cutoff: 匿名约束 name=None 使 any() 子串匹配 TypeError
  (集合顺序不定 → flaky),先判真值再匹配(存量缺陷顺手加固)
2026-09-22 12:18:03 +08:00
..
2026-09-15 01:44:49 +08:00

Profeto 文档索引

文档 内容
01-架构总览 系统架构、数据流、技术选型、与旧项目对比
02-快速开始 安装、启动、首次跑通全流程
03-API 参考 全部 12 个端点、请求/响应示例、curl 全流程
04-多 Agent 预测 5 专家 + 终裁架构、执行语义、输出契约、prompt 版本化、如何新增 agent
05-数据层与数据库 三数据源、清洗契约、6 张表 schema、入库语义、采集建议
06-部署 Docker Compose、本地部署、环境变量、LLM 提供商配置、迁移、备份
07-开发指南 项目结构、测试、常见开发任务(prompt/agent/数据源/联赛)、前端开发

项目简介

Profeto 是一个足球 LLM 预测服务:FastAPI 提供干净的数据层(赛果/xG/积分榜), 5 个领域专家 agent(近期状态/攻防数据/主客因素/阵容完整性/历史交锋)并行分析, 终裁 agent 汇总输出结构化预测,赛后回填实际结果持续评估准确率。

与旧项目 MatchPro(自研 7 套统计模型 + 6 容器)相比:~45 个文件、2 容器、预测完全交给 LLM。

推荐阅读顺序

  1. 新手:01 → 02 → 03(跑通第一个预测)
  2. 调优 prompt:04(理解 agent 契约)→ 03(eval summary 看效果)
  3. 加数据源/联赛:05 → 07
  4. 上线:06