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

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-платформе в разделе Цены моделей.

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