Yiya kumxholo
Ii-endpoint ezifihlakeleyo, ze-Tor & I2P

Ii-endpoint ezifihlakeleyo, ze-Tor & I2P

I-API ipapashwa nanjenge-onion service ye-Tor kunye ne-eepsite ye-I2P. Iindlela ezifanayo, isitshixo esifanayo; i-base URL kuphela nommeli zitshintsha.

Ii-Base URL

Amakheli amane akhokelela kwi-API enye. Sebenzisa elilungele inethiwekhi yakho, kunye ne-API key efanayo nezicelo ezifanayo.

Inethiwekhi I-Base URL Indlela ofikelela ngayo
Iwebhu evulekileyo https://api.shannon-ai.com/v1 Ngqo, nge-HTTPS.
I-mirror efihlakeleyo https://api-encrypted.shannon-ai.com/v1 Ngqo, nge-HTTPS. Igama lesibini lehositi le-API enye.
I-Tor (onion service) http://shannonmd773o5vxz75byha5rkea7nzr3srotw46uwythq3pjl6y4cad.onion/v1 Nge-client ye-Tor: ummeli we-SOCKS5, ngokuqhelekileyo ku-127.0.0.1:9050.
I-I2P (eepsite) http://acvnvkdea4xaczzjap7chysqqi4kkvp2eorfwkasindzmjpa47da.b32.i2p/v1 Ngerawuta ye-I2P: ummeli we-HTTP, ngokuqhelekileyo ku-127.0.0.1:4444.
  • I-OpenAI SDK yamkela i-base URL njengoko ibonisiwe, kunye ne-/v1. I-Anthropic SDK iyamkela ngaphandle kwe-/v1.
  • Ukuqinisekisa ikheli, funda ii-header zempendulo ze-https://api.shannon-ai.com: i-Onion-Location ithwala ikheli le-onion kunye ne-X-I2P-Location ikheli le-I2P. Ikheli le-onion liqala nge-shannon.

Zeziphi iindlela ezisebenzayo

Yonke indlela ye-/v1 iphendula kuwo onke amakheli amane:

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

I-GET /v1/models ayifuni sitshixo, nto leyo eyenza ibe luvavanyo olukhawulezileyo lokuba ummeli wakho ufikelela kwi-API.

Okufanayo kunye nokwahlukileyo

Into Ifanayo? Iinkcukacha
Iindlela, iintsimi zezicelo, iimpendulo, iimpazamo Ifanayo Ezifanayo kuwo onke amakheli. Akukho ndlela yenza ngokwahlukileyo ngegama lehositi.
I-API key Ifanayo Isitshixo esinye sisebenza kuwo onke amakheli, njenge-Authorization: Bearer okanye i-x-api-key. Iikuki azifundwa kwi-/v1.
Ibhalansi kunye nemida Ifanayo Ibhalansi efanayo kunye nomda ofanayo wezicelo ezili-120 ngomzuzu. Zozibini ziyabalwa ngeakhawunti, hayi ngekheli.
Ubungakanani besicelo Ifanayo Ukuya kuthi ga kwi-32 MiB ngomzimba wesicelo.
Isikimu Iyahluka I-https:// kwiwebhu evulekileyo nakwi-mirror. I-http:// kumakheli e-.onion kunye ne-.b32.i2p, apho inethiwekhi ngokwayo ifihla uqhagamshelo ukusuka ekuqaleni ukuya ekupheleni.
Ummeli Iyahluka Akukho kwiwebhu evulekileyo. Ummeli we-SOCKS5 kwi-Tor, ummeli we-HTTP kwi-I2P. Igama kufuneka lixazululwe ngummeli, hayi yikhompyuter yakho.
Isantya Iyahluka Zozibini iinethiwekhi zongeza ukulibaziseka kwibhayithi nganye. I-I2P ihamba kancinci kuzo zombini.

Ibhalansi kunye nemida zichazwe kwiphepha lazo. Imida nebhalansi

I-cURL nge-Tor

Qhuba i-client ye-Tor kwikhompyuter yakho. Inika ummeli we-SOCKS5 ku-127.0.0.1:9050. I---socks5-hostname inika igama le-.onion kuloo mmeli.

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

I-cURL nge-I2P

Qhuba irawuta ye-I2P kwikhompyuter yakho. Inika ummeli we-HTTP ku-127.0.0.1:4444, owamkela igama le-.b32.i2p njengoko linjalo.

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

I-base URL ye-SDK

I-SDK ifuna utshintsho olubini: i-base URL yenethiwekhi, kunye ne-HTTP client edlula kummeli. KwiPython zozibini ii-SDK ezisemthethweni zamkela i-client ye-httpx. Kummeli we-SOCKS faka i-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)

I-streaming isebenza kuzo zozibini iinethiwekhi. Ngoxa i-stream ivuliwe kwaye imodeli ingenanto yokuthumela, i-API ithumela i-keep-alive, ukuze uqhagamshelo lungabonakali lufile kummeli okanye kwi-client yakho.

Endpoint I-keep-alive kwi-stream evulekileyo Ithunyelwa kwi
/v1/chat/completions Umgca wengcaciso (uqala nge-:) rhoqo emva kwemizuzwana eli-15. Zonke iimodeli
/v1/messages I-event: ping, okanye umgca wengcaciso, rhoqo emva kwemizuzwana eli-15. Zonke iimodeli
/v1/responses Umgca wengcaciso rhoqo emva kwemizuzwana eli-15. Iimodeli ze-open-weight ezisingathiweyo
  • Thumela i-"stream": true. Impendulo ene-stream iqala ukufika kwakamsinya imodeli ibhala, kwaye i-keep-alive ibonisa ukuba isicelo sisasetyenzwa. Impendulo engekho nge-stream ayithumeli nto de yonke impendulo ilungele.
  • Yinike i-client i-read timeout ende. Imizekelo isebenzisa imizuzwana engama-600. I-timeout emfutshane kuneemizuzwana eli-15 inokuyiphelisa i-stream phakathi kwee-keep-alive ezimbini.
  • Vumela umfundi wakho we-SSE ashiye imigca yengcaciso kunye nemisitho ye-ping. Ii-SDK sele zikwenza oku.
  • Musa ukuthumela kwakhona isicelo ngokukhawuleza xa uqhagamshelo lunqamka. Isicelo esifikelele kwi-API siqhuba side siphele kwaye siyabalwa, nokuba uqhagamshelo alusekho.
  • Vavanya indlela kuqala nge-GET /v1/models. Ayifuni sitshixo kwaye ibuyisa uluhlu olufutshane lwe-JSON.

Iingxaki zoqhagamshelo

Uphawu Unobangela kunye nesisombululo
Uqhagamshelo ku-127.0.0.1:9050 okanye ku-127.0.0.1:4444 lwaliwe Akukho client ye-Tor okanye irawuta ye-I2P ebaleka kwikhompyuter yakho, okanye ihlala kwenye i-port. I-Tor Browser inika ummeli wayo we-SOCKS kwi-port 9150.
Could not resolve host kwigama le-.onion I-client izamile ukuxazulula igama ngokwayo. Sebenzisa i---socks5-hostname kwi-cURL kunye ne-socks5h:// kwi-URL yommeli, ukuze i-client ye-Tor iyixazulule.
Ummeli we-I2P uphendula ngephepha lakhe lempazamo Irawuta ayikaliboni ikheli. Irawuta ifuna imizuzu embalwa emva kokuqala. Zama kwakhona.
401 kunye ne-Missing authentication Isicelo sifike ngaphandle kwesitshixo. Thumela i-header efanayo nakwiwebhu evulekileyo.

Zonke ezinye iimpazamo zifana nakwiwebhu evulekileyo. Ukuphatha imposiso

Isitshixo sakho ngaphandle kweJavaScript

IShannon inalo kwakhona isiza esingenayo iJavaScript, esifumaneka kwiwebhu evulekileyo, njenge-onion service nanjenge-eepsite. Iphepha laso le-/keys libonisa i-API key yakho kwaye likuvumela ukuba uyitshintshe, ngoko unokufumana isitshixo ngaphandle kokushiya i-Tor okanye i-I2P. encrypted.shannon-ai.com/keys

Amakheli esi siza kuzo zontathu iinethiwekhi adweliswe apha: Ukufikelela okufihlakeleyo