171 lines
3.6 KiB
Markdown
171 lines
3.6 KiB
Markdown
# 智慧监督AI文书写作服务 - 启动说明
|
||
|
||
## 快速启动步骤
|
||
|
||
### 1. 创建虚拟环境(推荐)
|
||
|
||
**Windows系统:**
|
||
```bash
|
||
# 运行安装脚本
|
||
setup_env.bat
|
||
```
|
||
|
||
**Linux/Mac系统:**
|
||
```bash
|
||
# 运行安装脚本
|
||
chmod +x setup_env.sh
|
||
./setup_env.sh
|
||
```
|
||
|
||
**手动创建虚拟环境:**
|
||
```bash
|
||
# 创建虚拟环境
|
||
python -m venv venv
|
||
|
||
# 激活虚拟环境
|
||
# Windows:
|
||
venv\Scripts\activate
|
||
# Linux/Mac:
|
||
source venv/bin/activate
|
||
|
||
# 安装依赖
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
### 2. 配置环境变量
|
||
|
||
复制 `.env.example` 为 `.env`:
|
||
|
||
```bash
|
||
# Windows:
|
||
copy .env.example .env
|
||
|
||
# Linux/Mac:
|
||
cp .env.example .env
|
||
```
|
||
|
||
编辑 `.env` 文件,填入你的硅基流动API密钥:
|
||
|
||
```env
|
||
SILICONFLOW_API_KEY=你的API密钥
|
||
```
|
||
|
||
### 3. 启动服务
|
||
|
||
确保虚拟环境已激活,然后运行:
|
||
|
||
```bash
|
||
python app.py
|
||
```
|
||
|
||
服务启动后,你会看到:
|
||
|
||
```
|
||
服务启动在 http://localhost:7500
|
||
测试页面: http://localhost:7500/
|
||
```
|
||
|
||
### 4. 访问测试页面
|
||
|
||
在浏览器中打开:**http://localhost:7500/**
|
||
|
||
## 测试接口
|
||
|
||
### 使用Web测试页面
|
||
|
||
1. 访问 http://localhost:7500/
|
||
2. 在"输入数据"区域填写输入字段
|
||
3. 点击"开始解析"按钮
|
||
4. 查看解析结果
|
||
|
||
### 使用curl命令测试
|
||
|
||
```bash
|
||
curl -X POST http://localhost:7500/api/ai/extract \
|
||
-H "Content-Type: application/json" \
|
||
-d "{\"businessType\":\"INVESTIGATION\",\"inputData\":[{\"fieldCode\":\"clue_info\",\"fieldValue\":\"被举报用户名称是张三,年龄30岁\"}]}"
|
||
```
|
||
|
||
### 使用Python脚本测试
|
||
|
||
```python
|
||
import requests
|
||
|
||
url = "http://localhost:7500/api/ai/extract"
|
||
data = {
|
||
"businessType": "INVESTIGATION",
|
||
"inputData": [
|
||
{
|
||
"fieldCode": "clue_info",
|
||
"fieldValue": "被举报用户名称是张三,年龄30岁,某公司总经理"
|
||
},
|
||
{
|
||
"fieldCode": "target_basic_info_clue",
|
||
"fieldValue": "张三,男,汉族,1980年5月出生,山西太原人,本科学历"
|
||
}
|
||
]
|
||
}
|
||
|
||
response = requests.post(url, json=data)
|
||
print(response.json())
|
||
```
|
||
|
||
## 验证服务
|
||
|
||
运行测试脚本验证服务是否正常:
|
||
|
||
```bash
|
||
python test_service.py
|
||
```
|
||
|
||
## 常见问题
|
||
|
||
### 1. 提示"未配置AI服务"
|
||
|
||
**原因**:`.env` 文件中没有设置 `SILICONFLOW_API_KEY`
|
||
|
||
**解决**:编辑 `.env` 文件,填入你的API密钥
|
||
|
||
### 2. 数据库连接失败
|
||
|
||
**原因**:数据库服务不可访问或配置错误
|
||
|
||
**解决**:检查 `.env` 文件中的数据库配置,确保数据库服务可访问
|
||
|
||
### 3. 模块导入失败
|
||
|
||
**原因**:依赖包未安装
|
||
|
||
**解决**:运行 `pip install -r requirements.txt` 安装所有依赖
|
||
|
||
### 4. 端口被占用
|
||
|
||
**原因**:7500端口已被其他程序使用
|
||
|
||
**解决**:修改 `app.py` 中的端口号,或设置环境变量 `PORT=其他端口号`
|
||
|
||
## 项目结构
|
||
|
||
```
|
||
.
|
||
├── app.py # Flask主应用
|
||
├── requirements.txt # Python依赖
|
||
├── .env.example # 环境变量配置示例
|
||
├── .env # 环境变量配置(需自行创建)
|
||
├── test_service.py # 服务测试脚本
|
||
├── services/ # 服务层
|
||
│ ├── ai_service.py # AI服务(大模型调用)
|
||
│ └── field_service.py # 字段服务(数据库操作)
|
||
├── utils/ # 工具类
|
||
│ └── response.py # 响应格式化
|
||
└── static/ # 静态文件
|
||
└── index.html # 测试页面
|
||
```
|
||
|
||
## 下一步
|
||
|
||
1. 配置API密钥后,服务即可正常使用
|
||
2. 访问测试页面进行功能测试
|
||
3. 根据实际需求调整字段配置和AI提示词
|
||
|