Проекты в Claude: что это и как сделать такой же сценарий через API

Projects в claude.ai хранят инструкции, документы и историю чатов. Через API то же собирается из системного промпта, документов в контексте и кэша.

5 мин · · API-ключи · экономия

Когда спрашивают, что такое проекты в Claude, имеют в виду функцию claude.ai: рабочую область, где один раз загружены документы и инструкции, а все чаты внутри неё «помнят» этот контекст. Через API готовой кнопки «Проект» нет, но тот же сценарий собирается из трёх деталей: постоянного системного промпта, документов в контексте и кэша промптов. Разберём, как это устроено, как повторить и во сколько обойдётся.

Что такое проекты в Claude

По справке Anthropic, проекты в claude.ai — это самодостаточные рабочие области с собственными историями чатов и базой знаний. Внутри проекта можно:

  • загрузить документы, текст и код как знания проекта: Claude использует их, чтобы лучше понимать контекст ваших чатов;
  • задать инструкции проекта, например отвечать формальным тоном или с позиции определённой роли;
  • вести отдельные чаты, которые не смешиваются с остальными.

На платных тарифах, когда знаний становится слишком много для контекста, включается режим поиска по базе (RAG), расширяющий ёмкость примерно до десяти раз. В командных тарифах проекты можно открывать коллегам. Anthropic также разворачивает новую версию проектов в бета-режиме, где проект превращается в один разговор с параллельными облачными потоками, начиная с Claude Code. Условия и лимиты тарифов меняются, поэтому смотрите справку на сайте сервиса.

Для вас важна суть: проект даёт модели постоянный набор инструкций и документов в начале каждого чата. Это и нужно воспроизвести.

Как проект раскладывается на детали API

В проектеВ API
Инструкции проектаполе system
Загруженные документытекстовые блоки в system или в первом сообщении
История чатамассив messages, который хранит ваше приложение
Расширение через RAGсобственный поиск по фрагментам, если документов больше контекста
Несколько чатовотдельные массивы messages с одним и тем же префиксом

Главное отличие: в claude.ai платформа хранит чаты и документы за вас, а в API это делает ваш код. Зато вы выбираете модель, видите счёт по токенам и можете хранить данные где угодно.

Постоянный префикс и кэш промптов

Если каждый запрос заново отправляет 50 000 токенов документов, вы платите за них каждый раз. Кэш промптов решает проблему: стабильный префикс запроса помечается, и последующие запросы читают его по сниженной цене. В Anthropic-формате (POST /v1/messages, Anthropic SDK) шлюз видит, сколько входа пришло из кэша, и берёт цену чтения вместо цены входа. Запись в кэш оплачивается отдельно и дороже входа.

Пример на Python с официальным Anthropic SDK. Адрес без /v1, потому что SDK добавляет его сам:

bash
import os
import anthropic

client = anthropic.Anthropic(
    base_url="https://api.zukko.pro",
    api_key=os.environ["ZUKKO_API_KEY"],
)

INSTRUCTIONS = "Ты помощник юридического отдела. Отвечай кратко и ссылайся на пункт договора."
KNOWLEDGE = open("knowledge.txt", encoding="utf-8").read()  # документы проекта

history = []

def ask(question: str) -> str:

Метка cache_control ставится на последний блок стабильной части. Всё до неё попадает в кэш, а вопросы и история идут после. Если в ответе cache_creation_input_tokens не равен нулю, префикс записан, а cache_read_input_tokens показывает, сколько прочитано из кэша.

Несколько правил, которые экономят деньги:

  1. Держите префикс неизменным: любое изменение текста до метки сбрасывает кэш. Дату, имя пользователя и другие меняющиеся данные ставьте после документов.
  2. Кэш живёт ограниченное время (по умолчанию порядка пяти минут, продлевается при каждом попадании). Редкие вопросы раз в час кэш не используют.
  3. Есть минимальная длина кэшируемого префикса, она зависит от модели. Для коротких инструкций кэш не сработает, это нормально. Детали смотрите в документации Anthropic.
  4. Важно, что скидку для Claude даёт именно Anthropic-формат. В OpenAI-формате (/v1/chat/completions) весь вход для Claude идёт по цене входа.

Подробный разбор полей и ответов — в документации по Messages и по лимитам ключей и кэшу. Ещё две статьи по теме: кэширование промптов: чтение и запись и экономия на кэше.

Расчёт: что даёт кэш

Цены на 18 октября 2026, claude-sonnet-5-5: вход $0.4, выход $2, чтение кэша $0.05, запись кэша $0.5 за 1M токенов. Сценарий (условный): документы и инструкции 50 000 токенов, 100 вопросов подряд, в каждом 200 новых токенов входа и 500 токенов ответа. Для простоты считаем, что каждый вопрос задаётся в новом чате, без накопленной истории: в коде выше история растёт, и вход на каждом шаге будет больше.

Без кэша. Весь вход идёт по цене входа: 100 × 50 200 = 5 020 000 токенов, это 5.02 × 0.4 = $2.008. Выход: 100 × 500 = 50 000 токенов, 0.05 × 2 = $0.10. Итого около $2.11.

С кэшем. Первый запрос записывает префикс: 0.05 × 0.5 = $0.025. Остальные 99 запросов читают его: 99 × 50 000 = 4 950 000 токенов, 4.95 × 0.05 = $0.2475. Новый вход: 100 × 200 = 20 000 токенов, 0.02 × 0.4 = $0.008. Выход тот же $0.10. Итого 0.025 + 0.2475 + 0.008 + 0.10 = $0.3805, около $0.38.

Это иллюстрация на выдуманном объёме при условии, что все запросы укладываются в окно жизни кэша. Реальная картина зависит от интервалов между вопросами. Актуальные цены — GET https://api.zukko.pro/v1/models или страница «Модели» в кабинете.

Если документов больше, чем контекста

Контекст claude-sonnet-5-5 составляет 1M токенов, поэтому большинство проектных баз влезает целиком. Если нет, понадобится поиск: разбейте документы на фрагменты, найдите релевантные по вопросу и положите в запрос только их. Тогда префикс уже не постоянный, и кэш работает хуже. Разумный компромисс: короткие инструкции и ключевой справочник держать в кэшируемом префиксе, а остальное подмешивать поиском.

Что остаётся за вами

Хранение чатов, права доступа и совместная работа в API не даны из коробки: придётся сделать свою таблицу чатов и пользователей. Взамен вы получаете выбор моделей. Сравнивайте по цене, контексту и индексу силы и проверяйте на своих задачах: например, для массового ответа по справочнику иногда хватает более дешёвой модели.

Чтобы попробовать, создайте ключ в кабинете, положите документы в файл и запустите код выше. Баланс пополняется от $1 через СБП, картой MasterCard или криптовалютой.

Частые вопросы

Заменяют ли API-проекты подписку на Claude?

Это разные вещи: подписка даёт интерфейс claude.ai, а API оплачивается за токены. Функциональность проекта повторяется кодом, но интерфейс чатов и совместную работу придётся делать самим.

Нужен ли кэш, если документы небольшие?

Если префикс короче минимальной длины кэшируемого блока, кэш не включится. Тогда достаточно просто передавать документы в system.

Работает ли это в OpenAI-формате?

Да, но для Claude скидка на кэш в этом формате не применяется. Для моделей GPT чтение кэша видно в обоих форматах через prompt_tokens_details.cached_tokens.

Как не потерять контроль над расходом?

Заведите отдельный ключ на проект с дневным и месячным лимитом в долларах и списком разрешённых моделей.

zukko

Платите в 25×
меньше

за Claude Code & ChatGPT

Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.