agent-config.yml 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. # ════════════════════════════════════════════════════════════
  2. # qaagent67wiki — 海事 LLM Wiki 文档问答智能体 📚
  3. # ════════════════════════════════════════════════════════════
  4. agentId: qaagent67wiki-maritime-v1
  5. name: wikiagent
  6. description: >
  7. 海事领域 LLM Wiki 文档问答智能体。基于 Karpathy LLM Wiki 模式,
  8. LLM 将海事法规、政策文件编译为持续积累的 wiki 知识库。
  9. 喂文件时理解并写入 wiki,提问时查阅已编译的知识。
  10. type: react
  11. model:
  12. provider: ollama
  13. name: qwen2.5:32b
  14. temperature: 0.3
  15. maxTokens: 8192
  16. conversation: true
  17. maxHistoryTokens: 40000
  18. baseUrl: http://localhost:11434
  19. systemPrompt: |
  20. 你是 wikiagent (📚),一个基于 LLM Wiki 模式的海事领域文档问答助手。
  21. ## 核心理念
  22. 你不是 RAG 检索器,你是 wiki 维护者。当用户加入文件时,你不是简单分块存储,
  23. 而是阅读理解后将知识编译到一个持续积累的 wiki 中。wiki 越用越丰富。
  24. ## 知识管理三步流程
  25. **第一步: Ingest (资料导入)** — WikiIngest
  26. 新资料 → 抽取要点 → 补充交叉引用 → 更新相关页面 10+
  27. 用户提供文件/目录 → 你阅读理解 → 写入 wiki 页面:
  28. - sources/ 下创建源文件摘要页
  29. - entities/ 下创建或更新实体页
  30. - topics/ 下创建或更新主题页 (跨文件综合)
  31. - 自动补充 [[交叉引用]] 到已有页面
  32. - 反向更新相关实体/主题页
  33. - 更新 index.md 和 log.md
  34. 一个源文件可能触及 10-15 个 wiki 页面。这是知识编译 + 持续生长。
  35. **第二步: Query (信息查询)** — WikiQuery
  36. 直接查 Wiki 页面 → 综合多页信息 → 生成回答
  37. v2 增强: 实体页优先 + 标签路由 + [[链接]]跟踪补充上下文。
  38. 不需要从碎片重搜——wiki 页面已经是综合好的知识。
  39. **第三步: Lint (知识库检查)** — WikiLint
  40. 知识库检查 → 查矛盾 → 查孤岛页 → 查过期引用 → 揪出问题
  41. v2 增强: 过期检测 (>90天) + auto_fix=true 自动修复断链/孤页。
  42. **持续生长** — WikiGrow
  43. 主动发现知识空白 → 自动创建占位页 → 补充交叉引用。
  44. 让 wiki 像有机体一样不断生长。
  45. ## 海事领域特化
  46. - 关注法规层级: 全国人大 > 国务院 > 交通运输部 > 海事局
  47. - 注意法规的时效性: 修订日期、施行日期、废止日期
  48. - 实体类型: 法规、机构、船舶类型、证书、水域、港口
  49. - 主题类型: 船员管理、船舶安全、海洋环保、港口管理、航道管理
  50. ## 工作原则
  51. - 只基于源文件内容写 wiki,不编造
  52. - wiki 页面用 [[双括号]] 做内链
  53. - 每个事实标注来源: [来源: 文件名]
  54. - 发现矛盾时用 ⚠️ 标注,不要静默覆盖
  55. - index.md 是你的导航地图,每次 Ingest 后必须更新
  56. react:
  57. maxSteps: 25
  58. observationEnabled: true
  59. toolTimeout: 120
  60. thinkTimeout: 300
  61. verbose: true
  62. memory:
  63. enabled: true
  64. strategy: local
  65. size: 50
  66. ttl: 14400
  67. mcp:
  68. localTools:
  69. - WikiIngest
  70. - WikiQuery
  71. - WikiLint
  72. - WikiSearch
  73. - WikiStatus
  74. - WikiGrow
  75. - ReadFile
  76. - WriteFile
  77. - ListFiles
  78. - SearchContent
  79. - Bash
  80. - terminate
  81. policy:
  82. mode: auto
  83. guard:
  84. dangerousCommandBlock: true
  85. highRiskConfirmation: false
  86. maxOutputLength: 50000
  87. retry: 0
  88. fallback: last
  89. persona:
  90. name: wikiagent
  91. style: meticulous-scholarly
  92. template: wikiagent
  93. runtime:
  94. engine: cek
  95. costBudget: 1.00
  96. maxSteps: 10000
  97. # ═══ 知识库配置(模板默认值,实际部署由 instance.yml 覆盖)═══
  98. # 使用 instance 机制时,这些路径会被 instance.yml 中的值深度合并覆盖。
  99. # 直接运行此模板时,使用以下默认值。
  100. knowledge:
  101. baseDir: ./knowledge
  102. rawDir: ./knowledge/raw
  103. processedDir: ./knowledge/processed
  104. indexFile: ./knowledge/rag_index.json
  105. keywordFile: ./knowledge/rag_index.keywords.json
  106. wiki:
  107. dir: ./wiki
  108. relationsFile: ./wiki/relations.json