2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-04-28 11:29:33 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-04-28 11:29:33 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-04-28 11:29:33 +08:00
2026-04-28 11:29:33 +08:00
2026-04-28 11:29:33 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-04-28 11:29:33 +08:00
2026-04-28 11:29:33 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-05-14 15:07:34 +08:00
2026-04-28 11:29:33 +08:00
2026-04-28 11:29:33 +08:00

AI+合规智能中枢 - 法律法规文档解析入库

面向车企与工厂的合规智能平台,实现法规文档的解析、分块、嵌入和向量存储。

MVP功能

本次实现的核心功能(最小可用版本):

  • PDF/DOCX文档解析MinerU + PyMuPDF
  • 智能分块(章节级+条款级双粒度切割)
  • BGE-M3嵌入Dense+Sparse双路向量
  • Milvus向量数据库存储与混合检索
  • FastAPI接口封装

项目结构

Demo-glm/
├── src/
│   ├── api/                    # FastAPI接口层
│   │   ├── main.py             # API入口
│   │   ├── routes/
│   │   │   ├── documents.py    # 文档上传接口
│   │   │   └── knowledge.py    # 知识库检索接口
│   │   └── models/
│   │       └── document.py     # Pydantic数据模型
│   ├── services/
│   │   ├── parser/             # 文档解析服务
│   │   │   ├── pdf_parser.py   # PDF解析PyMuPDF
│   │   │   ├── docx_parser.py  # Word解析
│   │   │   └── mineru_parser.py # MinerU多模态解析
│   │   ├── embedding/          # 嵌入服务
│   │   │   ├── text_chunker.py # 智能分块器
│   │   │   └── bge_m3_embedder.py # BGE-M3嵌入
│   │   ├── storage/
│   │   │   └── milvus_client.py # Milvus客户端
│   │   └── document_processor.py # 文档处理主流程
│   └── config/
│   │   ├── settings.py         # 配置管理
│   │   └── logging.py          # 日志配置
├── tests/
│   ├── test_parser.py          # 解析测试
│   ├── test_embedding.py       # 嵌入测试
│   ├── test_milvus.py          # Milvus测试
│   └── verify_mvp.py           # MVP验证脚本
├── docker/
│   └── docker-compose.yml      # Milvus/MinIO部署
├── requirements.txt
├── pyproject.toml
└── .env.example

快速开始

1. 安装依赖

pip install -r requirements.txt

2. 启动Milvus向量数据库

cd docker
docker-compose up -d

等待Milvus启动完成约30秒

docker-compose logs -f milvus

3. 运行验证脚本

python tests/verify_mvp.py

4. 启动API服务

uvicorn src.api.main:app --reload --port 8000

访问API文档http://localhost:8000/docs

API接口

上传文档

curl -X POST http://localhost:8000/api/v1/documents/upload \
  -F "file=@your_regulation.pdf" \
  -F "doc_name=GB 7258-2017" \
  -F "regulation_type=车辆安全"

检索法规

curl -X POST http://localhost:8000/api/v1/knowledge/search \
  -H "Content-Type: application/json" \
  -d '{"query": "机动车安全技术要求", "top_k": 10}'

技术栈

类别 技术
文档解析 MinerU + PyMuPDF + python-docx
分块策略 章节级+条款级双粒度切割
嵌入模型 BGE-M31024维 Dense + Sparse
向量数据库 Milvus 2.4本地Docker部署
检索方式 Dense+Sparse混合检索 + RRF融合
API框架 FastAPI

配置

创建 .env 文件(参考 .env.example

# Milvus配置
MILVUS_HOST=localhost
MILVUS_PORT=19530

# 嵌入模型配置
EMBEDDING_MODEL=BAAI/bge-m3
EMBEDDING_DIM=1024

# 分块配置
CHUNK_SIZE=512

后续迭代不在本次MVP范围

  • LLM摘要生成DeepSeek/Qwen API
  • 文档上传UI界面
  • 混合检索问答功能
  • 法规变更监控与自动更新

许可证

MIT License

Description
AIRegulation-DocAnalysis-Demo
Readme 12 MiB
Languages
Python 50.1%
HTML 26.7%
TypeScript 16.2%
CSS 3.3%
Shell 1.7%
Other 2%