Перейти к основному содержимому

Anthropic

Claude — семейство передовых языковых моделей от Anthropic для решения задач анализа, генерации текста и программирования. Подробнее о моделях можно узнать в документации Anthropic.

к сведению

Доступна Claude Opus 4.8 — новейшая и самая мощная версия с непревзойденными возможностями рассуждения.

Caila Anthropic Provider предоставляет нативный доступ к API Anthropic. Вы можете использовать привычные инструменты и официальные SDK, заменив только базовый URL. Сервис доступен в РФ с оплатой в рублях.

Поддерживаемые API:

предупреждение

Методы Files API, в частности метод загрузки файлов POST /v1/files, не поддерживаются.

Быстрый старт

  1. Для запросов потребуется API-ключ. Сгенерируйте его в разделе API-ключи.

  2. Отправьте первый запрос.

    • Адрес для запросов: https://caila.io/api/anthropic.
    • Укажите свой API-ключ Caila в заголовке x-api-key.
    • Добавьте заголовок anthropic-version: 2023-06-01.

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

    curl https://caila.io/api/anthropic/v1/messages \
    -H "Content-Type: application/json" \
    -H "x-api-key: <your_Caila_api_key>" \
    -H "anthropic-version: 2023-06-01" \
    -d '{
    "model": "claude-opus-4-8",
    "max_tokens": 1024,
    "messages": [
    {"role": "user", "content": "Привет! Расскажи о себе."}
    ]
    }'

Messages

Messages — это основной интерфейс для взаимодействия с моделями Claude.

Базовый запрос: генерация текста

Отправка одиночного сообщения модели. Необходимо указать используемую модель (model) и массив сообщений (messages), который содержит роль user и текст.

curl https://caila.io/api/anthropic/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-4-8",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Что такое машинное обучение?"}
]
}'

Использование системного промта

Поле system позволяет задать глобальный контекст, роль или ограничения для модели. Это инструкция, которой модель руководствуется при генерации ответа. Поле находится на верхнем уровне JSON, вне массива messages.

curl https://caila.io/api/anthropic/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-4-8",
"max_tokens": 1024,
"system": "Ты — опытный Python-разработчик. Отвечай кратко и только кодом.",
"messages": [
{"role": "user", "content": "Как отсортировать список?"}
]
}'

Потоковая передача (стриминг)

Для получения ответа по мере генерации используйте параметр "stream": true. Сервис будет возвращать события Server-Sent Events (SSE). Это необходимо для создания отзывчивых интерфейсов с эффектом «печатания».

curl https://caila.io/api/anthropic/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-4-8",
"max_tokens": 1024,
"stream": true,
"messages": [
{"role": "user", "content": "Напиши короткое эссе о природе."}
]
}'

Анализ изображений (vision)

Claude обладает мультимодальными возможностями. В массиве content можно передавать не только текст, но и объекты типа image (в формате base64 или URL).

curl https://caila.io/api/anthropic/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-4-8",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "base64",
"media_type": "image/jpeg",
"data": "/9j/4AAQSkZJRg..."
}
},
{
"type": "text",
"text": "Опиши, что изображено на картинке."
}
]
}
]
}'

Диалог с историей сообщений

API не хранит состояние диалога (stateless). Чтобы модель «помнила» предыдущие реплики, необходимо передавать всю историю переписки в каждом новом запросе, чередуя роли user и assistant.

curl https://caila.io/api/anthropic/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-4-8",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Столица Франции?"},
{"role": "assistant", "content": "Париж."},
{"role": "user", "content": "А какое там население?"}
]
}'

Подсчет токенов

Вспомогательный метод для оценки размера запроса в токенах. Полезен для предварительного расчета стоимости или проверки на превышение контекстного окна.

curl https://caila.io/api/anthropic/v1/messages/count_tokens \
-H "Content-Type: application/json" \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-4-8",
"messages": [
{"role": "user", "content": "Привет, как дела?"}
]
}'

Batches: пакетная асинхронная обработка

Batches API предназначен для обработки больших объемов данных: до 10 000 запросов в пакете. Запросы выполняются асинхронно, что часто дешевле стандартного синхронного вызова.

Создание пакетного запроса

Передайте массив запросов в поле requests. Обязательно указывайте custom_id для каждого элемента, чтобы сопоставить результаты с исходными данными после обработки.

curl https://caila.io/api/anthropic/v1/messages/batches \
-H "Content-Type: application/json" \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01" \
-d '{
"requests": [
{
"custom_id": "req-001",
"params": {
"model": "claude-opus-4-8",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "Как работает квантовый компьютер?"}]
}
},
{
"custom_id": "req-002",
"params": {
"model": "claude-opus-4-8",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "Напиши SQL-запрос для отбора активных пользователей"}]
}
}
]
}'

Проверка статуса

Позволяет узнать состояние обработки по batch_id. Когда поле processing_status примет значение ended, результаты можно скачивать.

curl https://caila.io/api/anthropic/v1/messages/batches/<batch_id> \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01"

Получение результатов

После завершения обработки пакета (processing_status принимает значение ended) можно получить результаты. Каждый результат содержит custom_id для сопоставления с исходным запросом.

Известная проблема

Получение результата с помощью стандартного метода SDK messages.batches.results() временно недоступно. Используйте прямой HTTP-запрос к https://caila.io/api/anthropic.

curl https://caila.io/api/anthropic/v1/messages/batches/<batch_id>/results \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01"

Отмена обработки

Прерывает выполнение пакета запросов, если он еще находится в процессе обработки.

Известная проблема

Отмена с помощью стандартного метода SDK messages.batches.cancel() временно недоступна. Используйте прямой HTTP-запрос к https://caila.io/api/anthropic.

curl -X POST https://caila.io/api/anthropic/v1/messages/batches/<batch_id>/cancel \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01"
-d '{}'

Получение списка пакетов

Возвращает историю созданных вами пакетов.

curl https://caila.io/api/anthropic/v1/messages/batches \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01"

Models

Возвращает список идентификаторов моделей, доступных вашему аккаунту Caila.

Известная проблема

Получение списка моделей с помощью стандартного метода SDK models.list() временно недоступно. Используйте прямой HTTP-запрос к https://caila.io/api/anthropic. Формат ответа отличается от API Anthropic.

curl https://caila.io/api/anthropic/v1/models \
-H "x-api-key: <your_Caila_api_key>" \
-H "anthropic-version: 2023-06-01"

Стоимость обращения к моделям

Актуальные цены представлены на MLOps-платформе в разделе Цены моделей.

Дополнительные ресурсы