DEMO-AGENT V2
DEMO-AGENT V2 是一个面向体外诊断试剂注册资料准备与审核的 Django 工作台。系统把资料上传、文件目录汇总、法规核查、知识库检索、风险提示、整改复核、申报表自动填充和第 1 章监管信息材料包生成组织到同一个可追溯的审核流程中。
当前 master 已与 V2 内容对齐,是项目主线。
核心能力
| 能力 | 说明 |
|---|---|
| 审核工作台 | 登录后进入首页,查看对话、附件、知识库、批次和处理状态 |
| 对话式工作流 | 在 /chat/ 中围绕当前对话上传资料、触发汇总、法规核查和生成任务 |
| 文件汇总 | 读取 PDF、Word、Excel、PowerPoint、压缩包等资料,生成目录、页数、类型和导出结果 |
| NMPA 法规核查 | 基于规则、文本抽取、RAG 检索和 LLM 复核生成问题、风险和整改建议 |
| 知识库管理 | 上传管理资料、重建索引、检索引用片段,并过滤已停用或删除文档 |
| 申报表填充 | 从说明书和资料中抽取关键字段,生成预填申报表和追溯结果 |
| 第 1 章监管信息材料包 | 生成 CH1.2、CH1.4、CH1.5、CH1.11 等监管信息文件和 zip 产物 |
| 飞书通知与问答 | 支持企业自建应用消息通知,并预留飞书问答模拟命令 |
页面入口
| 页面 | 路径 |
|---|---|
| 登录页 | http://127.0.0.1:8000/login/ |
| 首页 | http://127.0.0.1:8000/ |
| 审核智能体 | http://127.0.0.1:8000/chat/ |
| 知识库管理 | http://127.0.0.1:8000/knowledge-base/ |
| 附件管理 | http://127.0.0.1:8000/attachments/ |
| 管理后台 | http://127.0.0.1:8000/admin/ |
项目结构
config/ Django 配置和总路由
review_agent/ 核心业务应用
application_form_fill/ 申报表自动填充
file_summary/ 文件汇总、附件和导出
regulatory_review/ 法规核查与整改复核
regulatory_info_package/ 第 1 章监管信息材料包生成
notifications/ 飞书通知和消息适配
feishu_questions/ 飞书问答预留能力
static/ 前端脚本和样式
templates/ Django 模板
docs/ 需求、设计、开发计划和原始材料
tests/ pytest 测试
本地运行
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver
项目会自动读取仓库根目录 .env。当前仓库保留了 V2 的 .env 文件;后续如果要面向外部协作,请先确认其中没有不应公开的密钥。
常用环境变量
| 变量名 | 用途 |
|---|---|
DJANGO_SECRET_KEY |
Django secret key |
DJANGO_DEBUG |
是否开启调试模式 |
DJANGO_ALLOWED_HOSTS |
允许访问的主机列表 |
LLM_PROVIDER |
LLM provider 选择 |
LLM_API_KEY |
LLM API key |
LLM_BASE_URL |
OpenAI 兼容 LLM API 地址 |
LLM_MODEL |
默认对话/抽取模型 |
SILICONFLOW_API_KEY |
SiliconFlow API key,默认可复用 LLM_API_KEY |
SILICONFLOW_EMBEDDING_MODEL |
法规 RAG 使用的 embedding 模型 |
SILICONFLOW_EMBEDDING_DIMENSIONS |
embedding 维度 |
REGULATORY_RAG_CHROMA_PATH |
法规 RAG Chroma 存储路径 |
REGULATORY_RAG_COLLECTION |
法规 RAG collection 名称 |
FEISHU_NOTIFY_ENABLED |
是否启用真实飞书通知 |
FEISHU_APP_ID |
飞书应用 App ID |
FEISHU_APP_SECRET |
飞书应用 App Secret |
FEISHU_DEFAULT_USER_OPEN_ID |
默认飞书接收人 open_id |
PUBLIC_BASE_URL |
飞书消息中的系统入口根地址 |
外部依赖
Python 依赖见 requirements.txt,主要包括:
- Django
- PyYAML
- httpx
- chromadb
- pypdf
- python-docx
- python-pptx
- openpyxl / xlrd
- py7zr
- playwright
文件汇总支持 .7z 和 .rar 时,运行环境还需要可用的 7z/p7zip 命令。LibreOffice 不是必需依赖,仅作为后续增强老格式文档处理能力的可选项。
常用命令
python manage.py check
pytest
pytest tests -k regulatory_info_package
pytest tests/test_feishu_*.py
python manage.py send_test_feishu_notification --username owner
python manage.py feishu_question_simulate --username owner "查最新法规核查"
已知情况:当前全量 pytest 中仍有少量历史测试与当前页面/LLM 调用策略不完全一致;监管信息材料包主链路测试已通过。
文档入口
Description
Languages
Python
86.5%
JavaScript
5.6%
HTML
4%
CSS
3.9%