ወደ ይዘቱ እለፍ
የተመሰጠሩ፣ Tor & I2P endpoints

የተመሰጠሩ፣ Tor & I2P endpoints

API እንዲሁ እንደ Tor onion አገልግሎት እና እንደ 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 ሁለተኛ የhost ስም።
Tor (onion አገልግሎት) http://shannonmd773o5vxz75byha5rkea7nzr3srotw46uwythq3pjl6y4cad.onion/v1 በTor client በኩል፦ 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 መድረሱን ለመፈተሽ ፈጣን መንገድ ነው።

ተመሳሳይ የሆነው እና የሚለያየው

ንጥል ተመሳሳይ? ዝርዝር
መንገዶች፣ የጥያቄ መስኮች፣ ምላሾች፣ ስህተቶች ተመሳሳይ በእያንዳንዱ አድራሻ ተመሳሳይ። በhost ስም የተለየ ባህሪ ያለው መንገድ የለም።
API ቁልፍ ተመሳሳይ አንድ ቁልፍ በእያንዳንዱ አድራሻ ይሰራል፣ እንደ Authorization: Bearer ወይም x-api-key። Cookies በ/v1 ላይ በፍጹም አይነበቡም።
ቀሪ ሂሳብ እና ገደቦች ተመሳሳይ ተመሳሳይ ቀሪ ሂሳብ እና በደቂቃ 120 ጥያቄዎች ተመሳሳይ ገደብ። ሁለቱም የሚቆጠሩት በመለያ ነው እንጂ በአድራሻ አይደለም።
የጥያቄ መጠን ተመሳሳይ በጥያቄ body እስከ 32 MiB።
Scheme ይለያያል በግልጹ ድር ላይ እና በmirror ላይ https://። ኔትወርኩ ራሱ ግንኙነቱን ከጫፍ እስከ ጫፍ በሚያመሰጥርበት በ.onion እና በ.b32.i2p አድራሻዎች ላይ http://።
Proxy ይለያያል በግልጹ ድር ላይ የለም። ለTor SOCKS5 proxy፣ ለI2P HTTP proxy። ስሙ በማሽንዎ ሳይሆን በproxy መፈታት አለበት።
ፍጥነት ይለያያል ሁለቱም ኔትወርኮች በእያንዳንዱ ባይት ላይ መዘግየት ይጨምራሉ። ከሁለቱ I2P ዘገምተኛው ነው።

ቀሪ ሂሳብ እና ገደቦች በራሳቸው ገጽ ላይ ተብራርተዋል። ገደቦች እና ቀሪ ሂሳብ

cURL በTor በኩል

በማሽንዎ ላይ Tor client ያስኪዱ። በ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፣ እና በproxy የሚያልፍ HTTP client። በPython ሁለቱም ኦፊሴላዊ SDKs httpx client ይቀበላሉ። ለ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 ወይም ለclient ዎ የሞተ አይመስልም።

Endpoint በክፍት stream ላይ የሚላክ Keep-alive የሚላከው ለ
/v1/chat/completions በየ15 ሰከንዱ የcomment መስመር (በ: ይጀምራል)። ሁሉም ሞዴሎች
/v1/messages በየ15 ሰከንዱ event: ping፣ ወይም የcomment መስመር። ሁሉም ሞዴሎች
/v1/responses በየ15 ሰከንዱ የcomment መስመር። የተስተናገዱ open-weight ሞዴሎች
  • "stream": true ይላኩ። የstream ምላሽ ሞዴሉ እንደጻፈ መድረስ ይጀምራል፣ እና keep-alive ጥያቄው አሁንም እየተሰራ መሆኑን ያሳያል። stream ያልሆነ ምላሽ ሙሉው መልስ እስኪዘጋጅ ምንም አይልክም።
  • ለclient ረጅም የንባብ timeout ይስጡት። ናሙናዎቹ 600 ሰከንድ ይጠቀማሉ። ከ15 ሰከንድ ያነሰ timeout በሁለት keep-alives መካከል stream ሊያቋርጥ ይችላል።
  • SSE አንባቢዎ የcomment መስመሮችን እና ping events ን እንዲዘል ያድርጉ። SDKs ይህን አስቀድመው ያደርጋሉ።
  • ግንኙነት በተቋረጠ ቅጽበት ጥያቄን እንደገና አይላኩ። ወደ API የደረሰ ጥያቄ እስከ መጨረሻው ይሄዳል እና ይቆጠራል፣ ግንኙነቱ ቢጠፋም።
  • መንገዱን መጀመሪያ በGET /v1/models ይሞክሩ። ቁልፍ አያስፈልገውም እና አጭር የJSON ዝርዝር ይመልሳል።

የግንኙነት ችግሮች

ምልክት ምክንያት እና መፍትሄ
ወደ 127.0.0.1:9050 ወይም 127.0.0.1:4444 ግንኙነት ውድቅ ተደርጓል በማሽንዎ ላይ ምንም Tor client ወይም I2P router አይሰራም፣ ወይም በሌላ port ያዳምጣል። Tor Browser SOCKS proxy ውን በport 9150 ያቀርባል።
ለ.onion ስም Could not resolve host client ስሙን ራሱ ለመፍታት ሞክሯል። Tor client እንዲፈታው በcURL --socks5-hostname እና በproxy URL socks5h:// ይጠቀሙ።
የI2P proxy በራሱ የስህተት ገጽ ይመልሳል router አድራሻውን ገና አላገኘውም። router ከጀመረ በኋላ ጥቂት ደቂቃዎች ይፈልጋል። እንደገና ይሞክሩ።
401 ከMissing authentication ጋር ጥያቄው ያለ ቁልፍ ደርሷል። በግልጹ ድር ላይ ያለውን ተመሳሳይ header ይላኩ።

ሌላ ማንኛውም ስህተት በግልጹ ድር ላይ ካለው ጋር ተመሳሳይ ነው። ስህተት አስተዳደር

ቁልፍዎ ያለ JavaScript

Shannon ያለ JavaScript የሚሰራ ድር ጣቢያም አለው፣ በግልጹ ድር ላይ፣ እንደ onion አገልግሎት እና እንደ eepsite ይገኛል። የ/keys ገጹ የAPI ቁልፍዎን ያሳያል እና እንዲቀይሩት ያስችልዎታል፣ ስለዚህ Tor ወይም I2P ሳይለቁ ቁልፍ ማግኘት ይችላሉ። encrypted.shannon-ai.com/keys

የዚያ ድር ጣቢያ አድራሻዎች በሦስቱም ኔትወርኮች እዚህ ተዘርዝረዋል፦ የተመሰጠረ መዳረሻ