205 lines
8.4 KiB
Markdown
205 lines
8.4 KiB
Markdown
# 元境プラットフォーム API
|
||
|
||
元境(Yuanjing)プラットフォームは、下位システム向けに OpenAI インターフェースプロトコルと互換性のある API を提供します。API を有効にするには、以下の手順に従ってください:
|
||
* アカウント登録
|
||
* ログイン
|
||
* APIKEY の申請
|
||
* チャージ(入金)
|
||
|
||
上記の手順完了後、以下の例に従ってテキスト生成、テキストから動画(T2V)、画像から動画(I2V)、リファレンスから動画(R2V)の推論サービスを実装できます。
|
||
|
||
サポートされているモデルについては、「モデル広場(Model Square)」をご参照ください。
|
||
|
||
## APIKEY の申請
|
||
|
||
ユーザーは元境プラットフォーム(https://ai.opencomputing.cn)に携帯電話でログインし、「APIKEYの作成(创建APIKEY)」をクリックする必要があります。
|
||
|
||
情報を入力して送信すると、APIKEY の作成が完了します。
|
||
|
||
「apikeyをコピー(复制apikey)」をクリックし、ポップアップウィンドウに表示された APIKEY をコピーしてください。
|
||
|
||
## チャージ
|
||
ユーザーは元境プラットフォーム上でチャージを行う必要があります。現在、Alipay(支付宝)に対応しています。
|
||
|
||
## 現在の残高確認
|
||
|
||
* ユーザーログイン
|
||
* ユーザーメニューを呼び出す
|
||
* 「財務(财务)」をクリック
|
||
|
||
## API ベース URL
|
||
https://opencomputing.ai
|
||
|
||
## OpenAI 互換インターフェース
|
||
OpenAI と互換性のある一連の API を提供しています。
|
||
|
||
### テキスト生成
|
||
* パス: /llmage/v1/chat/completions
|
||
* メソッド: 'POST'
|
||
* ヘッダー
|
||
```
|
||
{
|
||
"Content-Type": "application/json",
|
||
"Authorization": "Bearer <your-apikey>" # 元境プラットフォームから申請したAPIKEY
|
||
}
|
||
```
|
||
* データ
|
||
{
|
||
"model": # モデル識別コード(プロバイダーから提供されたモデル名)
|
||
"prompt": # プロンプト(必須入力)
|
||
"sys_prompt" # システムプロンプト(任意)
|
||
"stream" # ストリーミング出力スイッチ
|
||
"..." # その他のパラメータ
|
||
}
|
||
|
||
* レスポンス
|
||
OpenAI プロトコルに準拠したストリーミングまたは非ストリーミングの結果を返します。
|
||
|
||
* ストリーミング:
|
||
```
|
||
./oc.curl 你是谁
|
||
data: {"id": "chatcmpl-2665dfd8-e05f-9d7f-adff-3c53c174a454", "object": "chat.completion.chunk", "created": 1775019761, "choices": [{"logprobs": null, "index": 0, "delta": {"content": "", "role": "assistant"}}], "model": "qwen3-max", "reasoning_content": null, "content": "", "finish": "0", "llmusageid": "K9_veNBxeqvrFfbGWXs0R"}
|
||
...
|
||
data: [DONE]
|
||
```
|
||
|
||
* 非ストリーミング
|
||
```
|
||
./oc.curl 你是谁
|
||
{"id": "chatcmpl-eea7abb9-24d5-9f70-b6f6-d7da4f22a8b8", "object": "chat.completion", "created": 1775011902, "choices": [{"finish_reason": "stop", "index": 0, "message": {"content": "我是通义千问...", "role": "assistant"}}], "model": "qwen3-max", "usage": {"total_tokens": 70}}
|
||
```
|
||
|
||
## テキストから動画 (Text-to-Video)
|
||
現在サポートされているモデル:
|
||
| モデルID | プロバイダー | モデル名 |
|
||
|--------|--------|--------|
|
||
| o5vfXYD5BURJWRTWpopE5 | Alibaba Cloud | happyhorse-1.0-t2v |
|
||
| YjjGgxO_Xma8PWsMjJvps | Doubao | doubao-seedance-2-0-260128 |
|
||
| TWay-xd0p0pkEX-_Kuhto | We Token AI | dreamina-seedance-2-0-260128(*), dreamina-seedance-2-0-fast-260128 |
|
||
| CrEMkFQfRCmbmopZsCqLj | Doubao | doubao-seedance-1-5-pro-251215 |
|
||
| u9HZyfDoqU6uKI6M1BTks | Tongyi Wanxiang | wan2.6-t2v |
|
||
| r0ill7L0s6PtBS8mkmg-7 | vidu | viduq3-pro |
|
||
|
||
### happyhorse-1.0-t2v アップロード要件
|
||
| フィールド名 (Name) | タイプ | 必須 | デフォルト値 | 説明 |
|
||
| :--- | :--- | :--- | :--- | :--- |
|
||
| llmid | モデル番号 | はい | - | - |
|
||
| model | モデル名 | いいえ | happyhorse-1.0-t2v | - |
|
||
| prompt | string | はい | - | プロンプト。生成したい動画の内容を記述します。 |
|
||
| resolution | string | いいえ | `720p` | 動画サイズ(解像度)。<br>選択肢:<br>`480p`, `720p`, `1080p` |
|
||
| ratio | string | いいえ | adaptive | アスペクト比。選択肢: adaptive, 16:9, 4:3, 1:1, 3:4, 9:16, 21:9 |
|
||
| duration | integer | いいえ | `5` | 動画の長さ(秒)。<br>選択肢: 整数 |
|
||
|
||
### seedance 2.0 アップロード要件
|
||
| フィールド名 (Name) | タイプ | 必須 | デフォルト値 | 説明 |
|
||
| :--- | :--- | :--- | :--- | :--- |
|
||
| llmid | モデル番号 | はい | - | - |
|
||
| model | モデル名 | いいえ | doubao-seedance-2-0-260128 | doubao-seedance-2-0-260128 または doubao-seedance-2-0-fast-260128 |
|
||
| prompt | string | はい | - | プロンプト。生成したい動画の内容を記述します。 |
|
||
| resolution | string | いいえ | `720p` | 動画解像度。<br>選択肢:<br>`480p`, `720p`, `1080p` |
|
||
| ratio | string | いいえ | adaptive | アスペクト比。 |
|
||
| duration | integer | いいえ | `5` | 動画の長さ(秒)。 |
|
||
|
||
### 万象 (Wanxiang) アップロード要件
|
||
| フィールド名 (Name) | タイプ | 必須 | デフォルト値 | 説明 |
|
||
| :--- | :--- | :--- | :--- | :--- |
|
||
| llmid | モデル番号 | はい | - | - |
|
||
| prompt | string | はい | - | プロンプト。生成したい動画の内容を記述します。 |
|
||
| negative_prompt | string | いいえ | (空) | ネガティブプロンプト。動画に含めたくない内容を記述します。 |
|
||
| size | string | いいえ | `1920*1080` | 動画サイズ。<br>選択肢:<br>`1280*720`, `1920*1080` 等 |
|
||
| duration | integer | いいえ | `15` | 動画の長さ(秒)。<br>選択肢: `5`, `10`, `15` |
|
||
|
||
### 例 (Example)
|
||
seedance を使用した例:
|
||
```
|
||
#!/usr/bin/env bash
|
||
curl -X POST https://opencomputing.ai/llmage/video \
|
||
-H "Content-Type: application/json" \
|
||
-H "Authorization: Bearer <your-apikey-from-opencomputing.ai" \
|
||
-d '{
|
||
"llmid": "CrEMkFQfRCmbmopZsCqLj",
|
||
"prompt": "小猫在抓老鼠",
|
||
"duration": 5,
|
||
"ratio": "16:9",
|
||
"resolution": "480p"
|
||
}'
|
||
```
|
||
|
||
## 画像から動画 (Image-to-Video)
|
||
### 快乐马 (Happy Horse) アップロード要件
|
||
最初のフレームからの動画生成のみサポートしています。
|
||
| フィールド名 (Name) | タイプ | 必須 | デフォルト値 | 説明 |
|
||
| :--- | :--- | :--- | :--- | :--- |
|
||
| image1_file | 画像ファイル | はい | - | 最初のフレーム画像。 |
|
||
| resolution | string | いいえ | `720p` | 解像度。`720P`, `1080P` |
|
||
|
||
例:
|
||
```
|
||
#!/usr/bin/env bash
|
||
curl -X POST https://opencomputing.ai/llmage/video \
|
||
-H "Authorization: Bearer <your-apikey>" \
|
||
-F "llmid=o5vfXYD5BURJWRTWpopE5" \
|
||
-F "prompt=一起来调科目三" \
|
||
-F "duration=15" \
|
||
-F "resolution=720P" \
|
||
-F "image1_file=@./02.jpg"
|
||
```
|
||
|
||
## リファレンスから動画 (Reference-to-Video)
|
||
### seedance 2.0 アップロード要件
|
||
| フィールド名 | タイプ | 必須 | デフォルト値 | 説明 |
|
||
| :--- | :--- | :--- | :--- | :--- |
|
||
| image_files | 配列 | はい | [] | リファレンス画像配列。 |
|
||
| video_files | 配列 | いいえ | [] | リファレンス動画配列。 |
|
||
|
||
## タスク送信
|
||
* パス: /llmage/video
|
||
* メソッド: POST
|
||
* ヘッダー
|
||
```
|
||
{
|
||
"Content-Type": "application/json",
|
||
"Authorization": "Bearer <your-apikey>" # 元境プラットフォームから申請したAPIKEY
|
||
}
|
||
```
|
||
|
||
* レスポンス
|
||
```
|
||
{
|
||
"taskid": # タスクID。後の実行結果照会に使用します。
|
||
"status": # 状態: SUCCEEDED, FAILED, CREATED, PENDING, RUNNING
|
||
}
|
||
```
|
||
|
||
## タスク状態の照会
|
||
* パス: /llmage/tasks
|
||
* メソッド: GET
|
||
* ヘッダー
|
||
```
|
||
{
|
||
"Content-Type": "application/json",
|
||
"Authorization": "Bearer <your-apikey>"
|
||
}
|
||
```
|
||
* パラメータ
|
||
```
|
||
{
|
||
"taskid": "936759404378734592"
|
||
}
|
||
```
|
||
* レスポンス
|
||
```
|
||
{
|
||
"status": # 状態
|
||
"usage": # status==SUCCEEDED時に有効。課金情報。
|
||
"image": # 動画カバーURL
|
||
"video": # 動画URL
|
||
}
|
||
```
|
||
|
||
## エラーメッセージ
|
||
|
||
* 401: {"error": "Invalid API Key"} (無効なAPIキー)
|
||
* 400: {"error": "Missing required parameter: prompt"} (必須パラメータ不足)
|
||
* 429: {"error": "Insufficient balance"} (残高不足)
|