legal-kb-builder
mcp
Uyari
Health Uyari
- License — License: NOASSERTION
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 6 GitHub stars
Code Gecti
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
- Permissions — No dangerous permissions requested
Bu listing icin henuz AI raporu yok.
本地法律知识库建设一体化工厂 — 从 PDF/DOCX/图片到可对外服务的业务咨询智能体,一个包搞定
README.md
legal-kb-builder
本地法律知识库建设一体化工厂。
用于本地整理、索引和检索法律材料;对外 API 需要显式配置身份验证并经受控网络部署。
- 🔀 双层路由:先判"是不是 md(不是就交给你配置的解析后端)",再判"该走书籍 KB / 裁判文书 KB / 问答集 KB / Agentic 实时检索 哪条流水线"。
- 🧩 解析后端可插拔:MinerU、阿里云百炼、合合信息 TextIn、PaddleOCR、LibreOffice、pandoc、任意自写脚本——你自己在
assets/parser-backends.yaml里配。 - 🔎 三路融合检索:BM25(
jieba+rank_bm25)+ 向量(bge-small-zh-v1.5+ FAISS)+ 结构索引,用 RRF 融合。 - 💬 问答集流水线:支持 FAQ / 业务咨询问答 / 培训问答等问答形态语料,"问题匹配为主、答案召回为辅"双索引检索。
- 🤖 业务咨询智能体:跨库编排(意图分类→KB路由→多源检索→结构化回答),支持多轮对话。
- 🌐 可选服务接口:HTTP API(FastAPI)与 MCP;API 所有路由要求
LEGAL_KB_API_TOKEN。Webhooks 应经验证请求的反向代理转发。 - ⚖️ 面向法律语义:区分"书的目录条文"与"正文引用条文",避免把 69 条司法解释建成 489 条索引这类常见事故。
- 📦 本地优先:核心工作流以文件和 CLI 运行;向量、OCR、API 与 MCP 按需安装,可选解析服务由调用方配置。
快速开始
# 1) 依赖
python3 -m pip install -r requirements.txt
# 2) 配置解析后端(至少启用一个)
cp assets/parser-backends.example.yaml assets/parser-backends.yaml
# 打开 parser-backends.yaml,把你要用的后端 enabled 改为 true 并填 token/cmd
# 3) 一键构建(工厂入口自动路由 + 构建)
python3 scripts/kb_factory.py build ~/legal_materials/合同法FAQ.pdf \
--output ~/kbs/faq_kb --name "合同法FAQ"
# 4) 本地命令行咨询
python3 scripts/consultation_agent.py --qa-kb ~/kbs/faq_kb ask "格式条款无效?"
# 5) 可选 API:先生成强 token;只经 TLS / 受控反向代理暴露;webhook 由代理做签名验证
LEGAL_KB_API_TOKEN="$(python3 -c 'import secrets; print(secrets.token_urlsafe(32))')" python3 scripts/api_server.py --qa-kb ~/kbs/faq_kb
# 6) 可选 MCP(本机 stdio)
python3 scripts/mcp_server.py # 配合 KB_PATH / QA_KB_PATH 环境变量
四条流水线 + 咨询智能体
| 类型 | 适用场景 | 主脚本 |
|---|---|---|
| book_kb | 法典评注 / 司法解释理解与适用 / 学术专著 / 教科书 / 案例汇编 / 法规汇编 / 实务指引 | scripts/legal_kb.py |
| case_kb | 法院裁判文书(判决书 / 裁定书 / 调解书 / 决定书) | scripts/judgment_kb.py |
| qa_kb | FAQ / 业务咨询问答 / 培训问答 / 客服话术 / 法律咨询问答集 | scripts/qa_kb.py |
| agentic | 探索性学术资料(论文 / 比较法 / 报告 / 单本随查) | scripts/monte_carlo_sampler.py |
| consult | 跨库业务咨询(意图分类→KB路由→多源检索→结构化回答) | scripts/consultation_agent.py |
细节请见 SKILL.md。
目录
legal-kb-builder/
├── SKILL.md # 详细使用说明(AI Agent 也可直接读作 skill 定义)
├── README.md # 本文件
├── requirements.txt
├── scripts/ # 全部可执行脚本
│ ├── kb_factory.py # 工厂主入口(一键路由 + 构建)
│ ├── consultation_agent.py # 业务咨询智能体
│ ├── api_server.py # HTTP API 服务(钉钉/飞书 webhook)
│ ├── mcp_server.py # MCP 服务
│ └── ... # 四条流水线 + 检索引擎
├── assets/ # 配置:解析后端 / 路由规则 / 词表 / 正则 / 问答 / 咨询
└── references/ # 深度文档(检索模式 / 索引模板 / 配置字段 / 端到端样例)
设计原则
- 目录即锚:书籍类知识库的一切都以书的真实目录为唯一依据。
- 正文引用 ≠ 结构条目:一本 69 条的司法解释书里,正文出现的"民法典第 584 条"是引用,不是本书条目。
- 只纳入主文:排除前言、序言、后记、致谢、脚注、出版信息。
- 问题匹配为主:问答集检索以"用户提问 ↔ 库内问题"的语义对齐为核心,答案召回为辅。
- 本地优先,按需依赖:基础索引可离线运行;向量、OCR 和服务依赖分开安装,并在构建结果中报告缺失能力。
许可
采用限制性许可 CC BY-NC-ND 4.0 + 6 附加条款;因限制商业使用和分发改编,本项目不是 OSI 定义的开源软件。署名/非商业/禁改编 + 禁 AI 训练 / 禁上架收费平台 / 企业与行政机关识别为商用 / 学术引用格式 / 禁背书 / 权利保留。完整条款见 LICENSE。商业授权、企业部署授权、AI 训练豁免请联系作者:游初 <[email protected]>。
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi