Encrypted, Tor & I2P endpoints
API inoburitswawo se-Tor onion service ne-I2P eepsite. Ma-route akafanana, key imwechete; base URL ne-proxy chete ndizvo zvinochinja.
Base URLs
Ma-address mana anotungamira ku-API imwechete. Shandisa iro rinokodzera network yako, ne-API key imwechete ne-requests dzimwechete.
| Network | Base URL | Kuti unosvika sei |
|---|---|---|
| Clear web | https://api.shannon-ai.com/v1 | Zvakananga, kuburikidza ne-HTTPS. |
| Encrypted mirror | https://api-encrypted.shannon-ai.com/v1 | Zvakananga, kuburikidza ne-HTTPS. Host name yechipiri ye-API imwechete. |
| Tor (onion service) | http://shannonmd773o5vxz75byha5rkea7nzr3srotw46uwythq3pjl6y4cad.onion/v1 | Kuburikidza ne-Tor client: SOCKS5 proxy, ne-default pa-127.0.0.1:9050. |
| I2P (eepsite) | http://acvnvkdea4xaczzjap7chysqqi4kkvp2eorfwkasindzmjpa47da.b32.i2p/v1 | Kuburikidza ne-I2P router: HTTP proxy, ne-default pa-127.0.0.1:4444. |
- OpenAI SDK inotora base URL sezvayakaratidzwa, ine
/v1. Anthropic SDK inoitora isina/v1. - Kutarisa address, verenga reply headers dze-
https://api.shannon-ai.com:Onion-Locationinotakura onion address uyeX-I2P-LocationI2P address. Onion address inotanga ne-shannon.
Ma-route anoshanda
Route imwe neimwe ye-/v1 inopindura pa-ma-address ese mana:
POST /v1/chat/completionsPOST /v1/responsesPOST /v1/messagesPOST /v1/messages/count_tokensPOST /v1/tokenizeGET /v1/models
GET /v1/models haidi key, saka ndiyo test inokurumidza yekuti proxy yako inosvika ku-API.
Zvakafanana nezvinosiyana
| Item | Yakafanana? | Zvakadzama |
|---|---|---|
| Ma-route, request fields, mhinduro, errors | Yakafanana | Zvakafanana pa-address imwe neimwe. Hapana route inoita zvakasiyana nehost name. |
| API key | Yakafanana | Key imwe inoshanda pa-address imwe neimwe, se-Authorization: Bearer kana x-api-key. Cookies hadziverengwi pa-/v1. |
| Balance ne-limits | Yakafanana | Balance imwechete ne-limit imwechete ye-120 requests paminiti imwe. Zvese zviviri zvinoverengwa pa-account, kwete pa-address. |
| Size ye-request | Yakafanana | Kusvika ku-32 MiB pa-request body. |
| Scheme | Inosiyana | https:// pa-clear web nepa-mirror. http:// pa-.onion ne-.b32.i2p addresses, apo network pachayo inovharira connection kubva kuguma kusvika kuguma. |
| Proxy | Inosiyana | Hapana pa-clear web. SOCKS5 proxy ye-Tor, HTTP proxy ye-I2P. Zita rinofanira kugadziriswa ne-proxy, kwete nemushini wako. |
| Kumhanya | Inosiyana | Ma-network ese maviri anowedzera delay pa-byte imwe neimwe. I2P ndiyo inononoka kupfuura mbiri idzi. |
Balance ne-limits zvakatsanangurwa papeji razvo. Limits ne-balance
cURL kuburikidza ne-Tor
Mhanyisa Tor client pamushini wako. Inopa SOCKS5 proxy pa-127.0.0.1:9050. --socks5-hostname inopa zita re-.onion kune proxy iyoyo.
# 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 kuburikidza ne-I2P
Mhanyisa I2P router pamushini wako. Inopa HTTP proxy pa-127.0.0.1:4444, inotora zita re-.b32.i2p sezvariri.
# 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 inoda shanduko mbiri: base URL ye-network, ne-HTTP client inopfuura nepa-proxy. Mu-Python ese maviri official SDKs anotora httpx client. Pa-SOCKS proxy ise 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) # pip install openai
import httpx
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="http://acvnvkdea4xaczzjap7chysqqi4kkvp2eorfwkasindzmjpa47da.b32.i2p/v1",
http_client=httpx.Client(proxy="http://127.0.0.1:4444", timeout=600),
)
stream = client.chat.completions.create(
model="shannon-3",
messages=[{"role": "user", "content": "Hello over I2P"}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True) # pip install anthropic "httpx[socks]"
import anthropic
import httpx
client = anthropic.Anthropic(
api_key="YOUR_API_KEY",
base_url="http://shannonmd773o5vxz75byha5rkea7nzr3srotw46uwythq3pjl6y4cad.onion",
http_client=httpx.Client(proxy="socks5h://127.0.0.1:9050", timeout=600),
)
with client.messages.stream(
model="shannon-1.6-lite",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello over Tor"}],
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True) Streaming ne-keep-alive pa-links dzinononoka
Streaming inoshanda pa-ma-network ese mbiri. Apo stream yakavhurika uye model isina chekutumira, API inotumira keep-alive, kuti connection isaratidzike seyakafa kune proxy kana client yako.
| Endpoint | Keep-alive pa-stream yakavhurika | Inotumirwa ku |
|---|---|---|
/v1/chat/completions | Mutsara we-comment (unotanga ne-:) masekonzi 15 ega ega. | Ma-model ese |
/v1/messages | event: ping, kana mutsara we-comment, masekonzi 15 ega ega. | Ma-model ese |
/v1/responses | Mutsara we-comment masekonzi 15 ega ega. | Hosted open-weight models |
- Tumira
"stream": true. Mhinduro ye-stream inotanga kusvika model ichangotanga kunyora, uye keep-alive inoratidza kuti request ichiri kushandirwa. Mhinduro isiri streamed haitumire chinhu kusvika mhinduro yose yagadzirira. - Ipa client read timeout refu. Ma-sample anoshandisa masekonzi 600. Timeout pfupi kupfuura masekonzi 15 inogona kupedza stream pakati pe-keep-alives mbiri.
- Siya SSE reader yako ichisiya comment lines ne-
pingevents. SDKs dzinozviita kare. - Usatumire zvakare request panguva iya connection yadonha. Request yakasvika ku-API inomhanya kusvika kuguma uye inoverengwa, kunyange connection yaenda.
- Edza path ne-
GET /v1/modelskutanga. Haidi key uye inodzosa JSON list pfupi.
Matambudziko e-connection
| Chiratidzo | Chikonzero nekugadzirisa |
|---|---|
Connection ku-127.0.0.1:9050 kana 127.0.0.1:4444 inorambwa | Hapana Tor client kana I2P router iri kumhanya pamushini wako, kana inoteerera pa-port imwe. Tor Browser inopa SOCKS proxy yayo pa-port 9150. |
Could not resolve host ye-.onion name | Client yakaedza kugadzirisa zita pachayo. Shandisa --socks5-hostname mu-cURL ne-socks5h:// mu-proxy URL, kuti Tor client iritore. |
| I2P proxy inopindura ne-error page yayo | Router haisati yawana address. Router inoda maminitsi mashoma mushure mekutanga. Edza zvakare. |
401 ne-Missing authentication | Request yasvika isina key. Tumira header imwechete sepa-clear web. |
Error imwe neimwe yakasara yakafanana nepa-clear web. Zvikanganiso
Key yako pasina JavaScript
Shannon ine zvakare website isina JavaScript, inowanikwa pa-clear web, se-onion service uye se-eepsite. Peji rayo re-/keys rinoratidza API key yako uye rinokubvumira kuichinja, saka unogona kuwana key usina kubuda mu-Tor kana I2P. encrypted.shannon-ai.com/keys
Ma-address e-website iyoyo pa-ma-network ese matatu akanyorwa pano: Encrypted access