- Python 76%
- HTML 24%
feat(matchmaker): 新增可信度评估和长期关系演进分析功能 - 添加 confidence 字段,包含报告可信度评分和低可信原因注释 - 实现 explainability 模块,列出影响评分的关键因素和评分依据 - 增加 relationship_evolution 功能,提供短期、中期、长期关系观察重点 - 更新 README.md 文档,说明可信度、可解释性和关系演进验证路线 ``` |
||
|---|---|---|
| ai_matchmaker | ||
| scripts | ||
| tests | ||
| .gitignore | ||
| agent_manifest.json | ||
| COMPETITION_README.md | ||
| EXTREME_CASES.md | ||
| index.html | ||
| LICENSE | ||
| PRELIMINARY_SUBMISSION.md | ||
| PRIVACY.md | ||
| README.md | ||
| server.py | ||
| SKILL.md | ||
| skills.json | ||
| smoke_test.py | ||
| SPECS.md | ||
| VALIDATION_ROADMAP.md | ||
| WAVE2_PROTOTYPE.md | ||
Wave 2 Prototype - 学习型 AI 相亲代理人
这是复赛 Wave 2 的可运行提交目录。它不是单纯静态页面,而是一组可被评测 Agent 调用的 Skills,并额外提供一个 Agent Orchestrator,用来一次性跑通产品核心闭环。
这版增强了什么
- 支持真实用户画像输入:
profiles可以传入两位用户的 bio、traits、relationship_goals、preferences、memory。 - 支持 Agent 编排入口:
POST /api/agent/run会自动调用 Skills,返回调用链、Agent 轨迹和最终报告。 - 支持关系场景模拟:根据缺口选择冲突修复、异地规划、家庭边界等场景,也可以用
scenario_type指定。 - 支持动态评分:兼容性分数由记忆覆盖率、沟通风格相似度、场景表现、能量匹配度和剩余缺口共同决定。
- 保留单 Skill 调用:评审可以单独测试每个 Skill,也可以直接跑完整 Agent。
SKILL.md 说明
SKILL.md 是给评测 Agent 和人工评审优先阅读的 Skill 使用说明文件。它用 Markdown 形式描述本提交包的能力边界、调用入口、输入输出 Schema、完整工作流、评分逻辑和安全边界。
本目录中三个说明文件的分工如下:
SKILL.md:人类和 Agent 都容易阅读的 Skill 说明,适合作为评审入口。skills.json:机器可读的 Skills 清单,适合自动评测系统解析。agent_manifest.json:Agent 定位、能力、编排策略和 Demo 入口说明。
建议评审顺序:先阅读 SKILL.md 理解能力,再查看 skills.json / agent_manifest.json 确认可调用接口,最后运行 POST /api/agent/run 或打开页面验证闭环。
快速运行
py server.py
打开页面:
http://127.0.0.1:7860
健康检查:
GET /api/health
GET /api/privacy
推荐评测入口
1. 一次性运行 Agent 闭环
POST /api/agent/run
返回内容包含:
skills_called:本轮实际调用的 Skillsagent_trace:Agent 为什么这么做的步骤说明simulation:代理间初筛对话scenario_simulation:关系场景模拟结果knowledge_gaps:剩余追问compatibility_report:兼容性分数、理由、风险、下一步和评分证据
2. 单独调用 Skills
POST /api/skills/extract_memory
POST /api/skills/create_agent
POST /api/skills/simulate_match
POST /api/skills/run_scenario
POST /api/skills/identify_gaps
POST /api/skills/update_memory
POST /api/skills/generate_report
3. 页面逐步演示
GET /api/step/0
GET /api/step/1
...
GET /api/step/7
代码层隐私隔离说明
针对“代码里到底怎么隔离”的问题,当前原型在 server.py 中显式加入了 PRIVACY_GUARDRAILS 和 GET /api/privacy:
- 本地进程运行:只使用 Python 标准库 HTTP 服务。
- 无外部网络调用:不主动请求第三方 API 或云端 LLM。
- 无持久化用户数据库:
run_agent只在单次请求内构建 profile、memory 和 Agent。 - 无请求体日志:
log_message被覆盖为空函数,默认不打印用户画像内容。 - 返回隐私边界:
POST /api/agent/run会返回privacy_boundary字段,方便评审直接检查。
这不是最终生产级隐私方案,但它把 Wave 2 原型的边界讲清楚了:当前是本地隔离原型;真实产品阶段应升级为本地 Memory Vault 或边缘可信网关。
针对交叉评测反馈的补充
本版本已经吸收交叉评测中关于“能量模型、隐私边界、极端样本”的建议:
compatibility_report.energy_match_score:新增能量匹配度,避免系统只偏好低冲突关系。compatibility_report.relationship_energy_type:区分互相赋能、低冲突平稳、高吸引高摩擦、潜在消耗等关系模式。compatibility_report.energy_dynamics:解释正向能量来源、消耗风险和边界提示。PRIVACY.md:补充深层心理数据的本地优先、脱敏、边缘部署和物理隔离设想。EXTREME_CASES.md:提供“高吸引但高冲突”的极端样本,展示系统如何处理复杂关系博弈。
针对 AI 能力评测反馈的补充
本提交包保留零依赖可运行能力,同时针对“规则型实现过强、对话模板化、评分硬编码”的反馈做了增强:
create_agent会从用户自然语言资料中推断 directness、empathy、planning 等 traits,手动 traits 仍可作为覆盖输入。simulate_match不再固定 4 轮模板,而是根据双方共同记忆和缺失维度动态展开多轮代理对话。run_scenario的场景评分不再使用固定值,而是根据场景相关维度覆盖率、共享记忆、沟通风格、对话清晰度和风险词动态计算。update_memory会返回previous_value、conflict_detected、update_strategy,用于表达记忆更新中的覆盖与冲突检测。- 当前 Wave 2 仍默认不强依赖外部 LLM,保证评测环境可离线运行;后续可将这些 Skill 的内部实现替换为 LLM Provider,同时保持 API 入口不变。
可信度、长期演化与验证路线
针对“情感判断主观、长期记忆初级、真实用户泛化未知”的反馈,报告已新增:
confidence:标注报告可信度和低可信原因,避免把探索性结论包装成确定判断。explainability:列出影响分数的关键因素,说明为什么这样评分。relationship_evolution:按 0-3 个月、3-12 个月、长期三个阶段给出观察重点。VALIDATION_ROADMAP.md:补充真实用户访谈、A/B 测试、长期关系追踪和产品落地假设。
复赛提交重点
复赛规则强调提交 Specs 中关键 Skills 或工作流,并跑通 Prototype。因此本目录优先保证:完整、有效、可运行、可测试。页面只是演示壳;真正评测价值在 skills.json、agent_manifest.json、server.py 和 ai_matchmaker/competition/wave2_prototype.py 中的可调用能力。
文件说明
SKILL.md:面向评测 Agent 和人工评审的 Skill 使用说明。server.py:本地 HTTP 服务,暴露 Skill API、Agent API 和页面。skills.json:可调用 Skills 清单和输入输出说明。agent_manifest.json:Agent 定位、能力、编排策略和入口。ai_matchmaker/competition/wave2_prototype.py:核心 Skill 实现。index.html:可视化演示页面。smoke_test.py:最小可运行检查。