Drop-in zamjena
KompatibilnoRadi s OpenAI i Anthropic SDK-ovima. Samo promijenite base URL.
Svi jezici su jednaki. Odaberite onaj na kojem želite pregledati sadržaj.
OpenAI i Anthropic kompatibilni AI API sa pozivanjem funkcija, web pretragom i strukturiranim izlazima.
Sve što ti treba za lansiranje s Shannon API‑jem kompatibilnim s OpenAI i Anthropic.
https://api.shannon-ai.com/v1/chat/completions Koristite Chat Completions API s pozivanjem funkcija i streamingom.
https://api.shannon-ai.com/v1/messages Claude Messages format s alatima i zaglavljem anthropic-version.
Authorization: Bearer <api-key> Ili X-API-Key s anthropic-version za pozive u Claude stilu.
Javni dokumenti - ključ je potreban za poziv Streaming, pozivanje funkcija, strukturirani izlazi, web pretraga.
Drop-in zamjena za OpenAI i Anthropic API-je s izvornom podrškom za alate, strukturirane izlaze i ugrađenu web pretragu.
Radi s OpenAI i Anthropic SDK-ovima. Samo promijenite base URL.
Definirajte alate, Shannon ih poziva. Podržava auto, prisilni i none način.
Web pretraga u stvarnom vremenu s citatima izvora. Automatski dostupno.
JSON način i forsiranje JSON Sheme za pouzdano izvlačenje podataka.
Automatske petlje izvršavanja funkcija. Do 10 iteracija po zahtjevu.
Server-sent events za streaming tokena u stvarnom vremenu.
Kreni u tri koraka. Shannon odražava OpenAI i Anthropic klijente.
Koristite OpenAI kompatibilni endpoint.
https://api.shannon-ai.com/v1/chat/completions Koristite Bearer autentikaciju u Authorization zaglavlju.
Odaberite jezik i zamijenite svojim ključem.
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
}
} Testiraj Shannon API direktno u pregledniku. Sastavi zahtjev, pokreni i vidi odgovor u stvarnom vremenu.
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.
/bs/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.
Svi API zahtjevi zahtijevaju autentikaciju pomoću vašeg Shannon API ključa.
Authorization: Bearer YOUR_API_KEY X-API-Key: YOUR_API_KEY
anthropic-version: 2023-06-01 Shannon nudi više modela optimiziranih za različite slučajeve upotrebe.
shannon-1.6-lite Shannon 1.6 Lite Brzi, učinkoviti odgovori za svakodnevne zadatke
shannon-1.6-pro Shannon 1.6 Pro Napredno rezoniranje za složene probleme
shannon-2-lite Shannon 2 Lite
shannon-2-pro Shannon 2 Pro
shannon-coder-1 Shannon Coder Optimizirano za Claude Code CLI s kvotom po pozivima
Definirajte alate koje Shannon može pozvati za izvođenje radnji ili dohvaćanje informacija.
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" Model odlučuje hoće li pozvati funkciju (zadano) "none" Onemogući pozivanje funkcija za ovaj zahtjev {"type": "function", "function": {"name": "..."}} Prisili poziv određene funkcije {
"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"
}
]
} Prisili Shannon da odgovori valjanim JSON-om koji odgovara tvojoj shemi.
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"} Prisili valjani JSON izlaz (bez specifične sheme) {"type": "json_schema", "json_schema": {...}} Prisili izlaz koji odgovara tvojoj točnoj shemi Omogućite streaming tokena u stvarnom vremenu s Server-Sent Events za responzivna sučelja.
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 uključuje ugrađenu web_search funkciju koja je automatski dostupna.
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 također podržava Anthropicov Messages API format.
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); Koristite bilo koji OpenAI ili Anthropic SDK – samo promijenite base URL.
Službeni OpenAI Python SDK - radi sa Shannonom
pip install openai Službeni OpenAI Node.js SDK - radi sa Shannonom
npm install openai Go klijent zajednice za OpenAI kompatibilne API-je
go get github.com/sashabaranov/go-openai Ruby klijent zajednice za OpenAI kompatibilne API-je
gem install ruby-openai PHP klijent zajednice za OpenAI kompatibilne API-je
composer require openai-php/client Asinkroni Rust klijent za OpenAI kompatibilne API-je
cargo add async-openai Službeni Anthropic Python SDK - radi sa Shannonom
pip install anthropic Službeni Anthropic TypeScript SDK - radi sa Shannonom
npm install @anthropic-ai/sdk Shannon koristi standardne HTTP status kodove i vraća detaljne poruke o pogrešci.
{
"error": {
"message": "Invalid API key provided",
"type": "authentication_error",
"code": "invalid_api_key"
}
} Nedavna ažuriranja i poboljšanja Shannon API-ja.
YOUR_API_KEY Čuvajte svoj API ključ u tajnosti. Regeneriranje stvara novi ključ i poništava stari.
Pregledajte potrošnju tokena i pretrage na ovoj stranici kada ste prijavljeni.
Kvota po pozivima za Shannon Coder (shannon-coder-1). Resetira se svakih 4 sati.
Nabavite svoj API ključ i počnite graditi sa Shannon AI-jem danas.
Popularne pretrage: