68 lines
1.5 KiB
Markdown
68 lines
1.5 KiB
Markdown
|
|
# 车辆法规智能检索系统 - 后端
|
||
|
|
|
||
|
|
基于 FastAPI + LangGraph + Milvus + 千问 的法规检索与合规分析后端。
|
||
|
|
|
||
|
|
## 技术栈
|
||
|
|
|
||
|
|
- **Web框架**: FastAPI
|
||
|
|
- **AI框架**: LangGraph
|
||
|
|
- **LLM**: 千问 Qwen-Max (DashScope API)
|
||
|
|
- **Embedding**: DashScope text-embedding-v3
|
||
|
|
- **向量数据库**: Milvus
|
||
|
|
|
||
|
|
## 快速开始
|
||
|
|
|
||
|
|
### 1. 启动 Milvus
|
||
|
|
|
||
|
|
```bash
|
||
|
|
docker run -d --name milvus-standalone \
|
||
|
|
-p 19530:19530 \
|
||
|
|
-p 9091:9091 \
|
||
|
|
-v $(pwd)/milvus-data:/var/lib/milvus \
|
||
|
|
milvusdb/milvus:v2.3.3 standalone
|
||
|
|
```
|
||
|
|
|
||
|
|
### 2. 配置环境变量
|
||
|
|
|
||
|
|
```bash
|
||
|
|
cp .env.example .env
|
||
|
|
# 编辑 .env 文件,填入 DashScope API Key
|
||
|
|
```
|
||
|
|
|
||
|
|
### 3. 安装依赖
|
||
|
|
|
||
|
|
```bash
|
||
|
|
pip install -r requirements.txt
|
||
|
|
```
|
||
|
|
|
||
|
|
### 4. 启动服务
|
||
|
|
|
||
|
|
```bash
|
||
|
|
uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload
|
||
|
|
```
|
||
|
|
|
||
|
|
### 5. 访问API文档
|
||
|
|
|
||
|
|
打开浏览器访问: http://localhost:8000/docs
|
||
|
|
|
||
|
|
## API接口
|
||
|
|
|
||
|
|
| 模块 | 路径 | 说明 |
|
||
|
|
|------|------|------|
|
||
|
|
| 文档管理 | `/api/docs` | 上传、解析、索引法规文档 |
|
||
|
|
| RAG问答 | `/api/rag` | SSE流式问答 |
|
||
|
|
| 合规分析 | `/api/compliance` | 设计方案合规分析 |
|
||
|
|
| 系统状态 | `/api/status` | 统计、配置、健康检查 |
|
||
|
|
|
||
|
|
## 项目结构
|
||
|
|
|
||
|
|
```
|
||
|
|
app/
|
||
|
|
├── main.py # FastAPI入口
|
||
|
|
├── core/config.py # 配置管理
|
||
|
|
├── api/routes/ # API路由
|
||
|
|
├── services/ # 服务层
|
||
|
|
├── workflows/ # LangGraph工作流
|
||
|
|
├── schemas/ # Pydantic模型
|
||
|
|
└── utils/ # 工具函数
|
||
|
|
```
|