メインコンテンツへスキップ
POST
/
v1
/
messages
curl --request POST \
  --url https://direct.evolink.ai/v1/messages \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "glm-5.2",
  "max_tokens": 1024,
  "messages": [
    {
      "role": "user",
      "content": "こんにちは、世界"
    }
  ]
}
'
{
  "id": "msg_0842a705-9d0b-4eaa-b12d-09a4106326c5",
  "type": "message",
  "role": "assistant",
  "model": "glm-5.2",
  "content": [
    {
      "type": "thinking",
      "thinking": "ユーザーは一語で挨拶するよう求めているので、\"Hi\" と答えればよい。",
      "signature": ""
    },
    {
      "type": "text",
      "text": "Hi."
    }
  ],
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 18,
    "output_tokens": 101,
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0,
    "prompt_tokens_details": {
      "cached_tokens": 0
    }
  }
}
BaseURL:デフォルトの BaseURL は https://direct.evolink.ai で、テキストモデルへの対応が優れており、長時間接続をサポートします。https://api.evolink.ai はマルチモーダルサービスの主力エンドポイントで、テキストモデルに対しては代替アドレスとして使用されます。

承認

Authorization
string
header
必須

##すべての API は Bearer Token 認証が必要です##

API キーの取得:

API キー管理ページにアクセスして API キーを取得してください

リクエストヘッダーに追加:

Authorization: Bearer YOUR_API_KEY

備考:EvoLink は /v1/messages に対して一律で Bearer Token 認証を採用しています。

ボディ

application/json
model
enum<string>
必須

呼び出すモデル

利用可能なオプション:
glm-5.2
:

"glm-5.2"

messages
object[]
必須

対話メッセージのリスト。ターンごとに user / assistant が交互になります

説明

  • 少なくとも 1 件のメッセージを含みます
  • 最後のメッセージは通常 role=user です
  • マルチターンの文脈に対応し、モデルは過去のメッセージを参照します
Minimum array length: 1
max_tokens
integer

生成内容の長さの上限(Token 数)を指定します

説明

  • thinking が生成する token もこの上限に含まれます
  • 上限に達すると内容が切り詰められ、レスポンスは stop_reason=max_tokens になります
必須範囲: x >= 1
:

1024

system

システムプロンプト。AI の役割と振る舞いを設定するために使用します

説明

  • 文字列またはコンテンツブロック配列に対応します
  • トップレベルの system フィールドで渡します(messages には入れないでください)
  • モデルは system の制約に従います
  • ⚠️ 長すぎる system は切り詰められる可能性があります:長い文脈が必要な場合は messages に入れ、すべてを system に詰め込まないでください
:

"You are a helpful assistant."

temperature
number

サンプリング温度

説明

  • 値が高いほど出力が発散的になり、低いほど確定的になります
  • 推奨範囲 [0, 1]
必須範囲: 0 <= x <= 1
:

1

top_p
number

核サンプリングのしきい値

説明

  • 範囲 [0, 1]
  • temperature と top_p を同時に調整しないことを推奨します
必須範囲: 0 <= x <= 1
:

0.9

top_k
integer

確率が最も高い K 個の token のみからサンプリングします(Anthropic 固有のパラメータ)

説明

  • 値が小さいほど出力が確定的になり、大きいほど候補が多様になります
必須範囲: x >= 0
:

10

stop_sequences
string[]

カスタム停止シーケンス:生成がいずれかの文字列にヒットすると停止します

説明

  • ヒットすると切り詰められ、ヒット箇所より前の内容は正常に返却されます
  • ⚠️ 注意:停止シーケンスにヒットした場合、GLM-5.2 の stop_reasonend_turn を返し(Anthropic 標準の stop_sequence ではなく)、レスポンスにも stop_sequence フィールドは含まれません。クライアントが stop_reason=="stop_sequence" でヒットを判定している場合は、特別な処理が必要です
:
["\n\n"]
stream
boolean
デフォルト:false

SSE でストリーミング返却するかどうか

  • true:Server-Sent Events でストリーミング返却します(標準的な Anthropic イベントシーケンス:message_start / content_block_start / content_block_delta / message_delta / message_stop)
  • false:完全なレスポンスを生成してから一括で返します(デフォルト)
:

false

thinking
object

深い思考を制御します

説明

  • GLM-5.2 は推論モデルであり、このフィールドを渡さない場合はデフォルトで思考が有効です
  • 有効な場合、レスポンスの content 配列に type="thinking" の推論過程 block が現れます(output token として課金され、signature は空文字列になることがあります)
  • {"type":"disabled"} を渡すと思考を無効化でき、output token を大幅に削減できます
  • ⚠️ type の二値スイッチのみ有効budget_tokenseffort などの思考予算 / レベルのパラメータは効果がなく(無視されます)、思考量を細かく制御することはできません
tools
object[]

ツール定義のリスト

説明

  • Anthropic の tool 定義仕様に従います
  • input_schema は JSON Schema オブジェクトを使用します
  • モデルは標準的な tool_use block を返し、stop_reason=tool_use になります
tool_choice
object

ツール選択戦略

metadata
object

リクエストのメタデータ

レスポンス

メッセージオブジェクト

Anthropic スタイルのメッセージレスポンス

id
string

メッセージの一意の ID(形式:msg_<uuid>

type
enum<string>

レスポンスオブジェクトの種類

利用可能なオプション:
message
role
enum<string>
利用可能なオプション:
assistant
model
string

実際に使用されたモデル

:

"glm-5.2"

content
object[]

レスポンスのコンテンツブロックのリスト

含まれる可能性のある block type

  • thinking:推論過程(思考が有効な場合、デフォルトで有効)
  • text:最終的な回答テキスト
  • tool_use:モデルが発起したツール呼び出し
stop_reason
enum<string>

停止理由

  • end_turn:自然終了(⚠️ stop_sequences にヒットした場合もこの値を返します)
  • max_tokens:max_tokens の上限に到達
  • tool_use:モデルがツール呼び出しをトリガー
利用可能なオプション:
end_turn,
max_tokens,
tool_use
usage
object

Token 使用統計(Anthropic 仕様)