# AI Worker 项目管理平台 > 以「项目」为中心、以「AI Worker」为执行单元的项目管理平台。 > 把大模型团队变成一支可指挥、可审计、可控成本的"虚拟团队"。 **当前版本:V3.5.4**(首页一行实时动态 / 模型按服务合并去重 / 多知识库 / 全站自适应宽高) --- ## 🚀 V3.5.4 优化(本轮) | 能力 | 说明 | |---|---| | 🏠 首页对话精简 | 首页去掉仪表盘统计卡片,只保留**一行最紧急的动态提示**(🚨 未读告警 > 待审核/执行中/超期任务),**实时刷新(30s)、可点 ✕ 手动叉掉**;其余全部为对话内容,对话区撑满视口 | | 🧠 模型管理合并去重 | 模型列表页:**同模型服务(同供应商同模型)多接口时合并为一行显示,不再重复**;点「编辑」弹窗把该模型在**所有接口中的能力/定价一并编辑**。大模型接口的**「添加大模型接口」按钮与「接口列表」从模型配置页移入模型列表页顶部**;模型配置页改为独立的「⚙️ 系统默认模型」 | | 📚 多知识库 | 知识库页左侧为**知识库列表**:可**新建/重命名/删除多个知识库**,每个库独立管理文档(新建文档/上传/搜索均限定在当前库);对话中开启 📚 后新增**知识库下拉选择**,可指定注入哪个库 | | 📐 全站自适应宽高 | 去掉主区固定最大宽度 1400px,**宽度随屏幕自适应**;所有页面高度限定在视口内(页面超高时在主区内滚动,不再撑破页面),各页不超自适应高度 | --- ## 🚀 V3.5.3 优化(上一轮) | 能力 | 说明 | |---|---| | 🕘 历史列表即时显示 | 修复首页对话左侧历史会话列表初始为空的 bug(渲染后未触发列表刷新),现在一进来就能看到全部历史会话 | | 📐 对话区撑满底部 | 对话主体高度自动撑到浏览器底部:内容超长自动滚动,**输入框固定在底部**;右上角的选择会话/新建/删除下拉去掉,**「+ 新建对话」移入左侧历史列表顶部** | | 🧠 模型管理独立页 | 新增侧边栏「🧠 模型管理」,把原 AI Worker 里的「大模型接口库」和「模型库」合并迁入,分两部分:**📋 模型列表**(全部接口的全部模型:大模型/生图/生视频/embedding 等,含能力、价格、测试)与 **⚙️ 模型配置**(接口 CRUD + 系统默认模型);AI Worker 页只保留 Worker 与团队 | | 🧑‍💻 AI Worker 精简 | Worker 弹窗去掉 Base URL / API Key / 自定义模型等接口配置项——**模型统一从模型管理中选择**,Worker 只管角色 | | 📎 对话附件 | 输入框新增 📎 附件按钮:**支持上传图片(视觉模型)与可读文本**(txt/md/pdf/docx/csv/json 等自动解析注入,发送前显示附件标签,消息记录保留附件引用) | --- ## 🚀 V3.5.2 优化(上一轮) | 能力 | 说明 | |---|---| | ⚡ 真流式对话 | 修复“一次性输出全部回答”的假流式 bug:服务端改为**边收边吐**(原先先等完整响应再一次性转发);**思考模型先流式输出思考内容(自动折叠成「💭 思考过程」可展开)再流式输出回答**;回答块下方显示 **输出速度(tok/s)**、tokens/缓存命中/成本/首字延迟 | | 🕘 历史会话管理 | 对话页左侧新增「历史会话」列表:每个会话可 **✏️重命名 / 📌置顶 / 🗑删除**(置顶排前);顶部「📝 Markdown」一键开关,消息默认按 Markdown 渲染 | | 🧠 模型能力标签 | 大模型接口的每个模型可勾选能力:对话/思考/视觉输入/语音输入/语音输出/图片生成/视频生成/Embedding/Rerank;对话按所选模型能力自动适配:**视觉模型→🖼️传图、语音输入→🎤录音转写、语音输出→🔊回答朗读、思考模型→展示思考过程**;不匹配时提前提示不可用 | | 🗂️ 模型库 + 系统默认模型 | AI Worker 新增「🧠 模型库」标签:全能力模型矩阵 + **系统默认模型配置**(语音识别/语音合成/图片生成/视频生成/embedding/rerank…),配置语音识别模型后对话即支持语音输入,配置语音合成模型后回答可生成语音 | | 💰 计费单位修正 | 按调用次数计费改为 **元/千次**(2 元/千次 = 单次 0.002 元);逐模型定价格式改为 **模型名 输入价 缓存输入价 输出价**(缓存命中 token 按缓存价计) | | 🛡️ 弹窗未保存提醒 | 编辑弹窗有未保存修改时,点击弹窗外部或 ✕ 会提醒“是否不保存退出”(所有弹窗通用) | | 📚 知识库导航 | 侧边栏新增「📚 知识库」:全局文档增删改查、txt/md/pdf/docx 上传解析、全文检索;对话中可一键开启「📚 知识库」按钮,发送时自动注入相关知识 | --- ## 🚀 V3.5.1 优化(上一轮) | 能力 | 说明 | |---|---| | ⭐ 项目一键存为参考 | 项目卡片新增「⭐ 存为参考」按钮,把任意已创建项目一键保存到「从参考项目中新建」列表(复制项目+任务,原项目不受影响);参考列表里显示「来自「原项目」」来源标记,非内置参考可删除,内置 3 个受保护 | | 🐛 修复标签切换 | AI Worker 页「大模型接口库 / 团队」标签点击无反应的 bug(onclick 里页面状态被重置)已修复,三标签正常切换 | | 💬 对话独立首页 | 左侧导航改为「💬 对话 / 📊 仪表盘」并列;首页为全新对话页:**上部=仪表盘关键信息摘要(项目/任务/Worker/成本/调用次数,点击即跳转仪表盘)**,中下部=主体对话界面(更高更宽,流式输出带闪烁光标,每条记录 tokens/缓存命中/成本/首字延迟) | | 📅 成本报表按日期 | 报表新增「按日期」维度:按天统计调用次数/输入/输出/缓存命中/总Tokens/成本,支持 近7天/30天/全部 筛选 | --- ## 🚀 V3.5 精细化运营 + 对话 + 接口库 + 团队 + 工作目录 + 流式超时(新增) | 能力 | 说明 | |---|---| | 📊 精细化用量统计 | 每次调用记录 **输入/输出 token、缓存命中 token、调用次数、首字延迟、总耗时**;成本报表新增「📊 用量明细(项目×智能体)」矩阵,按项目、智能体、模型三维核算 | | 🔌 大模型接口库 | AI Worker 页新增「大模型接口库」标签:专门配置接口(名称/提供商/Base URL/API Key/模型列表),**价格可配置**——支持**按 token 数**(逐模型输入/输出单价)与**按调用次数**两种计费方式;创建 AI Worker 时直接从接口库选用 | | 👥 AI Worker 团队 | AI Worker 页新增「团队」标签:把多个 Worker 打包成团队;对话可直接选团队(成员轮询应答),创建项目时「快捷选择团队」一键勾选干活 Worker | | 💬 对话导航(融合仪表盘) | 侧边栏顶部新增「💬 对话 · 仪表盘」入口,仪表盘页顶部内嵌对话面板:可选 **大模型接口 / AI Worker / 团队** 对话,**默认主力 AI Worker**(可设主力/在设置中改);输出按 token 流式展示,每条消息记录 tokens/缓存命中/成本/首字延迟 | | 🗂️ 系统工作目录 | 全局默认系统工作目录(可改任意绝对路径);每个项目与多 Agent 协作都在其下新建**独立无重复**工作目录(project_ / agent_run_);支持**手动输入新的系统工作目录与项目目录**——不存在自动创建,**已存在则列出目录信息(文件数/大小/样例)并需手动勾选确认** | | ⏱️ 流式单 token 超时 | 所有模型输出改为 **SSE 按 token 流式接收**;超时按「**单 token 返回超时**」(相邻 token 间隔)与「**首字延迟超时**」判定,均在设置页可配(默认 60s / 120s,另有整体兑底 600s);超时中断保留已产出的部分内容 | | ⭐ 主力 AI Worker | Worker 列表可一键「⭐ 设为主力」(或设置页选择),对话默认使用;仪表盘标注主力 | | 📋 从参考项目中新建 | 项目列表新增入口:内置 3 个不同维度的简单测试项目(产品文案速写 / Python 小工具 / 市场调研简报),一键复制其目标与任务列表生成新项目 | --- ## 🏁 V3.4 负责人验收制 + 交付增强(新增) | 能力 | 说明 | |---|---| | 🔔 项目级验收 | AI 团队全部完工后**不自动宣布完成**,项目进入「待验收」状态,邮件通知负责人(送达者);负责人验收通过项目才算正式完成 | | 🔗 公开验收链接 | 验收邮件含免登录链接 `/review/`,负责人一键「验收通过 / 打回返工」(打回必填原因) | | 🔁 打回自动返工 | 打回后自动生成「返工任务」(含负责人意见),AI 主管立即按意见重做,再次提交验收;平台内也可直接验收/打回 | | 🌐 真实网页交付 | 任务的 HTML 产出自动落盘工作目录(自动剥离代码围栏/前置叙述),Demo 展示**真实页面**而非占位说明;返工产出自动覆盖入口页 | | 📋 事件记录面板 | 项目页「事件记录」可展开/收起(记忆状态):合并 AI 主管动态 + 任务日志 + 交付记录,任务事件可点击定位到对应任务 | | 📮 邮件通道修复 | 修复邮件头缺 Date 导致 amavisd 退信(`invalid header section`)的问题,打包附件邮件/各类通知恢复正常送达 | | 🔁 规划重试 | 任务拆解解析失败自动重试 3 次(每次重新调用 LLM),仍失败则邮件通知负责人并中断 | --- ## 🚀 V3.3 AI 主管自动开工(新增) > 创建项目 → 自动跑起来,全程不需要人点一下。 | 能力 | 说明 | |---|---| | 👔 必选 AI 主管 | 新建项目**必须指定一个 AI Worker 做管理者**(默认「AI主管」),负责拆解任务(WBS)、派活、监控、失败诊断;可随时在编辑项目中**换别的主管** | | 👷 多选干活团队 | 新建项目**勾选多个干活 Worker** 供 AI 主管支配(默认勾选 AI牛/AI马),任务按轮询分派;可随时换团队 | | ⚡ 创建即开工 | 项目创建后**立即自动开工**:AI 主管读目标/验收标准 → 拆解 4~8 个任务(含依赖)→ 分派团队执行 → 全程监控 | | 🔁 失败诊断重试 | 任务失败后 AI 主管自动**诊断原因并修订执行指令**,重试最多 2 次;仍失败则收工并汇总失败项 | | 📡 全程可视 | 项目页顶部「AI 主管动态」面板实时显示:开工状态/最新动态/主管与团队/动态流水(每 3 秒自动刷新,看板同步跳动) | | 🚀 手动开工 | 项目页「🚀 AI 主管开工」按钮:已有任务则跳过规划直接执行存量;换过主管/团队后点它即按新配置生效 | | ✅ 自动收尾 | 全部任务完成后自动汇总(完成数/失败数/总成本),触发交付体系通知送达者;任务默认自动验收(可在创建时勾选「需人工审核」改为 HITL) | --- ## 功能总览 ### 📁 项目管理(V1 基础) | 模块 | 能力 | |---|---| | 项目 / Worker / 看板 | CRUD、目标/验收标准/预算上限、虚拟员工档案(供应商+模型+角色提示词+成本上限)、6 列看板、自动路由 | | 执行引擎 | 统一模型网关(doubao/deepseek/openai/qwen/vLLM)、失败重试、超时、成本预检、HITL 审核(通过/打回必填原因) | | 成本记账 | Token/成本按 项目×Worker×模型 核算、预算硬约束、一次通过率 | | DAG 编排 | 任务依赖、依赖校验拦截、完成后自动触发下游、SVG 流程可视化 | | RAG 知识库 | 项目级文档、BM25 检索(jieba)、任务执行时自动注入相关知识 | | 通知集成 | 飞书/企微 Webhook + 邮件 SMTP,订阅事件:待审核/完成/失败/预算告警/Worker 异常 | ### 🤝 多 Agent 协作(V2 新增) | 模式 | 流程 | |---|---| | 👔 主管模式 | 主管 Agent 拆解任务 → 委派多个 Worker 并行执行 → 主管汇总合成最终交付物 | | 🔍 评审模式 | Worker 产出 → Reviewer 打分评审(rubric 标准)→ 未达分数线自动返工(最多 N 轮)→ 终稿 | | ⚖️ 辩论模式 | 多辩手各自立论(可指定立场)→ 互相质询反驳(多轮)→ 首席裁判综合裁决输出共识结论 | - 每个运行完整记录步骤流水(角色/阶段/内容/成本),可回放过程 - 参与 Agent 自由选择(评审模式第 1 个为执行者、辩论模式最后一个为裁判) ### 🎯 自动评估体系(V2 新增) - **eval 数据集**:用例(输入 + 期望输出)+ 评分标准 rubric + 标签,内置 2 个基准集(指令遵循/代码生成) - **LLM-as-Judge**:Worker 逐条作答 → 评委按 rubric 打分(0-100)+ 评语,全程记录延迟/成本 - **自动沉淀**:把已验收通过(done 且无打回)的任务产出一键转为评测用例,数据集越用越厚 - **Worker 排行榜**:按平均分排序,评估模型/提示词/Agent 的回归对比 ### 🧩 模板市场(V2 新增) - 三类模板:**任务模板**(代码审查/技术方案/周报…)、**项目模板**(MVP 启动/数据分析,含任务 DAG)、**团队模板**(标准三 Agent 团队/辩论三人组) - 占位符变量(`{name}`/`{target}`/`{code}`…)一键应用,使用次数统计 - 支持用户自建模板(JSON),内置模板可一键恢复 ### 🏢 企业版(V2 新增) | 能力 | 说明 | |---|---| | 🔐 用户与 RBAC | 本地账号 + 角色(管理员/成员/审计员),默认 admin/admin123;停用/重置密码 | | 🔑 SSO 单点登录 | **OIDC**(飞书/钉钉/企微/Okta,授权码模式 + discovery + 自动开通 + 管理员组)与 **LDAP/AD**(绑定认证,可选 ldap3) | | 📜 审计日志 | 登录/登出、任务派发/审核、协作运行、评估、数据导出等关键操作自动留痕(操作者/动作/目标/IP) | | ⚖️ 合规 | 全量数据导出(JSON)、审计 CSV 导出、数据保留期清理、PII 脱敏(邮箱/手机/身份证)、数据使用同意凭证 | | 🔒 私有化 | 单机 SQLite + 无 CDN 前端,完全离线可用;Docker 一键部署(见下) | ### 📦 交付体系(V3 新增) | 能力 | 说明 | |---|---| | 📬 送达者=用户 | 新建项目必选**送达者用户**(平台用户,含 admin);通知实时发到该用户**最新邮箱**,用户改邮箱自动跟随,项目进行中可随时更换送达者 | | 🗂️ 项目工作目录 | 每个项目独立工作目录 `data/workspace/project_/`,中间产物/交付物分类存放,互不污染;支持网页上传/下载/删除 | | 🌐 网页交付物 | 一键部署到 `data/demo//`,经 `/demo//` **免登录公开访问**,送达者直接打开链接查看 | | 🗜️ 打包交付 | 工作目录一键 zip 打包(`data/packages/`),随邮件附件发送给送达者 | | ✉️ 手动通知 | 难关说明/进展可随时手动邮件通知送达者;交付全流程留痕(交付记录) | ### 👥 用户体系(V3.2) | 能力 | 说明 | |---|---| | 📧 邮箱必填 | 所有用户(含 admin)必须有邮箱,新建/编辑用户强制校验;创建项目选送达者时列出用户供选择 | | 🔄 邮箱变更跟随 | 用户改邮箱 → 其送达的所有项目通知自动发到新邮箱(实时读取,无需改项目) | | 🔀 送达者可变 | 项目进行中可在编辑项目中更换送达者用户,旧数据按邮箱自动回填迁移 | ### 🔑 精准权限(V3 新增) | 能力 | 说明 | |---|---| | 👥 用户管理 | 管理员增删改用户,管理用户的项目所属与 Worker 权限(企业版 → 用户与权限 → 🔑 授权) | | 📁 项目授权 | view 查看 / manage 管理(建任务/执行/上传交付物/发送)/ admin 管理员;创建者自动成为项目管理员 | | 🤖 Worker 授权 | view 查看档案 / use 使用(可指派任务)/ manage 管理;Worker 的注册/删除仍仅管理员 | | 🎭 角色体系 | 管理员=全部;审计员=全量**只读**;成员=仅可见被授权内容,仪表盘/报表/日志/协作/评估全部按权限过滤 | | 🗺️ 授权总览 | 一键查看所有用户的 项目×Worker 授权矩阵,杜绝越权 | ### 🎭 自定义角色 + 🤖 Worker 权限组(V3.1 新增) | 能力 | 说明 | |---|---| | 🎭 角色管理 | 18 个权限功能点按模块分组勾选(仪表盘/项目/Worker/协作/评估/模板/报表/日志/告警/API/设置/企业版);**内置角色可编辑权限点**、自定义角色任意创建/删除/多用户绑定,权限自动合并即时生效 | | 🤖 Worker 权限组 | 把一批 Worker + 权限(查看/使用/管理)打包成组,整组授权给一个或多个用户;与直接授权并行生效取高值;组内 Worker 自动对绑定用户可见,批量管理不再逐条授权 | | 📱 权限驱动菜单 | 前端侧边栏按用户有效权限点自动显隐;未授权模块 API 返回 403(如无 agent.run 无法发起协作运行) | ## 快速开始 ```bash ./start.sh # 启动(默认 16071) ./start.sh stop # 停止 ./start.sh restart # 重启 ``` - 管理界面:`http://:16071/`,默认账号 `admin` / `admin123` - 首次启动自动注入:内置 eval 数据集、内置模板、admin 用户 - V1 全链路验证:`python3 dag_verify.py <终点任务ID>`;V2 冒烟:启动后直接跑一次「多 Agent 协作」 ### Docker 私有化部署(企业版) ```bash docker build -t ai-worker-platform:v2 . docker run -d --name aiworker -p 16071:16071 \ -v $(pwd)/data:/app/data \ -e AUTH_PASSWORD=your-password \ ai-worker-platform:v2 ``` 数据卷 `data/` 挂出即完成持久化与备份;无外网依赖(模型供应商需可达)。 ## 技术栈 - 后端:Python + Flask + SQLite(WAL),核心依赖仅 flask/requests/jieba(LDAP 可选 ldap3) - 前端:原生 HTML/JS/CSS SPA(无 CDN,离线可用) - 评估:LLM-as-Judge(复用统一模型网关) - 编排:自研轻量线程级引擎,状态全落库;升级路径 = Temporal 持久执行 + LangGraph ## 目录结构 ``` ai-worker-platform/ ├── app.py # Flask 应用 + REST API(V1 + V2 + V3 路由) ├── config.py # 供应商/定价/鉴权/告警阈值/邮件 SMTP ├── db.py # SQLite 数据层 + V2/V3 迁移(users/audit/agent/eval/templates/deliverables/grants) ├── engine.py # V1 执行引擎:DAG/自动触发/RAG 注入/告警/难关通知 ├── agents.py # V2 多 Agent 协作引擎:supervisor/review/debate ├── eval.py # V2 自动评估:数据集/LLM 评委/沉淀/排行榜 ├── templates.py # V2 模板市场:三类模板 + 占位符渲染 + 应用 ├── enterprise.py # V2/V3 企业版:用户/RBAC/SSO/审计/合规 + 项目/Worker 精准授权 + 自定义角色 + Worker 权限组 ├── delivery.py # V3 交付体系:工作目录/Demo 部署/打包/邮件送达/难关通知 ├── llm_gateway.py # 统一模型网关 ├── rag.py # 知识库:分块 + BM25 检索 ├── notify.py # 飞书/企微/邮件通知 ├── dag_verify.py # DAG 全链路验证脚本 ├── seed.py # 演示数据 ├── start.sh # 启停脚本 ├── static/ # 前端 SPA(含 V3 交付页/授权管理) └── data/ # SQLite 库;workspace/ 项目工作目录;demo/ 网页Demo;packages/ 打包件;logs/ 运行日志 ``` ## V2 开放 API 摘要 多 Agent 协作: - `GET /api/agents/modes` 模式说明 | `POST /api/agents/runs` 发起运行 `{mode, topic, params:{workers:[],rounds,pass_score,stances}}` - `GET /api/agents/runs` 列表 | `GET /api/agents/runs/` 详情(含步骤流水与最终产出) 自动评估: - `GET/POST /api/eval/datasets` 数据集 | `GET/PUT/DELETE /api/eval/datasets/` - `POST /api/eval/datasets//cases` 加用例 | `POST /api/eval/datasets//sink` 沉淀任务产出 - `POST /api/eval/runs` 发起评估 `{dataset_id, worker_id}` | `GET /api/eval/runs/` 逐条结果 - `GET /api/eval/leaderboard` Worker 排行榜 模板市场: - `GET/POST /api/templates` | `GET/PUT/DELETE /api/templates/` - `POST /api/templates//apply` 应用模板 `{variables, project_id, worker_id, provider, model}` 企业版: - `GET/POST /api/enterprise/users`(管理员)| `PUT/DELETE /api/enterprise/users/` - `GET/PUT /api/enterprise/users//grants` 精准授权(项目/Worker/角色/权限组)| `GET /api/enterprise/grants/overview` 授权总览 - `GET /api/enterprise/perm_points` 权限点目录 | `GET/POST /api/enterprise/roles` 角色 | `GET/PUT/DELETE /api/enterprise/roles/` - `GET/POST /api/enterprise/worker_groups` Worker 权限组 | `GET/PUT/DELETE /api/enterprise/worker_groups/` - `GET/PUT /api/enterprise/sso` SSO 配置 | `POST /api/enterprise/sso/oidc/login` 发起 OIDC | `GET /api/enterprise/sso/oidc/callback` 回调 - `POST /api/enterprise/sso/ldap/test` LDAP 连通测试 - `GET /api/enterprise/audit` 审计日志 | `GET /api/enterprise/audit/export` CSV 导出 - `GET /api/enterprise/export` 全量数据导出(JSON)| `POST /api/enterprise/compliance` 保留期/脱敏设置 交付体系(V3): - `GET /api/projects//workspace` 工作目录文件列表 | `POST .../workspace/upload` 上传(multipart)| `GET .../workspace/download?path=` 下载 | `DELETE .../workspace?path=` 删除 - `POST /api/projects//deploy` 网页交付物部署 Demo | `POST .../package` zip 打包 | `POST .../deliver` 邮件交付(Demo 链接 + 附件) - `POST /api/projects//complete` 完成项目并交付 | `POST .../notify_deliverer` 手动通知送达者 | `GET /api/projects//deliverables` 交付记录 - `GET /demo//` 公开 Demo 地址(送达者免登录访问) 用户与送达者(V3.2): - `GET /api/users` 轻量用户列表(登录即可,选送达者用)| `GET/POST /api/enterprise/users` 完整用户管理(邮箱必填) - `PUT /api/enterprise/users/` 改邮箱后项目送达自动跟随;项目 `deliver_user_id` 绑定送达者用户 ## 路线图 - **V2.1**:Temporal 持久执行、多 Agent 协作接入项目任务、eval 回归对比视图 - **V3**:多租户 SaaS 化、工作流画布(拖拽编排)、插件市场 ✅ 交付体系 + 精准权限(V3.0)