منځپانګې ته ټوپ ووهئ
کوډ شوي، Tor & I2P endpoints

کوډ شوي، Tor & I2P endpoints

API د Tor onion service او I2P eepsite په توګه هم خپور شوی. هماغه لارې، هماغه کیلي؛ یوازې base URL او proxy بدلیږي.

Base URLs

څلور پتې هماغه API ته لار پیدا کوي. هغه یې وکاروئ چې ستاسو شبکې ته مناسب وي، د همدې API کیلي او همدې غوښتنو سره.

شبکه Base URL تاسو څنګه ورسیږئ
کلیر ویب https://api.shannon-ai.com/v1 مستقیم، د HTTPS له لارې.
کوډ شوی mirror https://api-encrypted.shannon-ai.com/v1 مستقیم، د HTTPS له لارې. د هماغه API لپاره دویم د کوربه نوم.
Tor (onion service) http://shannonmd773o5vxz75byha5rkea7nzr3srotw46uwythq3pjl6y4cad.onion/v1 د Tor کلاینټ له لارې: SOCKS5 proxy، ډیفالټ په 127.0.0.1:9050.
I2P (eepsite) http://acvnvkdea4xaczzjap7chysqqi4kkvp2eorfwkasindzmjpa47da.b32.i2p/v1 د I2P router له لارې: HTTP proxy، ډیفالټ په 127.0.0.1:4444.
  • OpenAI SDK base URL هماغسې اخلي لکه ښودل شوی، د /v1 سره. Anthropic SDK یې پرته له /v1 اخلي.
  • د پتې د چک لپاره، د https://api.shannon-ai.com د ځواب headers ولولئ: Onion-Location د onion پته لري او X-I2P-Location د I2P پته. د onion پته په shannon پیلیږي.

کومې لارې کار کوي

هره /v1 لار په ټولو څلورو پتو ځواب ورکوي:

  • POST /v1/chat/completions
  • POST /v1/responses
  • POST /v1/messages
  • POST /v1/messages/count_tokens
  • POST /v1/tokenize
  • GET /v1/models

GET /v1/models کیلي ته اړتیا نه لري، چې دا د دې چټک ازموینه جوړوي چې ستاسو proxy API ته رسیږي.

څه یو شان دي او څه توپیر لري

توکی یو شان؟ جزئیات
لارې، د غوښتنې ساحې، ځوابونه، تېروتنې یو شان په هره پته یو شان. هیڅ لار د کوربه نوم له مخې بل ډول چلند نه کوي.
API کیلي یو شان یوه کیلي په هره پته کار کوي، د Authorization: Bearer یا x-api-key په توګه. Cookies هیڅکله په /v1 کې نه لوستل کیږي.
بیلانس او حدونه یو شان هماغه بیلانس او د دقیقې په 120 غوښتنو هماغه حد. دواړه د هر حساب لپاره شمیرل کیږي، نه د هر پتې لپاره.
د غوښتنې اندازه یو شان د هرې غوښتنې بدنه تر 32 MiB پورې.
Scheme توپیر لري https:// په کلیر ویب او په mirror کې. http:// په .onion او .b32.i2p پتو کې، چیرته چې شبکه پخپله اړیکه له یوه سر څخه تر بل سر پورې کوډ کوي.
Proxy توپیر لري په کلیر ویب کې هیڅ. د Tor لپاره SOCKS5 proxy، د I2P لپاره HTTP proxy. نوم باید proxy حل کړي، نه ستاسو ماشین.
سرعت توپیر لري دواړه شبکې هر بایټ ته ځنډ زیاتوي. I2P د دواړو ورو دی.

بیلانس او حدونه په خپله جلا پاڼه کې بیان شوي. حدونه او بیلانس

cURL د Tor له لارې

په خپل ماشین کې Tor کلاینټ چلوئ. دا په 127.0.0.1:9050 SOCKS5 proxy وړاندې کوي. --socks5-hostname د .onion نوم دې proxy ته سپاري.

cURL · Tor
# 1. Is the onion service reachable? No key needed.
curl --socks5-hostname 127.0.0.1:9050 http://shannonmd773o5vxz75byha5rkea7nzr3srotw46uwythq3pjl6y4cad.onion/v1/models

# 2. A streamed chat call. -N prints the stream as it arrives.
curl -N --socks5-hostname 127.0.0.1:9050 http://shannonmd773o5vxz75byha5rkea7nzr3srotw46uwythq3pjl6y4cad.onion/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "shannon-3",
    "stream": true,
    "messages": [{"role": "user", "content": "Hello over Tor"}]
  }'

cURL د I2P له لارې

په خپل ماشین کې I2P router چلوئ. دا په 127.0.0.1:4444 HTTP proxy وړاندې کوي، چې .b32.i2p نوم هماغسې اخلي لکه چې دی.

cURL · I2P
# 1. Is the eepsite reachable? No key needed.
curl --proxy http://127.0.0.1:4444 http://acvnvkdea4xaczzjap7chysqqi4kkvp2eorfwkasindzmjpa47da.b32.i2p/v1/models

# 2. A streamed chat call.
curl -N --proxy http://127.0.0.1:4444 http://acvnvkdea4xaczzjap7chysqqi4kkvp2eorfwkasindzmjpa47da.b32.i2p/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "shannon-3",
    "stream": true,
    "messages": [{"role": "user", "content": "Hello over I2P"}]
  }'

د SDK base URL

SDK دوه بدلونونو ته اړتیا لري: د شبکې base URL، او HTTP کلاینټ چې د proxy له لارې ځي. په Python کې دواړه رسمي SDKs httpx کلاینټ مني. د SOCKS proxy لپاره httpx[socks] نصب کړئ.

# pip install openai "httpx[socks]"
import httpx
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="http://shannonmd773o5vxz75byha5rkea7nzr3srotw46uwythq3pjl6y4cad.onion/v1",
    http_client=httpx.Client(proxy="socks5h://127.0.0.1:9050", timeout=600),
)

stream = client.chat.completions.create(
    model="shannon-3",
    messages=[{"role": "user", "content": "Hello over Tor"}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

Streaming په دواړو شبکو کې کار کوي. پداسې حال کې چې stream پرانیستی وي او ماډل لا هیڅ نه لري چې ولیږي، API keep-alive لیږي، نو اړیکه proxy ته یا ستاسو کلاینټ ته مړه نه ښکاري.

Endpoint په پرانیستي stream کې Keep-alive لیږل شوی د
/v1/chat/completions د تبصرې کرښه (په : پیلیږي) هر 15 ثانیې وروسته. ټول ماډلونه
/v1/messages یو event: ping، یا د تبصرې کرښه، هر 15 ثانیې وروسته. ټول ماډلونه
/v1/responses د تبصرې کرښه هر 15 ثانیې وروسته. کوربه شوي open-weight ماډلونه
  • "stream": true ولیږئ. stream شوی ځواب هماغه شیبه رارسیدل پیلوي چې ماډل لیکي، او keep-alive ښيي چې غوښتنه لا هم پروسس کیږي. غیر-stream شوی ځواب تر هغه څه نه لیږي چې ټول ځواب چمتو شي.
  • کلاینټ ته اوږد لوستلو timeout ورکړئ. نمونې 600 ثانیې کاروي. له 15 ثانیو لنډ timeout کولی شي stream د دوو keep-alives ترمنځ پای ته ورسوي.
  • خپل SSE لوستونکی ته اجازه ورکړئ چې تبصرې کرښې او ping رخدادونه پریږدي. SDKs دا لا دمخه کوي.
  • غوښتنه هغه شیبه بیا مه لیږئ کله چې اړیکه ماته شي. هغه غوښتنه چې API ته رسیدلې تر پایه چلیږي او شمیرل کیږي، هم کله چې اړیکه نشته.
  • لار لومړی د GET /v1/models سره وازمایئ. کیلي ته اړتیا نه لري او لنډ JSON لیست بیرته ورکوي.

د اړیکې ستونزې

نښه لامل او حل
اړیکه له 127.0.0.1:9050 یا 127.0.0.1:4444 سره رد شوه په ستاسو ماشین کې هیڅ Tor کلاینټ یا I2P router نه چلیږي، یا په بل پورټ غوږ دی. Tor Browser خپل SOCKS proxy په پورټ 9150 وړاندې کوي.
د .onion نوم لپاره Could not resolve host کلاینټ هڅه وکړه چې نوم پخپله حل کړي. په cURL کې --socks5-hostname او د proxy په URL کې socks5h:// وکاروئ، ترڅو Tor کلاینټ یې حل کړي.
د I2P proxy خپل د تېروتنې پاڼه بیرته ورکوي Router لا پته نه ده موندلې. router وروسته له پیل څو دقیقو ته اړتیا لري. بیا هڅه وکړئ.
401 د Missing authentication سره غوښتنه پرته له کیلي رسیدلې. هماغه header ولیږئ لکه په کلیر ویب کې.

هره بله تېروتنه هماغه ده لکه په کلیر ویب کې. د تېروتنې اداره کول

ستاسو کیلي پرته له JavaScript

Shannon یوه ویب پاڼه هم لري پرته له JavaScript، چې په کلیر ویب کې، د onion service په توګه او د eepsite په توګه لاسرسی وړ ده. د هغې /keys پاڼه ستاسو API کیلي ښيي او اجازه درکوي چې یې بدله کړئ، نو تاسو کولی شئ کیلي ترلاسه کړئ پرته له دې چې Tor یا I2P پریږدئ. encrypted.shannon-ai.com/keys

د هغې ویب پاڼې پتې په ټولو درېیو شبکو کې دلته لیست شوي: کوډ شوی لاسرسی