正在加载 Shannon 界面...
兼容 OpenAI 和 Anthropic 的 AI API,支持函数调用、网页搜索和结构化输出。
使用 Shannon 的 OpenAI/Anthropic 兼容 API 发版所需的一切。
https://us-central1-shannonai.cloudfunctions.net/v1/chat/completions使用支持 function calling 与 streaming 的 Chat Completions API。
https://us-central1-shannonai.cloudfunctions.net/v1/messagesClaude Messages 格式,支持 tools 与 anthropic-version 请求头。
授权:Bearer <你的密钥>或使用 X-API-Key + anthropic-version 发起 Claude 风格调用。
Public docs - Key required to callStreaming、function calling、结构化输出与网页搜索。
可直接替换 OpenAI 与 Anthropic API,原生支持 tools、结构化输出与内置网页搜索。
兼容 OpenAI 和 Anthropic SDK,只需更改基础 URL。
定义工具并让 Shannon 调用。支持 auto、forced 和 none 模式。
带来源引用的实时网页搜索,自动可用。
JSON 模式与 JSON Schema 强制,可靠的数据抽取。
自动函数执行循环,每次请求最多 10 次迭代。
通过 Server‑Sent Events 实现实时 token 流式传输。
三步即可开始。Shannon 兼容 OpenAI 与 Anthropic 客户端。
使用 OpenAI 兼容端点。
https://us-central1-shannonai.cloudfunctions.net/v1/chat/completions在 Authorization 头中使用 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.