mirror of
https://github.com/DayuanJiang/next-ai-draw-io.git
synced 2026-10-13 04:59:51 +08:00
feat(providers): an OpenAI-compatible preset for any vLLM, LM Studio or gateway URL
Step 8 of the provider refactor plan, a new provider made of one record. 'custom' runs on @ai-sdk/openai-compatible with <think> extraction, merges system messages (open-source chat templates reject several), has no default URL (so a key alone does not count as connected, and the chat endpoint is shown under the URL field) and lists models from its /models. Server side: CUSTOM_API_KEY and CUSTOM_BASE_URL, ADMIN_CUSTOM_* in the admin panel. env.example and the three provider docs gained a section; the picker count in the e2e test is 25 and a new e2e test walks through the preset. The behavior snapshot gained the new provider's 146 rows; its two 'No AI provider configured' rows list CUSTOM_API_KEY now.
This commit is contained in:
@@ -338,6 +338,18 @@ Optional custom endpoint (Token Plan subscribers should set their dedicated Base
|
||||
MIMO_BASE_URL=https://token-plan-cn.xiaomimimo.com/v1
|
||||
```
|
||||
|
||||
### Any OpenAI-compatible API (custom)
|
||||
|
||||
For a server not listed above (vLLM, LM Studio, LiteLLM, an API gateway), pick **OpenAI-compatible** in the settings and enter its base URL and a key; a server that ignores keys takes any non-empty value. Several system messages are merged into one, as open-source chat templates expect, and `<think>` reasoning is split from the reply.
|
||||
|
||||
```bash
|
||||
CUSTOM_API_KEY=your_api_key
|
||||
CUSTOM_BASE_URL=http://127.0.0.1:8000/v1
|
||||
AI_MODEL=your_model_id
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Auto-Detection
|
||||
|
||||
If you only configure **one** provider's API key, the system will automatically detect and use that provider. No need to set `AI_PROVIDER`.
|
||||
|
||||
Reference in New Issue
Block a user