feat(backend): add batch processing and review tasks modules

- Add Prisma migrations for batch processing tables
- Add Prisma migrations for review tasks tables
- Add seed data for testing
- Add prompt templates for review (editorial, methodology)
- Add CloseAI configuration guide
- Add database validation scripts
This commit is contained in:
2025-11-16 15:43:04 +08:00
parent 0c5310fb77
commit 5579ffa78e
9 changed files with 1611 additions and 0 deletions

183
backend/CLOSEAI-CONFIG.md Normal file
View File

@@ -0,0 +1,183 @@
# CloseAI配置更新指南
> **目标:** 将CloseAI配置添加到 `.env` 文件
> **预计时间:** 2分钟
---
## 🚀 方法一:自动更新(推荐)
`backend` 目录下运行PowerShell脚本
```powershell
cd AIclinicalresearch\backend
.\update-env-closeai.ps1
```
脚本会自动将CloseAI配置添加到您的 `.env` 文件末尾。
---
## ✏️ 方法二:手动更新
如果自动脚本不可用,请手动更新:
### 步骤1打开 .env 文件
用文本编辑器VS Code、记事本等打开
```
AIclinicalresearch\backend\.env
```
### 步骤2在文件末尾添加以下内容
```env
# ================================
# CloseAI配置代理OpenAI和Claude
# ================================
# CloseAI是一个API代理平台提供稳定的OpenAI和Claude访问
# 官网https://platform.openai-proxy.org
# 统一API Key同时用于OpenAI和Claude
CLOSEAI_API_KEY=sk-cu0iepbXYGGx2jc7BqP6ogtSWmP6fk918qV3RUdtGC3Edlpo
# OpenAI端点
CLOSEAI_OPENAI_BASE_URL=https://api.openai-proxy.org/v1
# Claude端点
CLOSEAI_CLAUDE_BASE_URL=https://api.openai-proxy.org/anthropic
# 支持的模型:
# - OpenAI: gpt-5-pro (最新), gpt-4-turbo-preview, gpt-3.5-turbo
# - Claude: claude-sonnet-4-5-20250929 (最新), claude-3-5-sonnet-20241022
```
### 步骤3保存文件
`Ctrl+S` 保存。
### 步骤4重启后端服务
```powershell
# 停止当前服务Ctrl+C
# 重新启动
cd backend
npm run dev
```
---
## ✅ 验证配置
启动后端后,检查日志中是否有以下内容:
```
✓ CloseAI API Key已配置
✓ 可使用GPT-5-Pro和Claude-4.5-Sonnet
```
---
## 📝 完整的 .env 配置参考
如果您想查看完整的 `.env` 配置模板,请参考:
- `docs/07-运维文档/02-环境变量配置模板.md`
---
## 🔧 配置说明
### CLOSEAI_API_KEY
**值:** `sk-cu0iepbXYGGx2jc7BqP6ogtSWmP6fk918qV3RUdtGC3Edlpo`
- 这是您的真实CloseAI API Key
- 一个Key可同时调用OpenAI和Claude
- 请妥善保管,不要泄露
### CLOSEAI_OPENAI_BASE_URL
**值:** `https://api.openai-proxy.org/v1`
- OpenAI API的代理端点
- 兼容OpenAI SDK标准接口
### CLOSEAI_CLAUDE_BASE_URL
**值:** `https://api.openai-proxy.org/anthropic`
- Claude API的代理端点
- 通过OpenAI SDK格式调用Claude
---
## 🎯 可用模型
添加配置后,您可以使用以下模型:
| 模型 | Model ID | 用途 |
|------|---------|------|
| GPT-5-Pro | `gpt-5-pro` | 最新OpenAI模型文献精准筛选 ⭐ |
| GPT-4-Turbo | `gpt-4-turbo-preview` | GPT-4高性能版本 |
| Claude-4.5-Sonnet | `claude-sonnet-4-5-20250929` | 最新Claude模型第三方仲裁 ⭐ |
| Claude-3.5-Sonnet | `claude-3-5-sonnet-20241022` | Claude稳定版本 |
---
## 💡 测试配置
配置完成后,可以使用以下代码测试:
```typescript
// backend/test-closeai.ts
import OpenAI from 'openai';
// 测试GPT-5
const gpt5Client = new OpenAI({
apiKey: 'sk-cu0iepbXYGGx2jc7BqP6ogtSWmP6fk918qV3RUdtGC3Edlpo',
baseURL: 'https://api.openai-proxy.org/v1',
});
const gpt5Response = await gpt5Client.chat.completions.create({
model: 'gpt-5-pro',
messages: [{ role: 'user', content: '你好,请简单介绍一下自己' }],
});
console.log('GPT-5:', gpt5Response.choices[0].message.content);
// 测试Claude-4.5
const claudeClient = new OpenAI({
apiKey: 'sk-cu0iepbXYGGx2jc7BqP6ogtSWmP6fk918qV3RUdtGC3Edlpo',
baseURL: 'https://api.openai-proxy.org/anthropic',
});
const claudeResponse = await claudeClient.chat.completions.create({
model: 'claude-sonnet-4-5-20250929',
messages: [{ role: 'user', content: '你好,请简单介绍一下自己' }],
});
console.log('Claude-4.5:', claudeResponse.choices[0].message.content);
```
---
## ⚠️ 注意事项
1. **不要提交到Git** `.env` 文件已在 `.gitignore` 中,确保不会提交
2. **API Key安全** 定期更换API Key避免泄露
3. **成本监控:** 定期检查CloseAI后台的使用量和费用
---
## 📚 相关文档
- [CloseAI集成指南](../docs/02-通用能力层/01-LLM大模型网关/03-CloseAI集成指南.md)
- [环境配置指南](../docs/07-运维文档/01-环境配置指南.md)
- [环境变量配置模板](../docs/07-运维文档/02-环境变量配置模板.md)
---
**更新完成后您就可以在ASL模块中使用4个LLM了** 🎉