SDK とフレームワーク
NezhaGate は OpenAI 互換 API と Anthropic API の両方を提供しているため、公式 SDK は新しいベース URL とキーを設定するだけで使えます。
2 つのベース URL
| プロトコル | Base URL | 用途 |
|---|---|---|
| OpenAI | https://nezhagate.com/v1 | すべての対話モデル、および画像・動画のエンドポイント |
| Anthropic | https://nezhagate.com/anthropic | Claude モデル(Anthropic SDK が自動で /v1/messages を付け加えます) |
サンプルコードは NEZHAGATE_API_KEY 環境変数からキーを読み取ります。キーをコードに直接書かないでください。
OpenAI SDK
import os
from openai import OpenAI
client = OpenAI(base_url="https://nezhagate.com/v1", api_key=os.environ["NEZHAGATE_API_KEY"])
r = client.chat.completions.create(
model="gpt-5.5",
messages=[{"role": "user", "content": "Hello"}],
)
print(r.choices[0].message.content)OpenAI SDK は OPENAI_BASE_URL と OPENAI_API_KEY の環境変数も読み取ります。client.responses.create(...) は Responses API を呼び出すもので、GPT モデルだけに対応しています。
Anthropic SDK
import os
from anthropic import Anthropic
client = Anthropic(base_url="https://nezhagate.com/anthropic", api_key=os.environ["NEZHAGATE_API_KEY"])
m = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello"}],
)
print(next(b.text for b in m.content if b.type == "text"))base_url は /v1 を付けずに /anthropic までにしてください。ANTHROPIC_BASE_URL と ANTHROPIC_API_KEY の環境変数も使えます。
LangChain
import os
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(
model="gpt-5.5",
base_url="https://nezhagate.com/v1",
api_key=os.environ["NEZHAGATE_API_KEY"],
use_responses_api=False,
stream_usage=True,
)
print(llm.invoke("Hello").content)LangChain は、一部の GPT モデルや特定のパラメータを使ったリクエストを、自動で Responses API に切り替えることがあります。use_responses_api=False(JavaScript では useResponsesApi: false)にすると、対話エンドポイントのままになります。カスタムの base_url を設定している場合、ストリーミングで使用量を受け取るには stream_usage=True を指定する必要があります。
Vercel AI SDK
import { createOpenAI } from "@ai-sdk/openai";
import { generateText } from "ai";
const gw = createOpenAI({ baseURL: "https://nezhagate.com/v1", apiKey: process.env.NEZHAGATE_API_KEY });
const { text } = await generateText({ model: gw.chat("gpt-5.5"), prompt: "Hello" });
console.log(text);AI SDK 5 以降、gw("model-id") は Responses API を使います。gw.chat("model-id") は対話エンドポイントを使い、すべてのモデルで動きます。@ai-sdk/anthropic を使う場合は、baseURL を https://nezhagate.com/anthropic/v1(/v1 を含む)に設定してください。
よくあるエラー
base_url に /v1 が付いていません。https://nezhagate.com/v1 としてください。
base_url が /v1 で終わっているため、リクエストが /anthropic/v1/v1/messages に送られてしまいます。/anthropic までにしてください。
フレームワークが Responses API に切り替えてしまった可能性があります。このエンドポイントは GPT モデルだけに対応しています。LangChain では use_responses_api=False を設定し、Vercel AI SDK では gw.chat(...) を使ってください。