Shannonインターフェースを読み込んでいます...
OpenAI と Anthropic 互換のAI API。関数呼び出し、Web検索、構造化出力に対応。
Shannon の OpenAI/Anthropic 互換 API でリリースするために必要なすべて。
https://us-central1-shannonai.cloudfunctions.net/v1/chat/completionsfunction calling と streaming に対応した Chat Completions API を利用します。
https://us-central1-shannonai.cloudfunctions.net/v1/messagestools と anthropic-version ヘッダーを使う Claude Messages 形式。
認証: Bearer <あなたのキー>または Claude 形式の呼び出しに X-API-Key + anthropic-version を使用します。
Public docs - Key required to callStreaming、function calling、構造化出力、Web 検索。
OpenAI / Anthropic API のドロップイン互換。tools、構造化出力、組み込み Web 検索をネイティブサポート。
OpenAI と Anthropic の SDK で動作。ベースURLを変更するだけ。
ツールを定義し、Shannon に呼び出させます。auto/forced/none をサポート。
出典付きのリアルタイムWeb検索。自動で利用可能。
JSONモードとJSON Schema強制で確実なデータ抽出。
関数実行の自動ループ。1リクエスト最大10回。
Server‑Sent Events によるリアルタイムトークンストリーミング。
3ステップで開始。Shannon は OpenAI と Anthropic のクライアントに対応します。
OpenAI 互換エンドポイントを使用します。
https://us-central1-shannonai.cloudfunctions.net/v1/chat/completionsAuthorization ヘッダーに Bearer 認証を使用します。
言語を選び、キーに差し替えます。
from openai import OpenAIclient = OpenAI(api_key="YOUR_API_KEY",base_url="https://us-central1-shannonai.cloudfunctions.net/v1")response = client.chat.completions.create(model="shannon-balanced-grpo",messages=[{"role": "system", "content": "You are a helpful assistant."},{"role": "user", "content": "Hello, Shannon!"}],max_tokens=1024)print(response.choices[0].message.content)
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1234567890,
"model": "shannon-balanced-grpo",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! I'm Shannon, your AI assistant. How can I help you today?"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 25,
"completion_tokens": 18,
"total_tokens": 43
}
}ブラウザで Shannon API を直接テストできます。リクエストを作成し、実行してリアルタイムの応答を確認してください。
Switch between Chat Completions, Responses, and Messages without changing pages. The request body, auth header, stream parser, and SDK snippets all follow the selected protocol.
Pick an endpoint, shape the payload, and run the request to inspect the live output.
{"model": "shannon-balanced-grpo","messages": [{"role": "system","content": "You are Shannon. Answer crisply, commercially, and with strong structure."},{"role": "user","content": "Outline a clean launch plan for a new AI API aimed at startup founders."}],"max_tokens": 1024,"temperature": 0.7,"stream": true}
すべての API リクエストには Shannon API キーによる認証が必要です。
Authorization: Bearer YOUR_API_KEY
X-API-Key: YOUR_API_KEYanthropic-version: 2023-06-01
Shannon は用途別に最適化された複数モデルを提供します。
shannon-balanced-grpoBalancedFast, efficient responses for everyday tasks
shannon-deep-dapoDeepAdvanced reasoning for complex problems
shannon-coder-1CoderOptimized for Claude Code CLI with call-based quota
Define tools that Shannon can call to perform actions or retrieve information.
from openai import OpenAIimport jsonclient = OpenAI(api_key="YOUR_API_KEY",base_url="https://us-central1-shannonai.cloudfunctions.net/v1")# Define available tools/functionstools = [{"type": "function","function": {"name": "get_weather","description": "Get current weather for a location","parameters": {"type": "object","properties": {"location": {"type": "string","description": "City name, e.g., 'Tokyo'"},"unit": {"type": "string","enum": ["celsius", "fahrenheit"]}},"required": ["location"]}}}]response = client.chat.completions.create(model="shannon-balanced-grpo",messages=[{"role": "user", "content": "What's the weather in Tokyo?"}],tools=tools,tool_choice="auto")# Check if model wants to call a functionif response.choices[0].message.tool_calls:tool_call = response.choices[0].message.tool_calls[0]print(f"Function: {tool_call.function.name}")print(f"Arguments: {tool_call.function.arguments}")
{
"id": "chatcmpl-xyz",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": null,
"tool_calls": [
{
"id": "call_abc123",
"type": "function",
"function": {
"name": "get_weather",
"arguments": "{\"location\": \"Tokyo\", \"unit\": \"celsius\"}"
}
}
]
},
"finish_reason": "tool_calls"
}
]
}Force Shannon to respond with valid JSON that matches your schema.
from openai import OpenAIclient = OpenAI(api_key="YOUR_API_KEY",base_url="https://us-central1-shannonai.cloudfunctions.net/v1")# Force JSON output with schemaresponse = client.chat.completions.create(model="shannon-balanced-grpo",messages=[{"role": "user", "content": "Extract: John Doe, 30 years old, engineer"}],response_format={"type": "json_schema","json_schema": {"name": "person_info","schema": {"type": "object","properties": {"name": {"type": "string"},"age": {"type": "integer"},"occupation": {"type": "string"}},"required": ["name", "age", "occupation"]}}})import jsondata = json.loads(response.choices[0].message.content)print(data) # {"name": "John Doe", "age": 30, "occupation": "engineer"}
Enable real-time token streaming with Server-Sent Events for responsive UIs.
from openai import OpenAIclient = OpenAI(api_key="YOUR_API_KEY",base_url="https://us-central1-shannonai.cloudfunctions.net/v1")# Enable streaming for real-time responsesstream = client.chat.completions.create(model="shannon-balanced-grpo",messages=[{"role": "user", "content": "Write a short poem about AI"}],stream=True)for chunk in stream:if chunk.choices[0].delta.content:print(chunk.choices[0].delta.content, end="", flush=True)
Shannon includes a built-in web_search function that's automatically available.
from openai import OpenAIclient = OpenAI(api_key="YOUR_API_KEY",base_url="https://us-central1-shannonai.cloudfunctions.net/v1")# Web search is automatically available!# Shannon will use it when needed for current informationresponse = client.chat.completions.create(model="shannon-balanced-grpo",messages=[{"role": "user", "content": "What are the latest AI news today?"}],# Optionally, explicitly define web_search tooltools=[{"type": "function","function": {"name": "web_search","description": "Search the web for current information","parameters": {"type": "object","properties": {"query": {"type": "string", "description": "Search query"}},"required": ["query"]}}}])print(response.choices[0].message.content)# Response includes sources and citations
Shannon は Anthropic の Messages API 形式にも対応しています。
https://us-central1-shannonai.cloudfunctions.net/v1/messagesimport anthropicclient = anthropic.Anthropic(api_key="YOUR_API_KEY",base_url="https://us-central1-shannonai.cloudfunctions.net/messages")response = client.messages.create(model="shannon-balanced-grpo",max_tokens=1024,messages=[{"role": "user", "content": "Hello, Shannon!"}],# Tool use (Anthropic format)tools=[{"name": "web_search","description": "Search the web","input_schema": {"type": "object","properties": {"query": {"type": "string"}},"required": ["query"]}}])print(response.content[0].text)
Use any OpenAI or Anthropic SDK - just change the base URL.
Shannon は標準的な HTTP ステータスコードを使用し、詳細なエラーメッセージを返します。
{
"error": {
"message": "Invalid API key provided",
"type": "authentication_error",
"code": "invalid_api_key"
}
}Recent updates and improvements to the Shannon API.
Get your API key and start building with Shannon AI today.