ናብ ትሕዝቶ ዝለል
Encrypted, Tor & I2P endpoints

Encrypted, Tor & I2P endpoints

እቲ API ከም Tor onion service ከምኡውን I2P eepsite እውን ይሕተም። ተመሳሳሊ routes፣ ተመሳሳሊ ቁልፊ፤ base URL ከምኡውን proxy ጥራይ ይቕየሩ።

Base URLs

ኣርባዕተ ኣድራሻታት ናብ ሓደ API የብጽሑ። እቲ ምስ መርበብካ ዝሰማማዕ ተጠቐም፣ ምስ ሓደ API key ከምኡውን ሓደ ጠለባት።

መርበብ Base URL ከመይ ትበጽሖ
Clear web https://api.shannon-ai.com/v1 ብቐጥታ፣ ብ HTTPS።
Encrypted mirror https://api-encrypted.shannon-ai.com/v1 ብቐጥታ፣ ብ HTTPS። ካልእ ስም host ን ሓደ API።
Tor (onion service) 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 ይወስድ።
  • ኣድራሻ ንምርግጋጽ፣ headers ናይ ምላሽ ናይ https://api.shannon-ai.com ኣንብብ፦ Onion-Location ኣድራሻ onion ይሕዝ ከምኡውን X-I2P-Location ኣድራሻ I2P። ኣድራሻ onion ብ shannon ይጅምር።

ኣየኖት routes ይሰርሑ

ነፍሲ ወከፍ route /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 ከም ዝበጽሕ ቅልጡፍ ፈተና እዩ።

እንታይ ተመሳሳሊ ከምኡውን እንታይ ዝፈላለ

ኣተዋብ ተመሳሳሊ? ዝርዝር
Routes፣ fields ናይ ጠለብ፣ ምላሻት፣ ጌጋታት ተመሳሳሊ ኣብ ነፍሲ ወከፍ ኣድራሻ ተመሳሳሊ። ዋላ ሓደ route ብስም host ብተፈለየ ኣይሰርሕን።
API key ተመሳሳሊ ሓደ ቁልፊ ኣብ ነፍሲ ወከፍ ኣድራሻ ይሰርሕ፣ ከም Authorization: Bearer ወይ x-api-key። Cookies ኣብ /v1 ፈጺሞም ኣይነበቡን።
ሚዛንን ወሰናትን ተመሳሳሊ ተመሳሳሊ ሚዛን ከምኡውን ተመሳሳሊ ወሰን 120 ጠለባት ኣብ ደቒቕ። ክልቲኦም ብኣካውንት እምበር ብኣድራሻ ኣይቑጸሩን።
መጠን ጠለብ ተመሳሳሊ ክሳብ 32 MiB ንነፍሲ ወከፍ body ናይ ጠለብ።
Scheme ዝፈላለ https:// ኣብ clear web ከምኡውን ኣብ mirror። http:// ኣብ ኣድራሻታት .onion ከምኡውን .b32.i2p፣ እቲ መርበብ ባዕሉ ርክብ ካብ መጀመርታ ክሳብ መወዳእታ ኣብ ዝሕብቀሉ።
Proxy ዝፈላለ ኣብ clear web የለን። SOCKS5 proxy ን Tor፣ HTTP proxy ን I2P። እቲ ስም ብ proxy እምበር ብማሽንካ ክፍታሕ ኣለዎ።
ቅልጣፈ ዝፈላለ ክልቲኦም መርበባት ንነፍሲ ወከፍ byte ደንጋጽ ይውስኹ። I2P ካብ ክልቲኡ ዝነዘሐ እዩ።

ሚዛንን ወሰናትን ኣብ ናቱ ገጽ ተገሊጾም ኣለዉ። ገደባትን ሚዛንን

cURL ብ Tor

Tor client ኣብ ማሽንካ ኣስርሕ። SOCKS5 proxy ኣብ 127.0.0.1:9050 የቕርብ። --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

Router I2P ኣብ ማሽንካ ኣስርሕ። ንሱ HTTP proxy ኣብ 127.0.0.1:4444 የቕርብ፣ ንስም .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 client ብ proxy ዝሓልፍ። ኣብ Python ክልቲኦም ወግዓውያን SDKs client 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 ወይ ንclient ናትካ ከም ዝሞተ ኣይመስልን።

Endpoint Keep-alive ኣብ ዝተኸፍተ stream ዝልኣኸሉ
/v1/chat/completions መስመር ርእይቶ (ብ : ትጅምር) ኣብ ነፍሲ ወከፍ 15 ሰከንድ። ኩሎም ሞዴላት
/v1/messages event: ping፣ ወይ መስመር ርእይቶ፣ ኣብ ነፍሲ ወከፍ 15 ሰከንድ። ኩሎም ሞዴላት
/v1/responses መስመር ርእይቶ ኣብ ነፍሲ ወከፍ 15 ሰከንድ። ዝተሃንደሱ open-weight ሞዴላት
  • "stream": true ልኣኽ። ዝውሕዝ ምላሽ እቲ ሞዴል ምስ ጸሓፈ ብቕልጡፍ ክበጽሕ ይጅምር፣ እቲ keep-alive ድማ እቲ ጠለብ ገና ይሰርሕ ከም ዘሎ ይሕብር። ዘይውሕዝ ምላሽ ክሳብ ምሉእ መልሲ ዝድሉ ዋላ ሓንቲ ኣይልእክን።
  • ን client ነዊሕ read timeout ሃቦ። እቶም ኣብነታት 600 ሰከንድታት ይጥቀሙ። timeout ካብ 15 ሰከንድታት ዝሓጸረ stream ኣብ መንጎ ክልተ keep-alives ክቋርጽ ይኽእል።
  • SSE reader ናትካ መስመራት ርእይቶ ከምኡውን events ping ይሕልፍ። እቶም 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 የቕርብ።
Could not resolve host ን ስም .onion እቲ client ነቲ ስም ባዕሉ ክፍትሖ ፈተነ። ኣብ cURL --socks5-hostname ከምኡውን ኣብ URL ናይ proxy socks5h:// ተጠቐም፣ ስለዚ Tor client ይፍትሖ።
I2P proxy ብናቱ ገጽ ጌጋ ይምልስ እቲ router ንኣድራሻ ገና ኣይረኸቦን። ሓደ router ድሕሪ ምጅማሩ ውሑዳት ደቓይቕ የድልዮ። ደጊምካ ፈትን።
401 ምስ Missing authentication እቲ ጠለብ ብዘይ ቁልፊ በጽሐ። ከም ኣብ clear web ተመሳሳሊ header ልኣኽ።

ኩሉ ካልእ ጌጋ ከም ኣብ clear web ተመሳሳሊ እዩ። ሓጋይ ኣስተዳደር

ቁልፍካ ብዘይ JavaScript

Shannon website ብዘይ JavaScript እውን ኣለዎ፣ ኣብ clear web፣ ከም onion service ከምኡውን ከም eepsite ይርከብ። ገጽ /keys ናቱ API key ናትካ የርኢ ከምኡውን ክትቅይሮ የኽእለካ፣ ስለዚ ካብ Tor ወይ I2P ከይወጻእካ ቁልፊ ክትረክብ ትኽእል። encrypted.shannon-ai.com/keys

ኣድራሻታት ናይዚ website ኣብ ኩሎም ሰለስተ መርበባት ኣብዚ ተዘርዚሮም ኣለዉ፦ Encrypted access