117 lines
2.4 KiB
Markdown
117 lines
2.4 KiB
Markdown
|
|
# 连接重置问题解决方案
|
|||
|
|
|
|||
|
|
## 问题描述
|
|||
|
|
|
|||
|
|
- OPTIONS 请求成功(200 OK)
|
|||
|
|
- POST 请求失败(ERR_CONNECTION_RESET)
|
|||
|
|
|
|||
|
|
这表明 CORS 配置已经生效,但是实际处理请求时服务崩溃了。
|
|||
|
|
|
|||
|
|
## 可能的原因和解决方案
|
|||
|
|
|
|||
|
|
### 1. 检查 Neo4j 数据库
|
|||
|
|
|
|||
|
|
graph-rag-agent 需要 Neo4j 数据库运行:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 检查 Neo4j 是否运行
|
|||
|
|
sudo systemctl status neo4j
|
|||
|
|
|
|||
|
|
# 如果未运行,启动它
|
|||
|
|
sudo systemctl start neo4j
|
|||
|
|
|
|||
|
|
# 或使用 Docker
|
|||
|
|
docker ps | grep neo4j
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 2. 检查 graph-rag-agent 的配置
|
|||
|
|
|
|||
|
|
确保配置文件存在:
|
|||
|
|
```bash
|
|||
|
|
cd ~/graph-rag-agent
|
|||
|
|
ls -la config/
|
|||
|
|
# 应该有 settings.py 或类似的配置文件
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 3. 查看 graph-rag-agent 的错误日志
|
|||
|
|
|
|||
|
|
在运行 graph-rag-agent 的终端中查看错误信息。常见错误:
|
|||
|
|
|
|||
|
|
- **Neo4j 连接失败**:
|
|||
|
|
```
|
|||
|
|
neo4j.exceptions.ServiceUnavailable: Unable to connect to localhost:7687
|
|||
|
|
```
|
|||
|
|
解决:启动 Neo4j 数据库
|
|||
|
|
|
|||
|
|
- **缺少 embedding 模型**:
|
|||
|
|
```
|
|||
|
|
FileNotFoundError: [Errno 2] No such file or directory: 'path/to/embeddings'
|
|||
|
|
```
|
|||
|
|
解决:确保已下载并配置了 embedding 模型
|
|||
|
|
|
|||
|
|
- **Agent 初始化失败**:
|
|||
|
|
```
|
|||
|
|
KeyError: 'naive_rag_agent'
|
|||
|
|
```
|
|||
|
|
解决:检查 agent 配置和初始化
|
|||
|
|
|
|||
|
|
### 4. 简化测试
|
|||
|
|
|
|||
|
|
创建一个最小测试来确认服务基本功能:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 测试根路径
|
|||
|
|
curl http://localhost:8000/
|
|||
|
|
|
|||
|
|
# 测试文档
|
|||
|
|
curl http://localhost:8000/docs
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 5. 环境变量检查
|
|||
|
|
|
|||
|
|
graph-rag-agent 可能需要某些环境变量:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 检查是否需要 OpenAI API Key
|
|||
|
|
export OPENAI_API_KEY="your-key-here"
|
|||
|
|
|
|||
|
|
# 检查 Neo4j 连接配置
|
|||
|
|
export NEO4J_URI="bolt://localhost:7687"
|
|||
|
|
export NEO4J_USER="neo4j"
|
|||
|
|
export NEO4J_PASSWORD="your-password"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 6. 依赖检查
|
|||
|
|
|
|||
|
|
确保所有依赖都已安装:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd ~/graph-rag-agent
|
|||
|
|
pip install -r requirements.txt
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 7. 使用调试模式启动
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd ~/graph-rag-agent
|
|||
|
|
python -m uvicorn server.main:app --reload --log-level debug
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 临时解决方案
|
|||
|
|
|
|||
|
|
如果上述方法都不能解决问题,可以:
|
|||
|
|
|
|||
|
|
1. **使用模拟响应**:在前端创建一个模拟的响应来测试前端功能
|
|||
|
|
2. **检查 graph-rag-agent 的 README**:查看是否有特殊的启动要求
|
|||
|
|
3. **查看 graph-rag-agent 的测试代码**:了解正确的使用方式
|
|||
|
|
|
|||
|
|
## 测试命令
|
|||
|
|
|
|||
|
|
使用提供的测试脚本:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd ~/yundage-backserver-test
|
|||
|
|
./test-curl.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
观察输出,特别是错误信息。
|