Pwyntiau terfyn wedi'u hamgryptio, Tor ac I2P
Cyhoeddir yr API hefyd fel gwasanaeth onion Tor ac eepsite I2P. Yr un llwybrau, yr un allwedd; dim ond yr URL sylfaen a'r dirprwy sy'n newid.
URLau sylfaen
Mae pedwar cyfeiriad yn arwain at yr un API. Defnyddiwch yr un sy'n addas i'ch rhwydwaith, gyda'r un allwedd API a'r un ceisiadau.
| Rhwydwaith | URL sylfaen | Sut rydych yn ei gyrraedd |
|---|---|---|
| Gwe agored | https://api.shannon-ai.com/v1 | Yn uniongyrchol, dros HTTPS. |
| Drych wedi'i amgryptio | https://api-encrypted.shannon-ai.com/v1 | Yn uniongyrchol, dros HTTPS. Ail enw gwesteiwr ar gyfer yr un API. |
| Tor (gwasanaeth onion) | http://shannonmd773o5vxz75byha5rkea7nzr3srotw46uwythq3pjl6y4cad.onion/v1 | Drwy gleient Tor: dirprwy SOCKS5, yn rhagosodedig ar 127.0.0.1:9050. |
| I2P (eepsite) | http://acvnvkdea4xaczzjap7chysqqi4kkvp2eorfwkasindzmjpa47da.b32.i2p/v1 | Drwy lwybrydd I2P: dirprwy HTTP, yn rhagosodedig ar 127.0.0.1:4444. |
- Mae SDK OpenAI yn cymryd yr URL sylfaen fel y dangosir, gyda
/v1. Mae SDK Anthropic yn ei gymryd heb/v1. - I wirio cyfeiriad, darllenwch benawdau ateb
https://api.shannon-ai.com: maeOnion-Locationyn cario'r cyfeiriad onion acX-I2P-Locationy cyfeiriad I2P. Mae'r cyfeiriad onion yn dechrau gydashannon.
Pa lwybrau sy'n gweithio
Mae pob llwybr /v1 yn ateb ar bob un o'r pedwar cyfeiriad:
POST /v1/chat/completionsPOST /v1/responsesPOST /v1/messagesPOST /v1/messages/count_tokensPOST /v1/tokenizeGET /v1/models
Nid oes angen allwedd ar GET /v1/models, sy'n ei wneud yn brawf cyflym bod eich dirprwy yn cyrraedd yr API.
Beth sydd yr un fath a beth sy'n wahanol
| Eitem | Yr un peth? | Manylyn |
|---|---|---|
| Llwybrau, meysydd cais, atebion, gwallau | Yr un peth | Yr un peth ar bob cyfeiriad. Nid oes unrhyw lwybr yn ymddwyn yn wahanol yn ôl enw'r gwesteiwr. |
| Allwedd API | Yr un peth | Mae un allwedd yn gweithio ar bob cyfeiriad, fel Authorization: Bearer neu x-api-key. Ni ddarllenir cwcis byth ar /v1. |
| Balans a therfynau | Yr un peth | Yr un balans a'r un terfyn o 120 cais y funud. Cyfrifir y ddau fesul cyfrif, nid fesul cyfeiriad. |
| Maint y cais | Yr un peth | Hyd at 32 MiB am bob corff cais. |
| Cynllun | Yn wahanol | https:// ar y we agored ac ar y drych. http:// ar y cyfeiriadau .onion a .b32.i2p, lle mae'r rhwydwaith ei hun yn amgryptio'r cysylltiad o un pen i'r llall. |
| Dirprwy | Yn wahanol | Dim ar y we agored. Dirprwy SOCKS5 ar gyfer Tor, dirprwy HTTP ar gyfer I2P. Rhaid i'r dirprwy ddatrys yr enw, nid eich peiriant. |
| Cyflymder | Yn wahanol | Mae'r ddau rwydwaith yn ychwanegu oedi at bob beit. I2P yw'r arafaf o'r ddau. |
Disgrifir balans a therfynau ar eu tudalen eu hunain. Terfynau a balans
cURL drwy Tor
Rhedwch gleient Tor ar eich peiriant. Mae'n cynnig dirprwy SOCKS5 ar 127.0.0.1:9050. Mae --socks5-hostname yn rhoi'r enw .onion i'r dirprwy hwnnw.
# 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 drwy I2P
Rhedwch lwybrydd I2P ar eich peiriant. Mae'n cynnig dirprwy HTTP ar 127.0.0.1:4444, sy'n cymryd yr enw .b32.i2p fel y mae.
# 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"}]
}' URL sylfaen SDK
Mae SDK angen dau newid: URL sylfaen y rhwydwaith, a chleient HTTP sy'n mynd drwy'r dirprwy. Yn Python mae'r ddau SDK swyddogol yn cymryd cleient httpx. Ar gyfer dirprwy SOCKS gosodwch 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) Ffrydio a keep-alive ar gysylltiadau araf
Mae ffrydio'n gweithio dros y ddau rwydwaith. Tra bydd ffrwd ar agor a heb ddim i'w anfon gan y model eto, mae'r API yn anfon keep-alive, fel nad yw'r cysylltiad yn edrych yn farw i ddirprwy nac i'ch cleient.
| Pwynt terfyn | Keep-alive ar ffrwd agored | Anfonwyd ar gyfer |
|---|---|---|
/v1/chat/completions | Llinell sylw (mae'n dechrau gyda :) bob 15 eiliad. | Pob model |
/v1/messages | Digwyddiad event: ping, neu linell sylw, bob 15 eiliad. | Pob model |
/v1/responses | Llinell sylw bob 15 eiliad. | Modelau pwysau agored a gynhelir |
- Anfonwch
"stream": true. Mae ateb wedi'i ffrydio yn dechrau cyrraedd cyn gynted ag y bydd y model yn ysgrifennu, ac mae'r keep-alive yn dangos bod y cais yn dal i gael ei brosesu. Nid yw ateb heb ei ffrydio yn anfon dim nes bod yr ateb cyfan yn barod. - Rhowch derfyn amser darllen hir i'r cleient. Mae'r enghreifftiau'n defnyddio 600 eiliad. Gall terfyn amser byrrach na 15 eiliad ddod â ffrwd i ben rhwng dau keep-alive.
- Gadewch i'ch darllenydd SSE hepgor llinellau sylw a digwyddiadau
ping. Mae'r SDKs yn gwneud hyn eisoes. - Peidiwch ag ailanfon cais y funud y mae cysylltiad yn gollwng. Mae cais a gyrhaeddodd yr API yn rhedeg hyd ei ddiwedd ac yn cael ei gyfrif, hefyd pan fo'r cysylltiad wedi mynd.
- Profwch y llwybr gyda
GET /v1/modelsyn gyntaf. Nid oes angen allwedd arno ac mae'n dychwelyd rhestr JSON fer.
Problemau cysylltu
| Symptom | Achos a datrysiad |
|---|---|
Gwrthodir y cysylltiad â 127.0.0.1:9050 neu 127.0.0.1:4444 | Nid oes cleient Tor na llwybrydd I2P yn rhedeg ar eich peiriant, neu mae'n gwrando ar borth arall. Mae Tor Browser yn cynnig ei ddirprwy SOCKS ar borth 9150. |
Could not resolve host ar gyfer yr enw .onion | Ceisiodd y cleient ddatrys yr enw ei hun. Defnyddiwch --socks5-hostname yn cURL a socks5h:// mewn URL dirprwy, fel bod y cleient Tor yn ei ddatrys. |
| Mae'r dirprwy I2P yn ateb gyda'i dudalen gwall ei hun | Nid yw'r llwybrydd wedi dod o hyd i'r cyfeiriad eto. Mae llwybrydd angen ychydig funudau ar ôl iddo ddechrau. Rhowch gynnig arall arni. |
401 gyda Missing authentication | Cyrhaeddodd y cais heb allwedd. Anfonwch yr un pennawd ag ar y we agored. |
Mae pob gwall arall yr un fath ag ar y we agored. Rheoli gwallau
Eich allwedd heb JavaScript
Mae gan Shannon hefyd wefan heb JavaScript, y gellir ei chyrraedd ar y we agored, fel gwasanaeth onion ac fel eepsite. Mae ei thudalen /keys yn dangos eich allwedd API ac yn gadael i chi ei chylchdroi, felly gallwch gael allwedd heb adael Tor nac I2P. encrypted.shannon-ai.com/keys
Rhestrir cyfeiriadau'r wefan honno ar bob un o'r tri rhwydwaith yma: Mynediad wedi'i amgryptio