Текстовая модель · anthropic

Claude Haiku 4.5

claude-haiku-4-5

Claude Haiku 4.5 — текстовая модель от Anthropic, доступная через единый Ranvik API. Контекстное окно — 200k токенов. Максимум выходных токенов за один запрос — 64k. Поддерживаемые возможности: document_understanding, function_calling, prompt_caching, streaming, vision.

от 224 ₽ / 1M

Технические характеристики

МодальностьТекстовая модель
Провайдерanthropic
Контекст200k токенов
Max output64k токенов
СтатусАктивна
ID для запросовclaude-haiku-4-5

Возможности

Prompt caching— Повторно используемые префиксы (системный промпт, документы) кэшируются — цена в 5-10× ниже.

Зачем

Если ты отправляешь один и тот же системный промпт + документы на каждом запросе — модель повторно тратит compute на их обработку. Prompt caching сохраняет эти токены и заряжает 10× меньше при попадании.

Базовая формула экономии:

  • Cache write — обычно 1.25× цены input (5-минутный TTL) или 2× (1-часовой).
  • Cache hit — 0.1× цены input.
  • Окупается с 2-3 повторений того же префикса в течение TTL.

Что кэшируется

Префикс должен быть идентичным byte-в-byte: системный промпт, статические документы, фиксированные few-shot примеры. Динамическая часть (юзер-промпт, переменные) идёт ПОСЛЕ кэшированной.

Когда использовать

  • RAG: документы в context каждого запроса (кэшируй документы).
  • Агенты: длинная инструкция системы (кэшируй её).
  • Few-shot prompting: фиксированные примеры (кэшируй блок примеров).

Особенности у Anthropic

Эксплицитный — нужно пометить блок cache_control: {"type": "ephemeral"}. До 4 cache breakpoints на запрос. TTL по умолчанию 5 минут; через cache_control: {"type": "ephemeral", "ttl": "1h"} — час (стоит 2× input).

"messages": [{
  "role": "user",
  "content": [
    {"type": "text", "text": "Длинная статья...",
     "cache_control": {"type": "ephemeral"}},
    {"type": "text", "text": "Резюмируй её в 3 предложениях"}
  ]
}]

usage.cache_creation_input_tokens и cache_read_input_tokens в ответе показывают что произошло.

Streaming (SSE)— Получение ответа по мере генерации — токен за токеном через Server-Sent Events.

Как работает

Передай stream: true в теле запроса — сервер вернёт SSE-поток с заголовком content-type: text/event-stream. Каждый чанк — строка вида data: {...}\n\n. Конец потока — data: [DONE]\n\n.

curl -N https://api.ranvik.ru/v1/chat/completions \
  -H "Authorization: Bearer rk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5",
    "messages": [{"role": "user", "content": "Привет"}],
    "stream": true,
    "stream_options": {"include_usage": true}
  }'

Каждый чанк содержит choices[0].delta — частичные данные. Последний чанк перед [DONE] (если включить stream_options.include_usage: true) содержит usage с реальным числом токенов — используй для биллинг-учёта на клиенте.

Когда использовать

  • Чат-интерфейсы, где важна перцептивная скорость отклика.
  • Длинные ответы (> 1000 токенов) — пользователь видит прогресс.
  • Streaming tool-calls — delta.tool_calls[i].function.arguments приходят инкрементально.

Когда НЕ использовать

  • Backend-to-backend интеграции, где нужен только финальный JSON — добавляет парсинг SSE без выгод.
  • Когда обязательно знать стоимость до отправки в БД — без include_usage затраты неизвестны.

Особенности у Anthropic

Anthropic SSE формат отличается — использует именованные эвенты (event: content_block_delta, event: message_stop). Наш OpenAI-совместимый shim делает перевод; если ходишь по /v1/messages (Anthropic-совместимый) — получаешь нативный формат.

Vision (анализ изображений)— Картинки на вход вместе с текстом — OCR, распознавание объектов, описание сцен, анализ графиков.

Как передать изображение

Через массив content в сообщении вместо строки. Поддерживается URL и base64 (data URI).

{
  "model": "gpt-5",
  "messages": [{
    "role": "user",
    "content": [
      {"type": "text", "text": "Что на этой схеме?"},
      {"type": "image_url", "image_url": {"url": "https://.../diagram.png"}}
    ]
  }]
}

Для base64: "url": "data:image/png;base64,iVBOR...". Размер ограничен ~20MB.

Биллинг изображений

Картинка считается как input-токены — точное число зависит от размера и detail. Грубо: 512×512 ≈ 250 токенов, 2048×2048 ≈ 1500. Минимизируй размер если нужно много кадров.

Что НЕ умеют vision-модели

  • Точные измерения (расстояния, размеры в пикселях).
  • Распознавание текста на сложных шрифтах при низком DPI — лучше OCR-модель.
  • Деанонимизация лиц / людей — модели отказываются.

Особенности у Anthropic

Использует тип image (не image_url):

{"type": "image", "source": {"type": "url", "url": "..."}}

Через base64"source": {"type": "base64", "media_type": "image/jpeg", "data": "..."}. PDF тоже передаётся через image-тип на Claude 4.x.

  • Document Understanding
  • Function Calling
  • Prompt Caching
  • Streaming
  • Vision

Цены

ЕдиницаЦена
за 1М cache read · ≤ 200k22.4 ₽
за 1М cache read · > 200k28 ₽
за 1М input · ≤ 200k224 ₽
за 1М input · > 200k280 ₽
за 1М cache write · ≤ 200k280 ₽
за 1М cache write · > 200k350 ₽
за 1М output · ≤ 200k1 120 ₽
за 1М output · > 200k1 400 ₽
web_search2.8 ₽

Цены указаны в рублях. Списываются с баланса проекта при каждом успешном запросе.

Поддерживаемые параметры

Параметры передаются вендору как есть (pure proxy) — мы не валидируем их у себя на стороне. Если вендор не примет — вернётся его ошибка.

ПараметрТипДиапазон / valuesDefaultОписание
max_tokensrequiredintegermin: 1 · max: 640004096 Максимум токенов в ответе. Обязателен.
temperaturenumbermin: 0 · max: 11 0 — детерминированно, 1 — креативно. Используйте либо temperature, либо top_p, не оба.
top_pnumbermin: 0 · max: 1 Nucleus sampling. Альтернатива temperature.
top_kintegermin: 0 Sample только из top-K наиболее вероятных токенов.
stop_sequencesarray Текстовые последовательности при которых генерация останавливается. stop_reason будет "stop_sequence".
thinkingobject Extended thinking config: {type:"enabled",budget_tokens:N≥1024} | {type:"disabled"} | {type:"adaptive"}. Только Opus/Sonnet 4.x.
toolsarray Tool definitions: custom + встроенные (code_execution, bash, text_editor, web_search). Каждый — {name, description?, input_schema}.
tool_choiceobject Управление выбором tool: "auto" | "any" | {type:"tool",name:"X"} | "none". Поддерживает disable_parallel_tool_use:bool.
service_tierenumauto, standard_only Priority vs standard capacity.
metadataobject {user_id: external UUID/hash без PII}.
streambooleanfalse SSE streaming.
messagesrequiredarray История сообщений. Массив объектов {role: "user"|"assistant", content: string|ContentBlock[]}. Content может содержать text, image, document, tool_use, tool_result блоки.
примеры значений
Примеры
[
  {
    "role": "user",
    "content": "Привет, как дела?"
  }
]
systemstring System prompt — описание роли модели и контекста. Можно передать строку или массив TextBlockParam (для prompt caching через cache_control).
примеры значений
Примеры
You are a helpful assistant who speaks in Russian.
mcp_serversarray Список MCP (Model Context Protocol) серверов для подключения. Каждый элемент — объект {name, url, authorization_token, tool_configuration}.
containerstring ID контейнера для code execution tool (REPL state persistence). Передаётся для продолжения работы в существующем контейнере.
output_formatobject Структурированный output format. Например {type: "json", schema: {...}} для JSON-schema-validated output.

Пример запроса

from anthropic import Anthropic

client = Anthropic(api_key="rk_live_...", base_url="https://api.ranvik.ru")
resp = client.messages.create(
    model="claude-haiku-4-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Привет!"}],
)
print(resp.content[0].text)

# ── С веб-поиском ──
resp = client.messages.create(
    model="claude-haiku-4-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Что нового в AI сегодня?"}],
    tools=[{"type": "web_search_20250305", "name": "web_search"}],
)
print(resp.content[0].text)

Замените rk_live_... на ваш ключ из кабинета.

О провайдере: Anthropic

Anthropic — компания основателей бывшей команды OpenAI, ориентированная на безопасный ИИ. Серия Claude известна большим контекстным окном, аккуратным следованием инструкциям и сильным тулюзом. Поддерживает prompt caching для экономии на повторяющемся системном промпте.

Официальный сайт: https://anthropic.com

Документация модели у вендора: https://docs.anthropic.com/en/docs/about-claude/models