Ограничения и баланс
Всяка заявка се обслужва еднакво. Без нива на честота. Без отделна API квота. Вече сте платили за своите токени — използвайте ги колкото бързо искате.
Тази страница обяснява от какво се състои балансът Ви, какво резервира и струва една заявка, колко заявки можете да изпратите и малкото ограничения, които може да срещне една заявка.
- стойност на 1M токена баланс
- $5.00
- дневният лимит се обновява
- 00:00 UTC
- защита от наводняване, на акаунт
- 120 заявки / мин
Как се обслужват заявките
- Без нива на честота — Едно правило ограничава колко бързо могат да пристигат заявките и то е еднакво за всеки акаунт и всеки план: 120 заявки в минута. Няма ограничение за токени в минута.
- Без отделна API квота — API харчи същия баланс като чата. Планът задава размера на днешния лимит. Той не задава честота на заявките.
- Колкото бързо искате — Заявките, изпратени паралелно, се приемат и чакат на опашка. Не се отхвърлят заради паралелността.
Вашият баланс
Балансът Ви се отчита в токени. 1,000,000 токена баланс струват $5.00, а всяка цена на страницата Models & pricing е ставка спрямо тази стойност.
Във всеки момент балансът е сборът от две части.
- Днешен лимит на плана — Брой токени, зададен от Вашия план. Обновява се всеки ден в 00:00 UTC. Това, което остане в края на деня, не се прехвърля.
- Закупени кредити — Токени, които сте купили като пакет. Кредитът не изтича и важи за всеки план, включително Free.
| План | Токени на ден | Стойност |
|---|---|---|
| Free | 30,000 | $0.15 |
| Plus | 80,000 | $0.40 |
| Standard | 265,000 | $1.325 |
| Pro | 665,000 | $3.325 |
- Ред на разходване — Всяка заявка първо изразходва днешния лимит на плана. Закупеният кредит се използва само за онова, което надхвърля лимита през този ден.
- Чатът и API го споделят — Има един баланс на акаунт. API ключът харчи от баланса на акаунта, на който принадлежи, по същите цени като в чата.
- Пакети — Кредитът се продава в пакети от 1,000,000 ($5.00), 2,000,000 ($10.00) и 5,000,000 ($25.00) токена или като сума по Ваш избор от 1,000,000 до 100,000,000 токена при $5.00 на 1,000,000.
Дозареждане на кредити Смяна на план
Какво резервира една заявка и колко струва
- Резервиране — Когато пристигне заявка, тя резервира своя изходен бюджет от баланса Ви:
max_tokensна/v1/chat/completionsи/v1/messages,max_output_tokensна/v1/responses./v1/chat/completionsчете иmax_completion_tokens. Стойността по подразбиране е 4,096, а диапазонът е от 1 до 65,536. - Приемане — Заявката се приема само ако резервацията се побира в остатъка от баланса Ви. Баланс, който е над нула, но по-малък от изходния бюджет, получава отговора
Quota exceeded. Изпратете по-малъкmax_tokens, за да използвате остатъка. - Уреждане — Когато отговорът е завършен, резервацията се заменя с реалната такса. Таксата може да е по-ниска или по-висока от резервацията.
- Връщане — Заявка, която завършва със статус за грешка, връща резервацията си изцяло.
Реалната такса зависи от семейството на модела.
| Модели | Какво се таксува |
|---|---|
| Модели на Shannon | usage.total_tokens по цената на модела на 1M. Входът и изходът имат една ставка. |
| Хоствани open-weight модели | Некеширан вход по ставката за вход, кеширан вход по ставката за кеширан, изход по ставката за изход. |
Сумата в USD се взема от баланса Ви в токени по $5.00 на 1,000,000, закръглена до цял токен.
Броенето на токени с POST /v1/tokenize или POST /v1/messages/count_tokens е безплатно и не резервира нищо. Броене на токени
Къде да видите баланса и употребата
Страницата Keys & usage показва какво можете да похарчите в момента, днешния лимит на плана, закупения кредит и разходите за API през последните 30 дни. Под това изброява всяка заявка, направена с Вашия ключ: време, ендпоинт, модел, кеширан вход, таксувани токени и цена. Keys & usage
Всеки отговор носи и обект usage с броя токени на това извикване.
| Ендпоинт | Полета на usage | Добавено от хостваните open-weight модели |
|---|---|---|
/v1/chat/completions | prompt_tokens, completion_tokens, total_tokens | prompt_tokens_details.cached_tokens, completion_tokens_details.reasoning_tokens |
/v1/messages | input_tokens, output_tokens | cache_read_input_tokens, cache_creation_input_tokens |
/v1/responses | input_tokens, output_tokens, total_tokens | input_tokens_details.cached_tokens, output_tokens_details.reasoning_tokens |
usageсъдържа броя токени на модела. Сумата, взета от баланса Ви, не е в отговора: тя е колоната Billed tokens в списъка със заявки в Keys & usage.- На
/v1/messagesс хостван open-weight моделinput_tokensе некешираната част от входа,cache_read_input_tokensе кешираната част, аcache_creation_input_tokensвинаги е0. - Стрийм на
/v1/chat/completionsносиusageв последния си фрагмент преди[DONE]. Стрийминг
Когато балансът свърши
Заявка, чиято резервация не се побира в баланса Ви, получава отговор със статус 429, тип rate_limit_error и съобщението по-долу. Нищо не се таксува. Същият отговор се изпраща и когато балансът е над нула, но по-малък от изходния бюджет на заявката.
{
"error": {
"type": "rate_limit_error",
"message": "Quota exceeded. Upgrade your plan at shannon-ai.com/plan"
}
} {
"type": "error",
"error": {
"type": "rate_limit_error",
"message": "Quota exceeded. Upgrade your plan at shannon-ai.com/plan"
}
} На /v1/responses обектът error може да съдържа и code и param, и двете null.
Какво можете да направите:
- Изчакайте следващия лимит на плана в 00:00 UTC.
- Дозаредете кредит. Кредитът се харчи след лимита на плана и не изтича. Дозареждане на кредити
- Преминете към план с по-голям дневен лимит. Смяна на план
- Изпратете по-малък
max_tokens, ако е останал някакъв баланс: тогава резервацията е по-малка.
Лимит на Shannon Coder за извиквания
shannon-coder-1 на /v1/chat/completions и /v1/messages се брои в извиквания, а не в токени. Всеки план включва определен брой извиквания на 4-часов прозорец. Една заявка е едно извикване.
| План | Извиквания на 4-часов прозорец |
|---|---|
| Free | 3 |
| Plus | 20 |
| Standard | 40 |
| Pro | 60 |
- Прозорците започват в 00:00, 04:00, 08:00, 12:00, 16:00, 20:00 UTC. Извикванията, които остават в края на прозореца, не се прехвърлят.
- Извикването се брои, когато заявката е приета, преди моделът да отговори. Заявка, която след това пропадне, пак се брои като извикване.
- Тези извиквания не резервират токени и не вземат нищо от баланса Ви. Списъкът със заявки в Keys & usage показва техния брой токени и стойността им по обявената цена.
- Стойността по подразбиране на
max_tokensзаshannon-coder-1на тези два ендпоинта е 65,536. - Когато няма останали извиквания, отговорът е със статус
429, типrate_limit_errorи съобщениеShannon Coder call quota reached. Upgrade your plan at shannon-ai.com/plan. - На
/v1/responsesshannon-coder-1няма лимит от извиквания: таксува се в токени от баланса Ви по $8.00 на 1M, като всеки друг модел.
Защита от наводняване
Един акаунт може да изпраща 120 заявки в минута. Това е единственото ограничение на честотата на заявките и е еднакво за всеки план. Съществува, за да спира наводняване, а не да забавя нормалната употреба.
- Минутата е фиксиран прозорец от 60 секунди, който се отваря с първата Ви заявка. Когато свърши, броенето започва отново от нула.
- Броенето е на акаунт, не на ключ и не на IP адрес. Смяната на ключа не отваря нов прозорец.
- 121-вата заявка в рамките на един прозорец получава отговор със статус
429, типrate_limit_errorи съобщениеToo many requests. Retry in <N>s.Nе броят секунди до края на прозореца, от 1 до 60. - Защитата от наводняване се проверява преди баланса. Заявка, която тя отхвърли, не резервира нищо и не струва нищо.
{
"error": {
"type": "rate_limit_error",
"message": "Too many requests. Retry in 37s."
}
} {
"type": "error",
"error": {
"type": "rate_limit_error",
"message": "Too many requests. Retry in 37s."
}
} | Заявка | Защита от наводняване |
|---|---|
POST /v1/chat/completions, POST /v1/messages, POST /v1/responses | Брои се, по една на заявка. |
GET /v1/models, POST /v1/tokenize, POST /v1/messages/count_tokens | Не се брои. |
shannon-coder-1 на /v1/chat/completions и /v1/messages | Брои се от лимита на Shannon Coder за извиквания. |
Заявка, получила 401, или 400 за непознат model | Не се брои. |
| Заявка, отхвърлена от защитата от наводняване | Брои се към прозореца. Нищо не се таксува. |
Паралелни заявки
Няма ограничение за броя заявки, които един акаунт има отворени едновременно, и няма грешка при паралелно изпращане. Заявките, които не могат да започнат веднага, чакат на опашка и се обслужват по ред.
- Всяка заявка се брои към 120-те в минута, когато пристигне, независимо дали по-ранните заявки са приключили.
- Всяка заявка държи собствената си резервация, докато приключи. Двадесет отворени заявки със стандартния изходен бюджет държат 20 × 4,096 = 81,920 токена от баланса. Ако резервациите заедно са по-големи от баланса Ви, следващата заявка получава отговора
Quota exceeded, макар приключилите извиквания да са щели да струват по-малко. По-малъкmax_tokensдържи по-малко. - Заявка без стрийминг не изпраща нищо, докато отговорът не е завършен, затова задайте на клиента си timeout, който покрива чакането. Стриймът държи връзката отворена, докато чака. Стрийминг
Ограничения на една заявка
| Лимит | Стойност | Важи за | При достигане на лимита |
|---|---|---|---|
| Тяло на заявката | 32 MiB (33,554,432 байта) | Всеки ендпоинт | Статус 413, тип invalid_request_error. |
Изходен бюджет: max_tokens, max_completion_tokens, max_output_tokens | От 1 до 65,536. По подразбиране 4,096; за shannon-coder-1 на /v1/chat/completions и /v1/messages стойността по подразбиране е 65,536. | Всеки модел, като сума, резервирана от баланса Ви. Като ограничение на дължината на отговора: хостваните open-weight модели, shannon-1.6-lite, shannon-1.6-pro и shannon-coder-1. | Стойност извън диапазона се премества до най-близкия край на диапазона. Без грешка. |
Последователности за спиране: stop, stop_sequences | 4 низа | Хоствани open-weight модели | Използват се първите 4 непразни низа. |
| Изображение или файл, зададен като URL | 8 MiB, прочетени в рамките на 20 секунди, най-много 5 пренасочвания, публичен адрес http или https | Всеки ендпоинт, който приема изображения или файлове | Заявката получава отговор без тази част. Без грешка. |
| Изображение или файл, изпратен вградено (base64) | Без собствен лимит. Брои се към тялото на заявката от 32 MiB. | Всеки ендпоинт, който приема изображения или файлове | Статус 413 за цялата заявка. |
text на POST /v1/tokenize | 4,000,000 байта | /v1/tokenize | Статус 413, тип invalid_request_error, съобщение text too long. |
messages на POST /v1/tokenize и тялото на POST /v1/messages/count_tokens | Тялото на заявката от 32 MiB | И двата ендпоинта за броене | Статус 413. |
| Контекстен прозорец | По модел: context_window в GET /v1/models | Всеки модел | Какво се случва с по-дълъг разговор, зависи от модела. Модели и цени |
Уеб търсения (web_search: true) | На план и ден: Free 3, Plus 30, Standard 50, Pro 60. Едно търсене се брои за заявка, чието търсене е намерило резултати. | Заявки, които задават web_search: true | Когато не е останало нито едно, заявката получава отговор без търсене. Без грешка. Вградено уеб търсене |
Грешки
Отговорите на тази страница. На /v1/messages същият обект error е обвит като {"type": "error", "error": {…}}.
| Статус | Тип | Съобщение | Кога и какво да направите |
|---|---|---|---|
429 | rate_limit_error | Quota exceeded. Upgrade your plan at shannon-ai.com/plan | Резервацията на заявката не се побира в баланса Ви. Изчакайте 00:00 UTC, дозаредете кредит, сменете плана или изпратете по-малък max_tokens. |
429 | rate_limit_error | Too many requests. Retry in <N>s. | Повече от 120 заявки в текущата минута. Изчакайте N секунди и изпратете отново. |
429 | rate_limit_error | Shannon Coder call quota reached. Upgrade your plan at shannon-ai.com/plan | Извикванията на Shannon Coder за текущия 4-часов прозорец са изчерпани. |
429 | rate_limit_error | Shannon routes are temporarily busy. Please retry. | В този момент моделът не може да приеме заявката. Изпратете я отново след кратка пауза. |
503 | api_error | Could not verify your quota right now. Please retry. | Балансът Ви не можа да бъде прочетен. Нищо не се таксува; изпратете заявката отново. На /v1/responses с модел на Shannon статусът е 500. |
413 | invalid_request_error | Тялото на заявката е по-голямо от 32 MiB. На ендпоинтите във формат OpenAI обектът error съдържа code: "request_too_large". | |
413 | invalid_request_error | text too long | text на POST /v1/tokenize е по-дълъг от 4,000,000 байта. |