知識ベースのセクション ▾

ツール

ツール

APIクイックスタート — curl, Python, TypeScript

JoinGonka Gatewayは、分散型ネットワークGonkaへのOpenAI + Anthropic互換APIを提供します。OpenAI API(/v1/chat/completions)用に書かれたコードはすべてGonkaで動作します。base_urlapi_keyを変更するだけです。Anthropic API(Claude Code)ツールは/v1/messagesを介して、プロキシなしで直接接続されます。

この記事では、最も人気のある3つのツール(curl(コマンドライン)、Python、TypeScript/Node.js(OpenAI形式))の準備ができたコード例を紹介します。Anthropic形式については、Claude Codeの指示を参照してください。

必要なもの:JoinGonka APIキー(jg-xxx形式)。gate.joingonka.ai/registerで10Mトークンのボーナスとともに無料で入手できます。

curl — ターミナルからのリクエスト

APIの動作を確認する最も速い方法は curl です。

通常のリクエスト:

curl https://gate.joingonka.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer jg-あなたのキー" \
  -d '{
    "model": "Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
    "messages": [
      {"role": "user", "content": "Gonkaとは何ですか?"}
    ]
  }'

ストリーミング (部分的な応答):

curl https://gate.joingonka.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer jg-あなたのキー" \
  -d '{
    "model": "Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
    "messages": [
      {"role": "user", "content": "Pythonで'hello world'を書いてください"}
    ],
    "stream": true
  }'

応答はJSON形式 (通常) またはServer-Sent Events (ストリーミング) で返されます。OpenAI APIと完全に互換性があります。

Python — openai SDK

公式のOpenAI Python SDK は、JoinGonka Gateway と変更なしで動作します。

pip install openai

通常のリクエスト:

from openai import OpenAI

client = OpenAI(
    base_url="https://gate.joingonka.ai/v1",
    api_key="jg-あなたのキー",
)

response = client.chat.completions.create(
    model="Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
    messages=[
        {"role": "user", "content": "ブロックチェーンを簡単な言葉で説明してください"}
    ],
)

print(response.choices[0].message.content)

ストリーミング:

stream = client.chat.completions.create(
    model="Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
    messages=[{"role": "user", "content": "Pythonでソートアルゴリズムを書いてください"}],
    stream=True,
)

for chunk in stream:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="")

ツール呼び出し:

import json

tools = [{
    "type": "function",
    "function": {
        "name": "get_weather",
        "description": "都市の天気を取得する",
        "parameters": {
            "type": "object",
            "properties": {
                "city": {"type": "string", "description": "都市名"}
            },
            "required": ["city"]
        }
    }
}]

response = client.chat.completions.create(
    model="Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
    messages=[{"role": "user", "content": "モスクワの天気はどうですか?"}],
    tools=tools,
)

tool_call = response.choices[0].message.tool_calls[0]
print(f"関数: {tool_call.function.name}")
print(f"引数: {tool_call.function.arguments}")

Qwen3-235B はネイティブなツール呼び出しをサポートしており、関数はテキスト応答を解析することなく正しく呼び出されます。

TypeScript/Node.js — openai SDK

インストール:

npm install openai

通常のリクエスト:

import OpenAI from 'openai';

const client = new OpenAI({
  baseURL: 'https://gate.joingonka.ai/v1',
  apiKey: 'jg-あなたのキー',
});

async function main() {
  const response = await client.chat.completions.create({
    model: 'Qwen/Qwen3-235B-A22B-Instruct-2507-FP8',
    messages: [
      { role: 'user', content: 'Express.jsサーバーを書いてください' },
    ],
  });

  console.log(response.choices[0].message.content);
}

main();

ストリーミング:

const stream = await client.chat.completions.create({
  model: 'Qwen/Qwen3-235B-A22B-Instruct-2507-FP8',
  messages: [{ role: 'user', content: 'async/await を説明してください' }],
  stream: true,
});

for await (const chunk of stream) {
  const content = chunk.choices[0]?.delta?.content || '';
  process.stdout.write(content);
}

ツール呼び出し:

const response = await client.chat.completions.create({
  model: 'Qwen/Qwen3-235B-A22B-Instruct-2507-FP8',
  messages: [{ role: 'user', content: '100 USDをEURに変換してください' }],
  tools: [{
    type: 'function',
    function: {
      name: 'convert_currency',
      description: '通貨換算',
      parameters: {
        type: 'object',
        properties: {
          amount: { type: 'number' },
          from: { type: 'string' },
          to: { type: 'string' },
        },
        required: ['amount', 'from', 'to'],
      },
    },
  }],
});

const toolCall = response.choices[0].message.tool_calls?.[0];
console.log(`関数: ${toolCall?.function.name}`);
console.log(`引数: ${toolCall?.function.arguments}`);

すべての例は公式のOpenAI SDKを使用しており、追加のライブラリは不要です。base_urlapi_key を置き換えるだけです。

サポートされているAPIパラメータ

JoinGonka Gatewayは、すべての標準的なOpenAI Chat Completions APIパラメーターをサポートしています。

パラメータータイプ説明
modelstringモデル: Qwen/Qwen3-235B-A22B-Instruct-2507-FP8
messagesarrayメッセージ履歴 (system, user, assistant)
streambooleanストリーミング生成 (SSE)。デフォルト: false
temperaturenumber応答の創造性 (0.0 — 2.0)
max_tokensinteger応答の最大長 (最大: 2048, デフォルト: 1024)
toolsarrayツール呼び出しのための関数定義
tool_choicestring/object関数呼び出し戦略

Qwen3-235Bモデルのパラメーター:コンテキストウィンドウは128Kトークン、最大応答は2048トークン。完全な仕様:HuggingFace。モデルリストはGET /v1/modelsで利用可能です。

2つのエンドポイント

  • OpenAI形式: POST https://gate.joingonka.ai/v1/chat/completions
  • Anthropic形式: POST https://gate.joingonka.ai/v1/messages

認証:Authorization: Bearer jg-あなたのキー (OpenAI) または x-api-key: jg-あなたのキー (Anthropic)

応答形式はOpenAIおよびAnthropicと完全に互換性があります。OpenAIまたはAnthropic APIをサポートするSDK、ライブラリ、またはフレームワークは、 модиケーションなしでJoinGonka Gatewayと動作します。Claude CodeはAnthropic形式を介して直接接続されます。

JoinGonka Gateway — OpenAI + Anthropic互換のAPIで$0.001/1Mトークン。curl、Python、TypeScript — 3行のコード。ストリーミング、ツール呼び出し、すべてのOpenAI + Anthropic APIパラメーター。Claude Codeは/v1/messagesを介して直接動作します。開始時に10Mの無料トークン。

もっと知りたいですか?

他のセクションを探索するか、Gonkaを今すぐ獲得し始めましょう。

10M無料トークンを入手 →