APIリファレンス
テキストチャットリクエストの作成
Content-Type:
application/json
リクエストパラメータ
Authorization
- タイプ
string
- 位置
header
- 必須はい
- 説明認証には次の形式を使用してください:
Bearer <your api key>
(iFlow公式サイトにログインしてAPI KEYを取得してください)。
LLMモデル
パラメータ名 | タイプ | 必須 | デフォルト | 説明 |
---|---|---|---|---|
messages | object[] | はい | - | 現在の会話を構成するメッセージのリスト。 |
messages.content | string | はい | 2025年中国の大規模言語モデル業界はどのような機会と課題に直面するでしょうか? | メッセージの内容。 |
messages.role | enum<string> | はい | user | メッセージ作成者の役割。 可能な値:user , assistant , system |
model | enum<string> | はい | deepseek-r1 | 対応するモデル名。 サービス品質をより向上させるため、当社が提供するモデルに対して定期的に変更を行う場合があります。これには、モデルのオンライン/オフライン調整やモデルサービス機能の調整などを含みますが、これらに限定されません。可能であれば、告知やメッセージプッシュなどの適切な手段で通知します。 サポートされているモデルについては、クイックスタートページをご参照ください。 |
frequency_penalty | number | いいえ | 0.5 | 生成されたトークンの頻度ペナルティを調整して、繰り返しを制御します。 |
max_tokens | integer | いいえ | 512 | 生成するトークンの最大数。 値の範囲:1 < x < 8192 |
n | integer | いいえ | 1 | 返される生成結果の数。 |
response_format | object | いいえ | - | モデル出力形式を指定するオブジェクト。 |
response_format.type | string | いいえ | - | レスポンス形式のタイプ。 |
stop | string[] | null | いいえ | - |
stream | boolean | いいえ | false | true に設定すると、トークンはサーバー送信イベント(SSE)として段階的に返されます。 |
temperature | number | いいえ | 0.7 | レスポンスのランダム性を制御します。値が低いほど出力が確定的になり、値が高いほど出力がランダムになります。 |
tools | object[] | いいえ | - | モデルが呼び出す可能性のあるツールのリスト。現在、ツールとして関数のみがサポートされています。このパラメータを使用して、モデルがJSON入力を生成する可能性のある関数のリストを提供します。最大128個の関数をサポートします。 |
tools.function | object | いいえ | - | 関数オブジェクト。 |
tools.function.name | string | いいえ | - | 呼び出す関数の名前。英字、数字、アンダースコア、またはハイフンで構成され、最大長は64です。 |
tools.function.description | string | いいえ | - | 関数の説明。モデルがいつおよびどのように関数を呼び出すかを判断するために使用されます。 |
tools.function.parameters | object | いいえ | - | 関数が受け入れるパラメータ。JSON Schemaオブジェクトとして記述されます。パラメータが指定されていない場合、空のパラメータリストを持つ関数が定義されます。 |
tools.function.strict | boolean | null | いいえ | false |
tools.type | enum<string> | いいえ | function | ツールのタイプ。現在function のみをサポートしています。 |
top_k | number | いいえ | 50 | トークン選択範囲を上位k候補に制限します。 |
top_p | number | いいえ | 0.7 | 核サンプリングパラメータ。累積確率に基づいて各予測トークンの選択範囲を動的に調整するために使用されます。 |
リクエスト例
- CURL
- Python
- Javascript
- Java
curl --request POST \
--url https://apis.iflow.cn/v1/chat/completions \
--header 'Authorization: Bearer <iflow API KEY>' \
--header 'Content-Type: application/json' \
--data '{
"model": "deepseek-r1",
"messages": [
{
"role": "user",
"content": "2025年中国の大規模言語モデル業界はどのような機会と課題に直面するでしょうか?"
}
],
"stream": false,
"max_tokens": 512,
"stop": [
"null"
],
"temperature": 0.7,
"top_p": 0.7,
"top_k": 50,
"frequency_penalty": 0.5,
"n": 1,
"response_format": {
"type": "text"
},
"tools": [
{
"type": "function",
"function": {
"description": "<string>",
"name": "<string>",
"parameters": {},
"strict": false
}
}
]
}'
import requests
url = "https://apis.iflow.cn/v1/chat/completions"
payload = {
"model": "deepseek-r1",
"messages": [
{
"role": "user",
"content": "2025年中国の大規模言語モデル業界はどのような機会と課題に直面するでしょうか?"
}
],
"stream": False,
"max_tokens": 512,
"stop": ["null"],
"temperature": 0.7,
"top_p": 0.7,
"top_k": 50,
"frequency_penalty": 0.5,
"n": 1,
"response_format": {"type": "text"},
"tools": [
{
"type": "function",
"function": {
"description": "<string>",
"name": "<string>",
"parameters": {},
"strict": False
}
}
]
}
headers = {
"Authorization": "Bearer <iFlow API KEY>",
"Content-Type": "application/json"
}
response = requests.request("POST", url, json=payload, headers=headers)
print(response.text)
const url = "https://apis.iflow.cn/v1/chat/completions";
const payload = {
"model": "deepseek-r1",
"messages": [
{
"role": "user",
"content": "2025年中国の大規模言語モデル業界はどのような機会と課題に直面するでしょうか?"
}
],
"stream": false,
"max_tokens": 512,
"stop": ["null"],
"temperature": 0.7,
"top_p": 0.7,
"top_k": 50,
"frequency_penalty": 0.5,
"n": 1,
"response_format": {"type": "text"},
"tools": [
{
"type": "function",
"function": {
"description": "<string>",
"name": "<string>",
"parameters": {},
"strict": false
}
}
]
};
const headers = {
"Authorization": "Bearer <iFlow API KEY>",
"Content-Type": "application/json"
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload)
})
.then(response => response.json())
.then(data => console.log(data));
import com.fasterxml.jackson.databind.ObjectMapper;
import java.util.*;
// メッセージオブジェクトの構築
Map<String, Object> message = new HashMap<>();
message.put("role", "user");
message.put("content", "2025年中国の大規模言語モデル業界はどのような機会と課題に直面するでしょうか?");
// ツール関数オブジェクトの構築
Map<String, Object> function = new HashMap<>();
function.put("description", "<string>");
function.put("name", "<string>");
function.put("parameters", new HashMap<>());
function.put("strict", false);
Map<String, Object> tool = new HashMap<>();
tool.put("type", "function");
tool.put("function", function);
// レスポンス形式オブジェクトの構築
Map<String, Object> responseFormat = new HashMap<>();
responseFormat.put("type", "text");
// リクエストパラメータの構築
Map<String, Object> requestBody = new HashMap<>();
requestBody.put("model", "deepseek-r1");
requestBody.put("messages", Arrays.asList(message));
requestBody.put("stream", false);
requestBody.put("max_tokens", 512);
requestBody.put("stop", Arrays.asList("null"));
requestBody.put("temperature", 0.7);
requestBody.put("top_p", 0.7);
requestBody.put("top_k", 50);
requestBody.put("frequency_penalty", 0.5);
requestBody.put("n", 1);
requestBody.put("response_format", responseFormat);
requestBody.put("tools", Arrays.asList(tool));
// JSON文字列への変換
ObjectMapper mapper = new ObjectMapper();
String jsonBody = mapper.writeValueAsString(requestBody);
// リクエストの送信
HttpResponse<String> response = Unirest.post("https://apis.iflow.cn/v1/chat/completions")
.header("Authorization", "Bearer <iFlow API KEY>")
.header("Content-Type", "application/json")
.body(jsonBody)
.asString();
レスポンスパラメータ
- 非ストリーミング出力
- ストリーミング出力
パラメータ名 | タイプ | 必須 | デフォルト | 説明 |
---|---|---|---|---|
choices | object[] | はい | - | モデルによって生成された選択肢のリスト。 |
choices.finish_reason | enum<string> | いいえ | - | 生成完了の理由。 可能な値: - stop : 自然に完了。 - eos : 文末記号に到達。 - length : 最大トークン長制限に到達。 - tool_calls : ツール(関数など)が呼び出された。 |
choices.message | object | はい | - | モデルによって返されたメッセージオブジェクト。 |
created | integer | はい | - | レスポンスが生成されたタイムスタンプ。 |
id | string | はい | - | レスポンスの一意の識別子。 |
model | string | はい | - | 使用されたモデル名。 |
object | enum<string> | はい | - | レスポンスタイプ。 可能な値: - chat.completion : これはチャット完了レスポンスであることを示します。 |
tool_calls | object[] | いいえ | - | モデルによって生成されたツール呼び出し(関数呼び出しなど)。 |
tool_calls.function | object | いいえ | - | モデルによって呼び出された関数。 |
tool_calls.function.arguments | string | いいえ | - | 関数呼び出しの引数。モデルによってJSON形式で生成されます。 注:モデルによって生成されたJSONは無効である可能性があり、または関数定義に属さない引数を生成する可能性があります。関数を呼び出す前に、コードでこれらの引数を検証してください。 |
tool_calls.function.name | string | いいえ | - | 呼び出す関数の名前。 |
tool_calls.id | string | いいえ | - | ツール呼び出しの一意の識別子。 |
tool_calls.type | enum<string> | いいえ | - | ツールのタイプ。 現在function のみをサポートしています。 可能な値: - function : これは関数呼び出しであることを示します。 |
usage | object | はい | - | トークン使用状況の統計。 |
usage.completion_tokens | integer | はい | - | 完成部分で使用されたトークン数。 |
usage.prompt_tokens | integer | はい | - | プロンプト部分で使用されたトークン数。 |
usage.total_tokens | integer | はい | - | 使用されたトークンの総数。 |
パラメータ名 | タイプ | 必須 | デフォルト | 説明 |
---|---|---|---|---|
id | string | はい | - | チャット完了の一意の識別子。各チャンクは同じIDを持ちます。 |
choices | object[] | はい | - | モデルによって生成された選択肢のリスト。 |
choices.finish_reason | enum<string> | いいえ | - | 生成完了の理由。可能な値:stop (自然に完了)、eos (文末記号に到達)、length (最大トークン長制限に到達)、tool_calls (ツール(関数など)が呼び出された)。 |
choices.message | object | はい | - | モデルによって返されたメッセージオブジェクト。 |
created | integer | はい | - | レスポンスが生成されたタイムスタンプ(Unixタイムスタンプ、秒単位)。 |
model | string | はい | - | 使用されたモデル名。 |
object | enum<string> | はい | - | レスポンスタイプ。可能な値:chat.completion (これはチャット完了レスポンスであることを示します)。 |
tool_calls | object[] | いいえ | - | モデルによって生成されたツール呼び出し(関数呼び出しなど)。 |
tool_calls.function | object | いいえ | - | モデルによって呼び出された関数。 |
tool_calls.function.arguments | string | いいえ | - | 関数呼び出しの引数。モデルによってJSON形式で生成されます。注:モデルによって生成されたJSONは無効である可能性があり、または関数定義に属さない引数を生成する可能性があります。関数を呼び出す前に、コードでこれらの引数を検証してください。 |
tool_calls.function.name | string | いいえ | - | 呼び出す関数の名前。 |
tool_calls.id | string | いいえ | - | ツール呼び出しの一意の識別子。 |
tool_calls.type | enum<string> | いいえ | - | ツールのタイプ。現在function (これは関数呼び出しであることを示します)のみをサポートしています。 |
usage | object | はい | - | トークン使用状況の統計。 |
usage.completion_tokens | integer | はい | - | 完成部分で使用されたトークン数。 |
usage.prompt_tokens | integer | はい | - | プロンプト部分で使用されたトークン数。 |
usage.total_tokens | integer | はい | - | 使用されたトークンの総数(プロンプト+完成)。 |
delta | object | いいえ | - | ストリーミングモデルレスポンスによって生成されたチャット完了の差分。 |
choices.logprobs | object またはnull | いいえ | - | この選択肢の対数確率情報。 |
choices.logprobs.content | array またはnull | いいえ | - | 対数確率情報を持つメッセージコンテンツトークンのリスト。 |
choices.logprobs.refusal | array またはnull | いいえ | - | 拒否メッセージトークンとその対数確率情報のリスト。 |
choices.logprobs.refusal.token | string | いいえ | - | トークン。 |
choices.logprobs.refusal.logprob | number | いいえ | - | このトークンが最も可能性の高い20個のトークンのうちにある場合、その対数確率。それ以外の場合は値-9999.0 を使用して極めて不可能であることを示します。 |
choices.logprobs.refusal.bytes | array またはnull | いいえ | - | トークンを表すUTF-8バイト表現の整数リスト。複数のトークンバイト表現を組み合わせる必要がある場合に使用されます。 |
choices.logprobs.refusal.top_logprobs | array | いいえ | - | 現在のトークン位置で最も可能性の高いトークンとその対数確率のリスト。まれに、返される数が要求された数より少ない場合があります。 |
finish_reason | string またはnull | いいえ | - | モデルがトークンの生成を停止した理由。 |
index | integer | いいえ | - | 選択肢リスト内の選択肢のインデックス。 |
service_tier | string またはnull | いいえ | - | リクエストを処理するために使用されたサービスティア。 |
system_fingerprint | string | いいえ | - | モデルランタイムのバックエンド構成を表すフィンガープリント。seed リクエストパラメータと組み合わせて使用し、決定性に影響を与える可能性のあるバックエンドの変更を理解するために使用できます。 |
レスポンス情報
- 非ストリーミング
- ストリーミング
{
"id": "<string>",
"choices": [
{
"message": {
"role": "assistant",
"content": "<string>",
"reasoning_content": "<string>"
},
"finish_reason": "stop"
}
],
"tool_calls": [
{
"id": "<string>",
"type": "function",
"function": {
"name": "<string>",
"arguments": "<string>"
}
}
],
"usage": {
"prompt_tokens": 123,
"completion_tokens": 123,
"total_tokens": 123
},
"created": 123,
"model": "<string>",
"object": "chat.completion"
}
{"id":"<string>","object":"chat.completion.chunk","created":1694268190,"model":"<string>", "system_fingerprint": "fp_44709d6fcb", "choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
{"id":"<string>","object":"chat.completion.chunk","created":1694268190,"model":"<string>", "system_fingerprint": "fp_44709d6fcb", "choices":[{"index":0,"delta":{"content":"Hello"},"logprobs":null,"finish_reason":null}]}
....
{"id":"<string>","object":"chat.completion.chunk","created":1694268190,"model":"<string>", "system_fingerprint": "fp_44709d6fcb", "choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}