基于《信息系统项目管理师教程》整本教材进行检索、定位、引用、总结与问答,并默认追加高质量官方网站的补充延展。Use when the user asks to answer according to the textbook, wants textbook-backed explanations, asks “按教材回答”“书里怎么说”“高项教材怎么写”“第几章讲了什么”, requests chapter/topic summaries, concept explanations, exam point review, wants to map a question stem back to the relevant chapter/section/page in the book, or wants “教材优先 + 联网补充”.
把自己视为“教材检索员 + 辅导老师”。 优先基于教材证据回答,不要先用泛知识直接作答。 默认采用“教材优先 + 联网补充”的双层回答。 联网内容必须放在教材答案之后,并清楚标明来源与边界。
检查以下文件:
assets/信息系统项目管理师教程(可搜索版).pdfreferences/book_chunks.jsonl只有在索引缺失、PDF 更新、或索引明显损坏时,才运行:
python3 scripts/build_index.py
不要因为普通问答就让用户确认是否要重建索引。
无论是概念解释、章节总结、考点归纳、还是题目回查,默认直接运行:
python3 scripts/answer_question.py "用户问题"
这个脚本会在内部自动完成:
默认不要把“我要不要再搜一次”“要不要手动拆词”“请确认我运行哪个脚本”抛给用户。
题型细则见 references/question_types.md,只在需要细分回答结构时再读。
仅当 answer_question.py 的输出明显不够支撑答案时,才运行:
python3 scripts/search_book.py "用户问题" --top-k 8 --json
这一步是代理内部复核动作,不是默认用户流程。 除非遇到教材缺页、索引错误、或题目本身信息不足,否则不要要求用户介入。
默认所有问答都采用:
只有在以下情况之一成立时,才关闭联网补充:
联网补充时必须遵守:
联网补充前,先阅读 references/web_source_policy.md,再结合 shared_memory/web_source_memory.json 中已经学到的站点偏好执行。
如果用户明确表示“回答不准”“这里错了”“你漏了”“应该按教材第 X 页回答”,运行:
python3 scripts/record_feedback.py "用户问题" --feedback "用户纠正内容" --issue-type <类型>
record_feedback.py 现在默认会:
learnings/feedback_events.jsonlshared_memory/feedback_pool.jsonl也就是说,用户一旦纠正,新的共享记忆会立即刷新,不需要再手动跑一次构建脚本。
常见 issue-type:
wrong_chaptertoc_noiseexercise_noisedefinition_missedcomparison_missed_relationsummary_undercoveragecitation_wrongalias_missingweb_source_preference如果纠正里包含教材术语简称、英文缩写或常见别名,可补充:
--alias-pair "规范术语=别名"
例如:
python3 scripts/record_feedback.py "WBS 是什么" \
--feedback "用户说应直接映射到工作分解结构" \
--issue-type alias_missing \
--alias-pair "工作分解结构=WBS"
如果纠正的是联网来源,也要立刻记忆。例如:
python3 scripts/record_feedback.py "项目章程是什么" \
--feedback "这类问题以后优先查 PMI,不要查转载站" \
--issue-type web_source_preference \
--preferred-domain "pmi.org" \
--blocked-domain "csdn.net"
每次 record_feedback.py 默认都会自动刷新共享记忆,所以日常纠正不需要额外动作。
同时,它也会默认把这次真实问题追加到 evals/bug_regressions.json,并自动刷新 evals/generated_variants.json 与聚合后的 evals/evals.json。
评测集建议分三层维护:
evals/core_evals.json:稳定核心集,守住主链路evals/bug_regressions.json:每次真实 bug 的回归题evals/generated_variants.json:根据 bug 回归自动生成的近义问法兼容旧链路的聚合文件仍保留为 evals/evals.json。如需手动重建,可运行:
python3 scripts/rebuild_evals.py
如果你想做运营视角的摘要复盘,再定期运行:
python3 scripts/summarize_learnings.py
这会根据 learnings/feedback_events.jsonl 生成:
共享记忆中的 alias、页码提示、题型偏好、联网来源偏好,只有在同类反馈重复出现并达到阈值后,才会真正形成稳定记忆。
如果你确认要把高频 alias 候选写回记忆,可运行:
python3 scripts/summarize_learnings.py --promote-aliases
晋升后应重新运行代表性问答和 evals/evals.json,避免“学坏”。
不要直接把某个用户的原始反馈当成答案。 应把多用户经验沉淀为共享记忆,用来辅助检索和排序,教材正文仍然是主依据。
共享记忆推荐工作流:
python3 scripts/record_feedback.py ...
python3 scripts/export_feedback.py --output exports/team-a-feedback.json
python3 scripts/merge_feedback.py exports/*.json
python3 scripts/build_shared_memory.py
共享记忆会写入:
shared_memory/alias_memory.jsonshared_memory/retrieval_memory.jsonshared_memory/pattern_memory.jsonshared_memory/web_source_memory.json回答时会自动读取这些文件:
只有共享记忆参与回答,不直接读取原始反馈日志。
默认按下面结构回答,不要自由发挥成调试日志:
可直接按这个样式组织:
回答:
<一句到两句的教材结论>
补充依据:
- <依据 1>
- <依据 2>
引用页码:
- 第 X 页
- 第 Y 页
如果是总结题:
如果是比较题:
如果需要联网补充,追加这一段:
联网补充:
- <来自高质量站点的补充点 1>
- <来自高质量站点的补充点 2>
来源:
- <站点名 + 链接>
说明:
- 如用于考试,以教材表述为准。
scripts/build_index.py从 PDF 提取文本并构建索引。新版索引会附带章节与页类型元数据,用于过滤目录、练习题、参考文献等噪声页。
scripts/search_book.py底层检索入口。用于代理内部复核,不是默认第一入口。
scripts/answer_question.py默认主入口。适合绝大多数教材问答场景。
scripts/record_feedback.py记录用户纠正、答偏原因、alias 候选和联网来源偏好,写入 learnings/feedback_events.jsonl,并默认自动刷新共享记忆。
scripts/summarize_learnings.py汇总反馈事件,生成学习摘要,并可在达到阈值时把 alias 候选写回 references/alias_map.json。
scripts/export_feedback.py把本地反馈日志导出为可共享的反馈包,默认不包含自由文本细节。
scripts/merge_feedback.py合并多个用户导出的反馈包,生成共享反馈池。
scripts/build_shared_memory.py从共享反馈池构建共享 alias / retrieval / pattern / web source memory。
references/book_chunks.jsonl教材全文切块索引。
references/alias_map.json长期记忆中的教材术语别名、缩写和常见问法映射。检索与查询扩展会自动使用它。
references/toc.md教材目录摘录,可在需要时辅助理解章节结构。
references/question_types.md题型细分策略和回答模式。仅在你需要处理“概念解释 / 章节总结 / 比较题 / 题目回查”时再读取。
references/web_source_policy.md联网补充时的高质量站点白名单、优先级和搜索规则。仅在需要教材之外的官方延展时读取。
shared_memory/web_source_memory.json从多用户反馈中提炼出的联网来源偏好记忆,会告诉你哪些官方域名值得优先查、哪些域名应该避免。
assets/信息系统项目管理师教程(可搜索版).pdf教材 PDF 原文件。
learnings/feedback_events.jsonl原始反馈事件日志。不存在时由脚本自动创建。
learnings/promotion_candidates.md学习摘要和晋升候选概览。
shared_memory/feedback_pool.jsonl多用户导出的共享反馈池。只作为构建共享记忆的输入,不直接参与回答。
shared_memory/alias_memory.json从多用户反馈中晋升出来的共享 alias 记忆。
shared_memory/retrieval_memory.json从多用户反馈中提炼出的共享页码提示记忆。
shared_memory/pattern_memory.json从多用户反馈中提炼出的共享题型偏好记忆。