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
|
||
```
|
||
|
||
观察输出,特别是错误信息。 |