Drop-in vaihto
YhteensopivaToimii OpenAI:n ja Anthropic SDK:iden kanssa. Vaihda vain perus-URL-osoite.
Kaikki kielet ovat tasa-arvoisia. Valitse se, jota haluat selata.
OpenAI- ja Anthropic-yhteensopiva AI-sovellusliittymä, jossa on toimintokutsu, verkkohaku ja strukturoidut lähdöt.
Kaikki mitä tarvitset Shannonin OpenAI- ja Anthropic-yhteensopivan API:n kanssa.
https://api.shannon-ai.com/v1/chat/completions Käytä Chat Completions API:ta toimintokutsujen ja suoratoiston kanssa.
https://api.shannon-ai.com/v1/messages Claude Messages -muoto työkaluilla ja antrooppisen version otsikolla.
Valtuutus: Kantaja <oma-avaimesi> Tai X-API-Key antropisella versiolla Claude-tyylisiin puheluihin.
Julkiset asiakirjat - Avain vaaditaan soittamiseen Suoratoisto, toimintokutsu, strukturoidut lähdöt, verkkohaku.
Drop-in-korvaus OpenAI- ja Anthropic-sovellusliittymille, jossa on natiivi tuki työkaluille, strukturoidut tulosteet ja sisäänrakennettu verkkohaku.
Toimii OpenAI:n ja Anthropic SDK:iden kanssa. Vaihda vain perus-URL-osoite.
Määrittele työkalut, anna Shannonin kutsua niitä. Tukee automaattista, pakotettua ja ei mitään -tiloja.
Reaaliaikainen verkkohaku lähdeviittauksilla. Automaattisesti saatavilla.
JSON-tila ja JSON Schema-valvonta luotettavaa tietojen poimimista varten.
Automaattiset toimintojen suoritussilmukat. Jopa 10 iteraatiota per pyyntö.
Palvelimen lähettämät tapahtumat reaaliaikaista merkkien suoratoistoa varten.
Aloita kolmessa vaiheessa. Shannon peilaa OpenAI- ja Anthropic-asiakkaita.
Käytä OpenAI-yhteensopivaa päätepistettä.
https://api.shannon-ai.com/v1/chat/completions Käytä Valtuutus-otsikossa siirtotietodennusta.
Valitse kieli ja vaihda avaimesi.
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.shannon-ai.com/v1"
)
response = client.chat.completions.create(
model="shannon-1.6-lite",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello, Shannon!"}
],
max_tokens=1024
)
print(response.choices[0].message.content) import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.shannon-ai.com/v1'
});
const response = await client.chat.completions.create({
model: 'shannon-1.6-lite',
messages: [
{ role: 'system', content: 'You are a helpful assistant.' },
{ role: 'user', content: 'Hello, Shannon!' }
],
max_tokens: 1024
});
console.log(response.choices[0].message.content); package main
import (
"context"
"fmt"
openai "github.com/sashabaranov/go-openai"
)
func main() {
config := openai.DefaultConfig("YOUR_API_KEY")
config.BaseURL = "https://api.shannon-ai.com/v1"
client := openai.NewClientWithConfig(config)
resp, err := client.CreateChatCompletion(
context.Background(),
openai.ChatCompletionRequest{
Model: "shannon-1.6-lite",
Messages: []openai.ChatCompletionMessage{
{Role: "system", Content: "You are a helpful assistant."},
{Role: "user", Content: "Hello, Shannon!"},
},
MaxTokens: 1024,
},
)
if err != nil {
panic(err)
}
fmt.Println(resp.Choices[0].Message.Content)
} curl -X POST "https://api.shannon-ai.com/v1/chat/completions" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "shannon-1.6-lite",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello, Shannon!"}
],
"max_tokens": 1024
}' {
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1234567890,
"model": "Shannon 1.6 Lite",
"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
}
} Testaa Shannon API suoraan selaimessasi. Rakenna pyyntösi, suorita se ja katso vastaus reaaliajassa.
Switch across OpenAI Chat Completions, Responses, and Anthropic Messages without leaving the playground.
Run real requests, inspect raw JSON, and view stream events from the same operator console.
Signed-in users can pull their Shannon API key straight into the dedicated playground workspace.
/fi/docs/playground The playground now lives on its own route so the API docs stay Astro-rendered while the request builder remains an explicitly interactive client tool.
Kaikki API-pyynnöt vaativat todennuksen Shannon API -avaimella.
Authorization: Bearer YOUR_API_KEY X-API-Key: YOUR_API_KEY
anthropic-version: 2023-06-01 Shannon tarjoaa useita malleja, jotka on optimoitu erilaisiin käyttötarkoituksiin.
shannon-1.6-lite Shannon 1.6 Lite Nopeat ja tehokkaat vastaukset jokapäiväisiin tehtäviin
shannon-1.6-pro Shannon 1.6 Pro Kehittynyt perustelu monimutkaisiin ongelmiin
shannon-2-lite Shannon 2 Lite
shannon-2-pro Shannon 2 Pro
shannon-coder-1 Shannon Coder Optimoitu Claude Code CLI:lle puhelupohjaisella kiintiöllä
Määritä työkalut, joita Shannon voi käyttää toimintojen suorittamiseen tai tietojen hakemiseen.
from openai import OpenAI
import json
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.shannon-ai.com/v1"
)
# Define available tools/functions
tools = [
{
"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-1.6-lite",
messages=[{"role": "user", "content": "What's the weather in Tokyo?"}],
tools=tools,
tool_choice="auto"
)
# Check if model wants to call a function
if 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}") import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.shannon-ai.com/v1'
});
const tools = [
{
type: 'function',
function: {
name: 'get_weather',
description: 'Get current weather for a location',
parameters: {
type: 'object',
properties: {
location: { type: 'string', description: "City name" },
unit: { type: 'string', enum: ['celsius', 'fahrenheit'] }
},
required: ['location']
}
}
}
];
const response = await client.chat.completions.create({
model: 'shannon-1.6-lite',
messages: [{ role: 'user', content: "What's the weather in Tokyo?" }],
tools,
tool_choice: 'auto'
});
if (response.choices[0].message.tool_calls) {
const toolCall = response.choices[0].message.tool_calls[0];
console.log('Function:', toolCall.function.name);
console.log('Arguments:', toolCall.function.arguments);
} "auto" Malli päättää, kutsutaanko funktiota (oletus) "none" Poista tämän pyynnön kutsuminen käytöstä {"type": "function", "function": {"name": "..."}} Pakota tietty funktiokutsu {
"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"
}
]
} Pakota Shannon vastaamaan kelvollisella JSON-koodilla, joka vastaa malliasi.
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.shannon-ai.com/v1"
)
# Force JSON output with schema
response = client.chat.completions.create(
model="shannon-1.6-lite",
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 json
data = json.loads(response.choices[0].message.content)
print(data) # {"name": "John Doe", "age": 30, "occupation": "engineer"} import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.shannon-ai.com/v1'
});
const response = await client.chat.completions.create({
model: 'shannon-1.6-lite',
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']
}
}
}
});
const data = JSON.parse(response.choices[0].message.content);
console.log(data); // { name: "John Doe", age: 30, occupation: "engineer" } {"type": "json_object"} Pakota kelvollinen JSON -tulostus (ei tiettyä mallia) {"type": "json_schema", "json_schema": {...}} Pakota tulos, joka vastaa tarkkaa malliasi Ota reaaliaikainen tunnuksen suoratoisto käyttöön palvelimen lähettämien tapahtumien avulla reagoiville käyttöliittymille.
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.shannon-ai.com/v1"
)
# Enable streaming for real-time responses
stream = client.chat.completions.create(
model="shannon-1.6-lite",
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) import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.shannon-ai.com/v1'
});
// Enable streaming for real-time responses
const stream = await client.chat.completions.create({
model: 'shannon-1.6-lite',
messages: [
{ role: 'user', content: 'Write a short poem about AI' }
],
stream: true
});
for await (const chunk of stream) {
const content = chunk.choices[0]?.delta?.content;
if (content) process.stdout.write(content);
} Shannon sisältää sisäänrakennetun web_search-toiminnon, joka on automaattisesti käytettävissä.
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.shannon-ai.com/v1"
)
# Web search is automatically available!
# Shannon will use it when needed for current information
response = client.chat.completions.create(
model="shannon-1.6-lite",
messages=[
{"role": "user", "content": "What are the latest AI news today?"}
],
# Optionally, explicitly define web_search tool
tools=[{
"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 import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.shannon-ai.com/v1'
});
// Web search is automatically available!
// Shannon will use it when needed for current information
const response = await client.chat.completions.create({
model: 'shannon-1.6-lite',
messages: [
{ role: 'user', content: 'What are the latest AI news today?' }
],
// Optionally, explicitly define web_search tool
tools: [{
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']
}
}
}]
});
console.log(response.choices[0].message.content);
// Response includes sources and citations Shannon tukee myös Anthropic's Messages API -muotoa.
https://api.shannon-ai.com/v1/messages import anthropic
client = anthropic.Anthropic(
api_key="YOUR_API_KEY",
base_url="https://api.shannon-ai.com/messages"
)
response = client.messages.create(
model="shannon-1.6-lite",
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) import Anthropic from '@anthropic-ai/sdk';
const client = new Anthropic({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.shannon-ai.com/messages'
});
const response = await client.messages.create({
model: 'shannon-1.6-lite',
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']
}
}]
});
console.log(response.content[0].text); Käytä mitä tahansa OpenAI:ta tai Anthropic SDK:ta – muuta vain perus-URL-osoite.
Virallinen OpenAI Python SDK - toimii Shannonin kanssa
pip install openai Virallinen OpenAI Node.js SDK - toimii Shannonin kanssa
npm install openai Community Go -asiakasohjelma OpenAI-yhteensopiville sovellusliittymille
go get github.com/sashabaranov/go-openai Community Ruby -asiakasohjelma OpenAI-yhteensopiville sovellusliittymille
gem install ruby-openai Yhteisön PHP-asiakasohjelma OpenAI-yhteensopiville API:ille
composer require openai-php/client Async Rust -asiakasohjelma OpenAI-yhteensopiville sovellusliittymille
cargo add async-openai Virallinen Anthropic Python SDK - toimii Shannonin kanssa
pip install anthropic Virallinen Anthropic TypeScript SDK - toimii Shannonin kanssa
npm install @anthropic-ai/sdk Shannon käyttää tavallisia HTTP-tilakoodeja ja palauttaa yksityiskohtaisia virheilmoituksia.
{
"error": {
"message": "Invalid API key provided",
"type": "authentication_error",
"code": "invalid_api_key"
}
} Viimeaikaiset päivitykset ja parannukset Shannon-sovellusliittymään.
YOUR_API_KEY Pidä API-avaimesi salassa. Uudelleen luominen luo uuden avaimen ja mitätöi vanhan.
Tarkastele tunnuksen ja haun kulutusta tällä sivulla, kun olet kirjautunut tilillesi.
Puhelupohjainen kiintiö Shannon Coderille (shannon-coder-1). Nollautuu 4 tunnin välein.
Hanki API-avain ja aloita Shannon AI:n rakentaminen jo tänään.
Suositut haut: