Backend
医疗问诊 Agent FastAPI 后端工程。
启动
cd backend
python -m venv .venv
.\.venv\Scripts\activate
pip install -r requirements.txt
copy ..\.env.example ..\.env
uvicorn app.main:app --host 127.0.0.1 --port 9000
Swagger:
http://127.0.0.1:9000/docs
配置
后端读取项目根目录 .env。
DATABASE_URL=mysql+pymysql://root:<password>@mysql:3306/medical?charset=utf8mb4
MYSQL_URL=mysql+aiomysql://root:<password>@mysql:3306/medical?charset=utf8mb4
REDIS_URL=redis://redis:6379/0
真实密码和 API Key 只写入部署环境或本地 .env,不提交 Git。
核心约束
- 用户身份只来自
Authorization: Bearer <access_token>。 - 后端转发 token 到 Django 用户中心
/api/user/users/me/。 - Django 返回的
id是本系统内部用户隔离字段。 - 问诊消息进入短期 memory,不作为长期历史保存。
- 检查检验结果只从数据库读取。
- 完整训练结束后只保存评价记录、PDF 路径、学习档案和审计日志。
- LLM 调用统一经过
app/agents/llm_adapter.py。