82 lines
1.8 KiB
Markdown
82 lines
1.8 KiB
Markdown
# AI Provider Service
|
|
|
|
`aiprovider` 是独立的模型适配服务,负责把项目内部的分析请求转发到具体的大模型供应商。
|
|
|
|
完整使用说明见:
|
|
|
|
- [docs/aiprovider.md](/home/ray/dev/linkong/planet/docs/aiprovider.md)
|
|
|
|
当前支持:
|
|
|
|
- `AI_PROVIDER=openai`
|
|
- `AI_PROVIDER=openai_compatible`
|
|
- `AI_PROVIDER=anthropic`
|
|
- `AI_PROVIDER=anthropic_compatible`
|
|
- `AI_PROVIDER=claude_compatible`
|
|
- `AI_PROVIDER=ollama`
|
|
|
|
典型配置:
|
|
|
|
```env
|
|
AI_PROVIDER=openai_compatible
|
|
AI_BASE_URL=https://api.openai.com/v1
|
|
AI_API_KEY=your_api_key
|
|
AI_MODEL=gpt-4o-mini
|
|
AI_TIMEOUT_SECONDS=60
|
|
AI_PROVIDER_SERVICE_TOKEN=change_me
|
|
```
|
|
|
|
Claude 兼容供应商示例:
|
|
|
|
```env
|
|
AI_PROVIDER=claude_compatible
|
|
AI_BASE_URL=https://your-claude-compatible-endpoint.example.com
|
|
AI_API_KEY=your_api_key
|
|
AI_MODEL=your-claude-compatible-model
|
|
AI_TIMEOUT_SECONDS=60
|
|
AI_MAX_TOKENS=1200
|
|
AI_ANTHROPIC_VERSION=2023-06-01
|
|
AI_PROVIDER_SERVICE_TOKEN=change_me
|
|
```
|
|
|
|
适用场景:
|
|
|
|
- Anthropic 官方 Claude API
|
|
- Claude 兼容网关
|
|
- MiniMax 等提供 Claude/Anthropic 风格消息接口的服务
|
|
|
|
Ollama 原生示例:
|
|
|
|
```env
|
|
AI_PROVIDER=ollama
|
|
AI_BASE_URL=http://127.0.0.1:11434
|
|
AI_API_KEY=
|
|
AI_MODEL=qwen2.5:7b
|
|
AI_TIMEOUT_SECONDS=60
|
|
AI_PROVIDER_SERVICE_TOKEN=change_me
|
|
```
|
|
|
|
本地模型接入建议:
|
|
|
|
- `vLLM`、`LM Studio`、`One API`:优先使用 `openai_compatible`
|
|
- `MiniMax`、Claude 兼容网关:使用 `claude_compatible`
|
|
- `Ollama`:可直接使用 `ollama`
|
|
|
|
启动模板:
|
|
|
|
- `aiprovider/.env.example`
|
|
- `docker-compose.local-model.yml`
|
|
|
|
跨服务调用补充:
|
|
|
|
- 业务服务优先调用主后端 `/api/v1/ai/...`
|
|
- 直接调用 `aiprovider` 时使用 `X-Provider-Token`
|
|
- 支持 `X-Request-ID` 透传
|
|
- 内置轻量重试,适合跨机器 HTTP RPC 场景
|
|
|
|
接口:
|
|
|
|
- `GET /health`
|
|
- `GET /v1/provider/status`
|
|
- `POST /v1/analyze`
|