Zithunzi ndi ma file
Tumizani zithunzi ndi message: ma model omwe amazilandira, mitundu yovomerezeka ndi malire ake.
POST https://api.shannon-ai.com/v1/chat/completions
Chithunzi chimayenda mkati mwa message ya user, ngati part imodzi ya content yake. Chitsanzo chimawerenga file ya pa kompyuta ndikuitumiza ngati data URL.
import base64
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY", base_url="https://api.shannon-ai.com/v1")
with open("photo.jpg", "rb") as f:
image = base64.b64encode(f.read()).decode()
response = client.chat.completions.create(
model="shannon-3",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "What is in this picture?"},
{"type": "image_url", "image_url": {"url": "data:image/jpeg;base64," + image}},
],
}],
)
print(response.choices[0].message.content) import fs from "node:fs";
import OpenAI from "openai";
const client = new OpenAI({ apiKey: "YOUR_API_KEY", baseURL: "https://api.shannon-ai.com/v1" });
const image = fs.readFileSync("photo.jpg").toString("base64");
const response = await client.chat.completions.create({
model: "shannon-3",
messages: [{
role: "user",
content: [
{ type: "text", text: "What is in this picture?" },
{ type: "image_url", image_url: { url: "data:image/jpeg;base64," + image } },
],
}],
});
console.log(response.choices[0].message.content); # Linux: base64 -w0 photo.jpg macOS: base64 -i photo.jpg
IMAGE=$(base64 -w0 photo.jpg)
curl https://api.shannon-ai.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d @- <<EOF
{
"model": "shannon-3",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "What is in this picture?"},
{"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,${IMAGE}"}}
]
}]
}
EOF {
"id": "chatcmpl-8d1f3a5c7e9b4d2f6a8c0e2b4d6f8a1c",
"object": "chat.completion",
"created": 1791590400,
"model": "shannon-3",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "A grey cat asleep on a windowsill, with a potted fern beside it.",
"reasoning_content": null
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 286,
"completion_tokens": 19,
"total_tokens": 305
}
} Ma model omwe amalandira zithunzi
| Ma model | Imawerenga |
|---|---|
shannon-3, shannon-3-pro, shannon-3.1, shannon-3.1-pro | Zithunzi, ndi zikalata: PDF, Word, PowerPoint, Excel ndi ma file a text yosavuta. |
shannon-1.6-lite, shannon-1.6-pro | Zithunzi. |
shannon-2-lite, shannon-2-pro | Zithunzi, m'ma pempho omwe amatumizanso tools kapena response_format. |
Kimi-K3-3BIT-REAP, MiniMax-M3-3BIT-REAP, Kimi-K2.6-W4A16-AUTOROUND-REAP, inkling-W4A16-AUTOROUND-REAP, MiMo-V2.5-W8A16 | Zithunzi. |
DeepSeek-V4-Pro-0813-3BIT-REAP, GLM-5.2-3BIT-REAP, Nemotron3Ultra-3BIT-REAP, DeepSeek-V4-Flash-0731-W4A16-AUTOROUND-REAP, Laguna-S-2.1-W4A16-AUTOROUND-REAP, MiMo-V2.5-Pro-W8A16, Hy3-W8A16 | Text. Pempho lokhala ndi chithunzi limayankhidwa ndi status 400. |
shannon-coder-1 | Text. |
GET /v1/models imanena input ya zithunzi pa id iliyonse ngati capabilities.vision. Ma model ndi mitengo
- Ma model a Shannon amawerenga ma file a message yomaliza ya user. Ikani chithunzi mu message yomwe ikufunsa za icho.
- Banja la Shannon 3 limasunganso zithunzi ndi zikalata zochepa za ma message akale a user poonekera pamene zinatumizidwa mkati mwa pempho, ndipo limawerenga chiwerengero chokwanira cha zithunzi pa pempho, kuwerengera kuyambira choyamba.
- Hosted open-weight model zimawerenga zithunzi za message iliyonse ya zokambirana.
Mitundu yovomerezeka
File imatumizidwa m'njira imodzi mwa ziwiri: mkati mwa pempho ngati base64, kapena ngati adilesi yomwe API imatenga. File iliyonse imayenda ndi pempho; API ilibe endpoint yotsitsa ma file.
| Endpoint | Mu pempho (base64) | Ndi adilesi |
|---|---|---|
/v1/chat/completions | {"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,…"}} | {"type": "image_url", "image_url": {"url": "https://…"}} |
/v1/responses | {"type": "input_image", "image_url": "data:image/jpeg;base64,…"} | {"type": "input_image", "image_url": "https://…"} |
/v1/messages | {"type": "image", "source": {"type": "base64", "media_type": "image/jpeg", "data": "…"}} | {"type": "image", "source": {"type": "url", "url": "https://…"}} |
Message yomweyo ya user mu mtundu uliwonse:
{
"role": "user",
"content": [
{"type": "text", "text": "What is in this picture?"},
{
"type": "image_url",
"image_url": {
"url": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD…"
}
}
]
} {
"role": "user",
"content": [
{"type": "input_text", "text": "What is in this picture?"},
{
"type": "input_image",
"image_url": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD…"
}
]
} {
"role": "user",
"content": [
{"type": "text", "text": "What is in this picture?"},
{
"type": "image",
"source": {
"type": "base64",
"media_type": "image/jpeg",
"data": "/9j/4AAQSkZJRgABAQAAAQABAAD…"
}
}
]
} - Data URL ili ndi mtundu
data:<media type>;base64,<data>. Gawo la;base64ndilofunika. - Pa
/v1/chat/completionsndi/v1/responses,image_urlikhoza kukhala string yokha kapena object{"url": "…"}. - Mtundu wa file umachokera ku data URL kapena ku
media_type. Popanda, chithunzi chimawerengedwa ngatiimage/png. - Ma file amkati amawerengedwa mu kukula kwa body ya pempho, komwe kumatha kufika 32 MiB.
- Imalandiridwa pofuna kugwirizana:
image_url.detail.
Malire a ma file akutali
Mukatumiza adilesi, API imatenga file model isanayende, motsatira malire awa:
| Malire | Lamulo |
|---|---|
| Kukula | Mpaka 8 MiB pa file iliyonse. |
| Nthawi | Masekondi 20 kuyankha. |
| Ma redirect | Osapitirira 5. |
| Adilesi | http:// kapena https://, popanda dzina la user kapena password mu adilesi, pa host yokhala ndi adilesi yapagulu. |
| Yankho la host | Status ya mu 200 range ndi body yosakhala yopanda kanthu. Mtundu wa file umawerengedwa kuchokera ku Content-Type. |
| Imapemphedwa ngati | User-Agent: ShannonBot/1.0 (+https://shannon-ai.com) |
Momwe zithunzi zimawerengedwera mu ma token
Pa hosted open-weight model, chithunzi chimawerengedwa ngati token imodzi pa patch iliyonse ya ma pixel 28 × 28: m'lifupi mogawidwa ndi 28, kuzunguliridwa m'mwamba, kuchulukitsidwa ndi kutalika kogawidwa ndi 28, kuzunguliridwa m'mwamba. Zotsatira zake ndi gawo la usage.prompt_tokens ndipo zimaperekedwa mtengo ngati input.
- 1024 × 1024
- 1,369 ma token
- 1920 × 1080
- 2,691 ma token
- 512 × 512
- 361 ma token
- Chithunzi chakutali chimatengedwa poyamba, choncho kukula kwake kwenikweni kumawerengedwa.
- Chithunzi chomwe kukula kwake sikungawerengedwe chimawerengedwa ngati ma token 1,024.
- Ma endpoint owerengera amagwiritsa ntchito lamulo lomwelo pa ma data URL. Satenga adilesi yakutali ndipo amaiwerenga ngati ma token 1,024. Kuwerenga ma token
- Pa model ya Shannon, werengani zomwe pempho lokhala ndi zithunzi lawononga kuchokera ku
usagemu yankho.
Zikalata ndi ma file ena
Banja la Shannon 3 (shannon-3, shannon-3-pro, shannon-3.1, shannon-3.1-pro) limawerenganso zikalata. Text ya chikalata imachotsedwa ndikuperekedwa kwa model pamodzi ndi message yanu.
| Chikalata | Media type |
|---|---|
application/pdf | |
| Word | application/vnd.openxmlformats-officedocument.wordprocessingml.document |
| PowerPoint | application/vnd.openxmlformats-officedocument.presentationml.presentation |
| Excel | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
Chikalata ndi part ya message ya user, monga chithunzi:
| Endpoint | Mu pempho (base64) | Ndi adilesi |
|---|---|---|
/v1/chat/completions, /v1/messages | {"type": "document", "source": {"type": "base64", "media_type": "application/pdf", "data": "…"}} | {"type": "document", "source": {"type": "url", "url": "https://…"}} |
/v1/responses | {"type": "input_file", "file_data": "data:application/pdf;base64,…"} | {"type": "input_file", "file_url": "https://…"} |
{
"model": "shannon-3",
"messages": [
{
"role": "user",
"content": [
{
"type": "document",
"source": {
"type": "base64",
"media_type": "application/pdf",
"data": "JVBERi0xLjcKJeLjz9MK…"
}
},
{"type": "text", "text": "Summarise this report in five points."}
]
}
]
} {
"model": "shannon-3",
"input": [
{
"role": "user",
"content": [
{
"type": "input_file",
"file_data": "data:application/pdf;base64,JVBERi0xLjcKJeLjz9MK…"
},
{
"type": "input_text",
"text": "Summarise this report in five points."
}
]
}
]
} {
"model": "shannon-3",
"messages": [
{
"role": "user",
"content": [
{
"type": "document",
"source": {
"type": "base64",
"media_type": "application/pdf",
"data": "JVBERi0xLjcKJeLjz9MK…"
}
},
{"type": "text", "text": "Summarise this report in five points."}
]
}
]
} - Perekani media type yeniyeni ya file. Popanda, chikalata chimawerengedwa ngati
application/pdf. - File ya text yosavuta, monga CSV, imawerengedwa ngati text ndikulumikizidwa mofanana.
- Chikalata chikalephera kuwerengedwa, kapena file ikakhala ya mtundu wina, model imauzidwa ndipo imatha kunena m'yankho lake. Status imakhalabe
200. - Pa model ina iliyonse, part ya chikalata imasiyidwa pa zomwe model imawerenga, ndipo pempho limayankhidwa kuchokera ku zotsalazo.
- Chikalata chotumizidwa ndi adilesi chimatengedwa motsatira malire a ma file akutali omwe ali pamwambapa.
Zolakwika
| Status | Mtundu | Message | Liti |
|---|---|---|---|
400 | invalid_request_error | <id> does not accept image input | Chithunzi chinatumizidwa ku hosted open-weight model yomwe imalandira text yokha. Palibe chomwe chimachotsedwa pa balance yanu. |
400 | invalid_request_error | audio and video input are not supported by any hosted model | Part ya audio kapena video inatumizidwa ku hosted open-weight model. |
413 | invalid_request_error | Failed to buffer the request body: … | Body ya pempho, pamodzi ndi ma file ake amkati, ndi yayikulu kuposa 32 MiB. Cholakwika chimanyamula code: "request_too_large". |
Model ya Shannon imayankha ndi status 200 mosasamala ma file omwe pempho lili nawo: part yomwe siiwerenga imasiyidwa. Zolakwika