143 lines
3.6 KiB
Markdown
143 lines
3.6 KiB
Markdown
# Yuanjing API Documentation
|
|
|
|
---
|
|
|
|
## LLM API
|
|
|
|
Base url: `https://token.opencomputing.cn/llmage/v1`
|
|
|
|
All endpoints require Bearer Token authentication.
|
|
|
|
---
|
|
|
|
## POST /v1/chat/completions
|
|
|
|
Text generation endpoint, OpenAI-compatible.
|
|
|
|
### Required Parameters
|
|
|
|
| Parameter | Type | Description |
|
|
|-----------|------|-------------|
|
|
| `model` | string | Model name, e.g. `"qwen3-max"` |
|
|
| `messages` or `prompt` | array / string | Conversation messages or text prompt |
|
|
|
|
### Optional Parameters
|
|
|
|
| Parameter | Type | Description |
|
|
|-----------|------|-------------|
|
|
| `catelogid` | string | Catalog type ID, default `"t2t"`, Chinese names supported |
|
|
| `stream` | boolean | Enable streaming output |
|
|
| `off_peak` | boolean | Use off-peak pricing |
|
|
| `transno` | string | Transaction ID (auto-generated if omitted) |
|
|
|
|
### Example Request
|
|
|
|
```json
|
|
{
|
|
"model": "qwen3-max",
|
|
"messages": [
|
|
{"role": "user", "content": "Hello"}
|
|
],
|
|
"stream": false
|
|
}
|
|
```
|
|
|
|
```bash
|
|
# Non-streaming
|
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \\n -H 'Authorization: Bearer ***' \\n -H 'Content-Type: application/json' \\n -d '{\\n \"model\": \"qwen3-max\",\\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello, introduce yourself\"}],\\n \"stream\": false\\n }'
|
|
|
|
# Streaming
|
|
curl -X POST 'https://token.opencomputing.cn/llmage/v1/chat/completions' \\n -H 'Authorization: Bearer ***' \\n -H 'Content-Type: application/json' \\n -d '{\\n \"model\": \"qwen3-max\",\\n \"messages\": [{\"role\": \"user\", \"content\": \"Write a poem about spring\"}],\\n \"stream\": true\\n }'
|
|
```
|
|
|
|
### Response Format
|
|
|
|
**Non-streaming:**
|
|
|
|
```json
|
|
{
|
|
"id": "luid_xxx",
|
|
"object": "chat.completion",
|
|
"model": "qwen3-max",
|
|
"choices": [{
|
|
"index": 0,
|
|
"message": {"role": "assistant", "content": "Hi there!"},
|
|
"finish_reason": "stop"
|
|
}],
|
|
"usage": {"prompt_tokens": 10, "completion_tokens": 5, "total_tokens": 15}
|
|
}
|
|
```
|
|
|
|
**Streaming (SSE):**
|
|
|
|
```
|
|
data: {"choices": [{"delta": {"content": "Hi"}, "index": 0}]}
|
|
data: {"choices": [{"delta": {"content": " there!"}, "index": 0}]}
|
|
data: [DONE]
|
|
```
|
|
|
|
### Error Responses
|
|
|
|
| Status | Description |
|
|
|--------|-------------|
|
|
| 400 | Missing required parameters or model not found |
|
|
| 403 | Not authenticated |
|
|
| 429 | Insufficient account balance |
|
|
|
|
---
|
|
|
|
## POST /v1/video/generations
|
|
|
|
Video generation endpoint.
|
|
|
|
### Required Parameters
|
|
|
|
| Parameter | Type | Description |
|
|
|-----------|------|-------------|
|
|
| `model` | string | Model name, e.g. `"keling-2.1"` |
|
|
| `catelogid` | string | Catalog type: `"t2v"` / `"i2v"` / `"r2v"` |
|
|
| `prompt` | string | Generation prompt |
|
|
|
|
### Optional Parameters
|
|
|
|
| Parameter | Type | Description |
|
|
|-----------|------|-------------|
|
|
| `image_url` | string | Reference image URL for I2V |
|
|
| `duration` | string | Video duration, e.g. `"5s"` |
|
|
| `resolution` | string | Resolution, e.g. `"1080p"` |
|
|
| `n` | integer | Number of generations |
|
|
| `transno` | string | Transaction ID |
|
|
|
|
### Example Request
|
|
|
|
```json
|
|
{
|
|
"model": "keling-2.1",
|
|
"catelogid": "t2v",
|
|
"prompt": "A beautiful sunset over the ocean",
|
|
"duration": "5s",
|
|
"resolution": "1080p"
|
|
}
|
|
```
|
|
|
|
### Response Format
|
|
|
|
Video generation is typically async:
|
|
|
|
```json
|
|
{
|
|
"id": "luid_xxx",
|
|
"object": "video.generation",
|
|
"model": "keling-2.1",
|
|
"status": "submitted",
|
|
"taskid": "task_xxx",
|
|
"created": 1716912000
|
|
}
|
|
```
|
|
|
|
Query task status via `/v1/tasks?taskid=xxx`.
|
|
|
|
---
|
|
|
|
For detailed model-specific parameters (Vidu, Seedance, Wan, Kling, Hailuo, HappyHorse), see the [Chinese documentation](/docs/api_doc_zh.md).
|