Тасвирҳо ва файлҳо
Тасвирҳоро бо паём фиристед: кадом моделҳо онҳоро қабул мекунанд, шаклҳои қабулшаванда ва маҳдудиятҳои онҳо.
POST https://api.shannon-ai.com/v1/chat/completions
Тасвир дар дохили паёми корбар, ҳамчун як қисми content-и он мерасад. Намуна файли маҳаллиро мехонад ва онро ҳамчун 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
}
} Кадом моделҳо тасвирро қабул мекунанд
| Моделҳо | Мехонад |
|---|---|
shannon-3, shannon-3-pro, shannon-3.1, shannon-3.1-pro | Тасвирҳо ва ҳуҷҷатҳо: PDF, Word, PowerPoint, Excel ва файлҳои матни оддӣ. |
shannon-1.6-lite, shannon-1.6-pro | Тасвирҳо. |
shannon-2-lite, shannon-2-pro | Тасвирҳо, дар дархостҳое, ки tools ё response_format-ро низ мефиристанд. |
Kimi-K3-3BIT-REAP, MiniMax-M3-3BIT-REAP, Kimi-K2.6-W4A16-AUTOROUND-REAP, inkling-W4A16-AUTOROUND-REAP, MiMo-V2.5-W8A16 | Тасвирҳо. |
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 | Матн. Ба дархост бо тасвир бо ҳолати 400 ҷавоб дода мешавад. |
shannon-coder-1 | Матн. |
GET /v1/models вуруди тасвирро барои ҳар id ҳамчун capabilities.vision ҳисобот медиҳад. Моделҳо ва нархҳо
- Моделҳои Shannon файлҳои паёми охирини корбарро мехонанд. Тасвирро дар паёме гузоред, ки дар бораи он мепурсад.
- Оилаи Shannon 3 ҳамчунин чанд тасвир ва ҳуҷҷати паёмҳои қаблии корбарро, агар дар дохили дархост фиристода шуда бошанд, дар назар нигоҳ медорад ва дар як дархост шумораи муайяни ҳадди аксари тасвирҳоро мехонад, ки аз аввал ҳисоб карда мешаванд.
- Моделҳои open-weight-и хостшуда тасвирҳои ҳар паёми гуфтугӯро мехонанд.
Шаклҳои қабулшаванда
Файл бо яке аз ду роҳ фиристода мешавад: дар дохили дархост ҳамчун base64, ё ҳамчун суроғае, ки API мегирад. Ҳар файл бо дархост меояд; API endpoint-и боркунӣ надорад.
| Endpoint | Дар дохили дархост (base64) | Тавассути суроға |
|---|---|---|
/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://…"}} |
Ҳамон паёми корбар дар ҳар формат:
{
"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 шакли
data:<media type>;base64,<data>-ро дорад. Қисми;base64ҳатмист. - Дар
/v1/chat/completionsва/v1/responsesimage_urlметавонад худи сатр ё объекти{"url": "…"}бошад. - Навъи файл аз data URL ё аз
media_typeгирифта мешавад. Бе он тасвир ҳамчунimage/pngхонда мешавад. - Файлҳои дохилӣ ба андозаи бадани дархост, ки то 32 MiB шуда метавонад, ҳисоб мешаванд.
- Барои мувофиқат қабул мешавад:
image_url.detail.
Маҳдудиятҳо барои файлҳои дурдаст
Вақте ки шумо суроға мефиристед, API файлро пеш аз кори модел дар доираи ин маҳдудиятҳо мегирад:
| Ҳад | Қоида |
|---|---|
| Андоза | То 8 MiB барои ҳар файл. |
| Вақт | 20 сония барои ҷавоб. |
| Редиректҳо | Ҳадди аксар 5. |
| Суроға | http:// ё https://, бе номи корбар ё рамз дар суроға, дар хосте бо суроғаи оммавӣ. |
| Ҷавоби хост | Ҳолат дар доираи 200 ва бадани холӣ набуда. Навъи файл аз Content-Type хонда мешавад. |
| Дархост мешавад ҳамчун | User-Agent: ShannonBot/1.0 (+https://shannon-ai.com) |
Тасвирҳо чӣ тавр бо токен ҳисоб мешаванд
Дар моделҳои open-weight-и хостшуда тасвир барои ҳар порчаи 28 × 28 пиксел як токенро ҳисоб мекунад: паҳно тақсим бар 28, ба боло мудаввар шуда, зарби баландӣ тақсим бар 28, ба боло мудаввар шуда. Натиҷа қисми usage.prompt_tokens аст ва ҳамчун вуруд ҳисоб карда мешавад.
- 1024 × 1024
- 1,369 токен
- 1920 × 1080
- 2,691 токен
- 512 × 512
- 361 токен
- Тасвири дурдаст аввал гирифта мешавад, бинобар ин андозаи воқеии он ҳисоб карда мешавад.
- Тасвире, ки андозаашро хондан мумкин нест, 1,024 токен ҳисоб мешавад.
- Endpoint-ҳои ҳисобкунӣ ҳамин қоидаро барои data URL-ҳо истифода мебаранд. Онҳо суроғаи дурдастро намегиранд ва онро ҳамчун 1,024 токен ҳисоб мекунанд. Ҳисоби токенҳо
- Барои модели Shannon он чиро, ки дархост бо тасвирҳо арзиш кард, аз
usageдар ҷавоб бихонед.
Ҳуҷҷатҳо ва дигар файлҳо
Оилаи Shannon 3 (shannon-3, shannon-3-pro, shannon-3.1, shannon-3.1-pro) ҳуҷҷатҳоро низ мехонад. Матни ҳуҷҷат берун оварда мешавад ва бо паёми шумо ба модел дода мешавад.
| Ҳуҷҷат | Навъи медиа |
|---|---|
application/pdf | |
| Word | application/vnd.openxmlformats-officedocument.wordprocessingml.document |
| PowerPoint | application/vnd.openxmlformats-officedocument.presentationml.presentation |
| Excel | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
Ҳуҷҷат қисми паёми корбар аст, мисли тасвир:
| Endpoint | Дар дохили дархост (base64) | Тавассути суроға |
|---|---|---|
/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."}
]
}
]
} - Навъи воқеии медиаи файлро диҳед. Бе он ҳуҷҷат ҳамчун
application/pdfхонда мешавад. - Файли матни оддӣ, ба монанди CSV, ҳамчун матн хонда мешавад ва ба ҳамин тариқ замима карда мешавад.
- Вақте ки ҳуҷҷатро хондан мумкин нест, ё файл навъи дигар дорад, ба модел ин гуфта мешавад ва он метавонад онро дар ҷавоби худ бигӯяд. Ҳолат ҳамоно
200аст. - Дар ҳар модели дигар қисми ҳуҷҷат аз он чи модел мехонад, хориҷ карда мешавад ва ба дархост аз рӯи боқимонда ҷавоб дода мешавад.
- Ҳуҷҷате, ки бо суроға фиристода шудааст, бо маҳдудиятҳои файлҳои дурдаст дар боло гирифта мешавад.
Хатогиҳо
| Ҳолат | Навъ | Паём | Кай |
|---|---|---|---|
400 | invalid_request_error | <id> does not accept image input | Тасвир ба модели open-weight-и хостшуда фиристода шуд, ки танҳо матнро қабул мекунад. Аз балансатон чизе гирифта намешавад. |
400 | invalid_request_error | audio and video input are not supported by any hosted model | Қисми аудио ё видео ба модели open-weight-и хостшуда фиристода шуд. |
413 | invalid_request_error | Failed to buffer the request body: … | Бадани дархост бо файлҳои дохилиаш аз 32 MiB калонтар аст. Хатогӣ code: "request_too_large"-ро дорад. |
Модели Shannon бо ҳолати 200 ҷавоб медиҳад, дархост ҳар файле дошта бошад: қисме, ки намехонад, хориҷ карда мешавад. Идораи хатогиҳо