32 lines
877 B
Markdown
32 lines
877 B
Markdown
# 后端服务
|
||
|
||
Node.js + Express + TypeScript + Mongoose + OpenAI 示例。
|
||
|
||
## 环境变量
|
||
复制 `.env.example` 为 `.env` 并填写:
|
||
|
||
```
|
||
PORT=3000
|
||
MONGODB_URI=mongodb://localhost:27017/multi_llm_chat
|
||
OPENAI_API_KEY=sk-...
|
||
# 可选 OpenAI base (代理): OPENAI_BASE_URL=https://api.openai.com
|
||
DEEPSEEK_API_KEY=sk-deepseek...
|
||
DEEPSEEK_BASE_URL=https://api.deepseek.com
|
||
```
|
||
|
||
## 运行
|
||
```bash
|
||
npm install
|
||
npm run dev
|
||
```
|
||
|
||
## 接口
|
||
- POST /api/chat { modelId, messages } => { text }
|
||
- POST /api/chat/stream (SSE) data: <chunk> 直到 data: [DONE]
|
||
- POST /api/conversations 保存对话
|
||
- GET /api/conversations/:id 读取对话
|
||
- GET /api/health 健康检查
|
||
|
||
## 说明
|
||
已接入 OpenAI 与 DeepSeek(DeepSeek 通过 model 名包含 "deepseek" 自动匹配,使用 OpenAI 协议 /v1/chat/completions)。可继续在 `llmService.ts` 中扩展更多 provider 逻辑。
|