Kontentga o'tish
Shifrlangan, Tor va I2P endpointlari

Shifrlangan, Tor va I2P endpointlari

API Tor onion xizmati va I2P eepsite sifatida ham e'lon qilingan. Yo'nalishlar bir xil, kalit bir xil; faqat base URL va proksi o'zgaradi.

Base URL'lar

To'rtta manzil bir xil API'ga olib boradi. Tarmog'ingizga mosini tanlang, API kalit va so'rovlar o'sha-o'sha.

Tarmoq Base URL Qanday ulanish kerak
Oddiy veb https://api.shannon-ai.com/v1 To'g'ridan-to'g'ri, HTTPS orqali.
Shifrlangan mirror https://api-encrypted.shannon-ai.com/v1 To'g'ridan-to'g'ri, HTTPS orqali. Xuddi shu API uchun ikkinchi host nomi.
Tor (onion xizmati) http://shannonmd773o5vxz75byha5rkea7nzr3srotw46uwythq3pjl6y4cad.onion/v1 Tor klienti orqali: SOCKS5 proksi, odatda 127.0.0.1:9050 da.
I2P (eepsite) http://acvnvkdea4xaczzjap7chysqqi4kkvp2eorfwkasindzmjpa47da.b32.i2p/v1 I2P router orqali: HTTP proksi, odatda 127.0.0.1:4444 da.
  • OpenAI SDK base URL'ni ko'rsatilganidek, /v1 bilan oladi. Anthropic SDK uni /v1 siz oladi.
  • Manzilni tekshirish uchun https://api.shannon-ai.com javob sarlavhalarini o'qing: Onion-Location onion manzilini, X-I2P-Location I2P manzilini beradi. Onion manzil shannon bilan boshlanadi.

Qaysi yo'nalishlar ishlaydi

Har bir /v1 yo'nalishi to'rttala manzilda ham javob beradi:

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

GET /v1/models kalit talab qilmaydi, shuning uchun proksingiz API'ga yetib borishini tez tekshirishga mos.

Nima bir xil va nima farq qiladi

Band Bir xilmi? Tafsilot
Yo'nalishlar, so'rov maydonlari, javoblar, xatolar Bir xil Har bir manzilda bir xil. Hech bir yo'nalish host nomiga qarab boshqacha ishlamaydi.
API kalit Bir xil Bitta kalit har bir manzilda ishlaydi, Authorization: Bearer yoki x-api-key sifatida. /v1 da cookie'lar hech qachon o'qilmaydi.
Balans va limitlar Bir xil Balans ham, daqiqasiga 120 ta so'rov limiti ham bir xil. Ikkalasi ham manzil bo'yicha emas, akkaunt bo'yicha sanaladi.
So'rov hajmi Bir xil Har bir so'rov tanasi 32 MiB gacha.
Sxema Farq qiladi Oddiy veb'da va mirror'da https://. .onion va .b32.i2p manzillarida http://, bunda tarmoqning o'zi ulanishni boshidan oxirigacha shifrlaydi.
Proksi Farq qiladi Oddiy veb'da yo'q. Tor uchun SOCKS5 proksi, I2P uchun HTTP proksi. Nomni kompyuteringiz emas, proksi hal qilishi kerak.
Tezlik Farq qiladi Ikkala tarmoq ham har bir baytga kechikish qo'shadi. I2P ikkisidan sekinroq.

Balans va limitlar o'z sahifasida tasvirlangan. Limitlar va balans

Tor orqali cURL

Kompyuteringizda Tor klientini ishga tushiring. U 127.0.0.1:9050 da SOCKS5 proksi taklif qiladi. --socks5-hostname .onion nomini shu proksiga uzatadi.

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"}]
  }'

I2P orqali cURL

Kompyuteringizda I2P router ishga tushiring. U 127.0.0.1:4444 da HTTP proksi taklif qiladi, u .b32.i2p nomini o'zgartirmasdan qabul qiladi.

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 uchun ikkita o'zgartirish kerak: tarmoqning base URL'i va proksi orqali o'tadigan HTTP klient. Python'da ikkala rasmiy SDK ham httpx klientini qabul qiladi. SOCKS proksi uchun httpx[socks] ni o'rnating.

# 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 ikkala tarmoqda ham ishlaydi. Oqim ochiq bo'lib, modelda hali yuboradigan narsa bo'lmagan paytda API keep-alive yuboradi, shunda ulanish proksiga yoki klientingizga o'lik ko'rinmaydi.

Endpoint Ochiq oqimdagi keep-alive Qaysi modellarga yuboriladi
/v1/chat/completions Har 15 soniyada izoh satri (u : bilan boshlanadi). Barcha modellar
/v1/messages Har 15 soniyada event: ping yoki izoh satri. Barcha modellar
/v1/responses Har 15 soniyada izoh satri. Xostingdagi open-weight modellar
  • "stream": true yuboring. Oqimli javob model yozishi bilan kela boshlaydi, keep-alive esa so'rov hali ishlanayotganini ko'rsatadi. Oqimsiz javob butun javob tayyor bo'lguncha hech narsa yubormaydi.
  • Klientga uzun o'qish timeout'ini bering. Namunalarda 600 soniya ishlatilgan. 15 soniyadan qisqa timeout oqimni ikki keep-alive orasida uzib qo'yishi mumkin.
  • SSE o'quvchingiz izoh satrlari va ping hodisalarini o'tkazib yuborsin. SDK'lar buni allaqachon qiladi.
  • Ulanish uzilishi bilanoq so'rovni qayta yubormang. API'ga yetib borgan so'rov oxirigacha bajariladi va hisoblanadi, ulanish yo'q bo'lsa ham.
  • Yo'lni avval GET /v1/models bilan sinab ko'ring. U kalit talab qilmaydi va qisqa JSON ro'yxatini qaytaradi.

Ulanish muammolari

Alomat Sabab va yechim
127.0.0.1:9050 yoki 127.0.0.1:4444 ga ulanish rad etildi Kompyuteringizda Tor klienti yoki I2P router ishlamayapti yoki u boshqa portda tinglayapti. Tor Browser o'zining SOCKS proksisini 9150 portda taklif qiladi.
.onion nomi uchun Could not resolve host Klient nomni o'zi hal qilishga urindi. cURL'da --socks5-hostname, proksi URL'da socks5h:// ishlating, shunda nomni Tor klienti hal qiladi.
I2P proksi o'zining xato sahifasi bilan javob beradi Router manzilni hali topmagan. Router ishga tushgandan keyin bir necha daqiqa kerak bo'ladi. Qayta urinib ko'ring.
401 va Missing authentication So'rov kalitsiz yetib keldi. Oddiy veb'dagi bilan bir xil sarlavhani yuboring.

Boshqa har bir xato oddiy veb'dagi bilan bir xil. Xatolarni boshqarish

Kalitingiz JavaScript'siz

Shannon'ning JavaScript'siz veb-sayti ham bor, u oddiy veb'da, onion xizmati va eepsite sifatida mavjud. Uning /keys sahifasi API kalitingizni ko'rsatadi va uni almashtirishga imkon beradi, shuning uchun Tor yoki I2P'dan chiqmasdan kalit olishingiz mumkin. encrypted.shannon-ai.com/keys

Shu veb-saytning uchala tarmoqdagi manzillari bu yerda keltirilgan: Shifrlangan kirish