При обогащении с помощью LLM счёт выставляется за токены. Entity Enricher создан так, чтобы отправлять как можно меньше оплачиваемых токенов без потери точности — прежде всего за счёт кэширования промптов, а также ограничения схем, умного гейтинга и меньшего числа напрасных повторов. Большая часть происходит автоматически; ничего здесь не требует дополнительной настройки.
Каждый вызов обогащения оплачивает входные токены (ваш промпт, схему и любые прикреплённые документы), выходные токены (структурированный результат) и — если включено — запросы веб-поиска. Самая большая и повторяющаяся часть — обычно входные данные: одни и те же системные инструкции, описание схемы и исходные документы пересылаются заново при каждом вызове. Кэширование этих общих входных данных — самый мощный рычаг, поэтому оно рассматривается первым.
Промпт + схема + вложения. Большие и часто повторяющиеся между вызовами — главная цель для кэширования и ограничения области.
Структурированный результат. Остаётся компактным за счёт запроса у каждой модели только тех полей, которыми она фактически владеет.
Неудачные повторные попытки, борьба с ограничениями частоты запросов и обогащение не той сущности. Устраняются заранее, а не оплачиваются постфактум.
Когда выполняется обогащение с несколькими областями экспертизы, оно делает несколько вызовов LLM для одной и той же сущности — по одному на каждую область экспертизы. Все эти вызовы используют один и тот же начальный контекст: общие системные инструкции и любые встроенные текстовые документы, которые вы прикрепили. Entity Enricher сохраняет этот общий префикс идентичным до байта во всех вызовах и помечает его как кэшируемый, поэтому провайдер сохраняет его один раз и перечитывает при каждом последующем вызове примерно за десятую часть обычной цены за ввод.
Каждый из N вызовов повторно отправляет полный общий контекст по полной входной цене. Пять expertise означают пятикратную оплату этого большого общего блока.
Общий блок записывается в кэш один раз, а затем считывается в остальных четырёх вызовах по цене ~10% от стоимости ввода. Экономия растёт с каждой дополнительной экспертизой, языком и прикреплённым документом.
Кэши провайдера доступны для чтения только после завершения первого запроса, который их записывает. Если бы все вызовы экспертизы запускались одновременно, ни один не нашёл бы прогретый кэш, и каждый избыточно записывал бы собственную копию. Поэтому, когда применяется кэширование, первый вызов выполняется отдельно, даётся короткий момент для распространения кэша, и только затем остальные вызовы запускаются параллельно — так каждый из них читает прогретый кэш, а не платит за его перезапись.
Модели Anthropic явно кэшируют общие инструкции; прикреплённые PDF и изображения кэшируются на месте; а провайдеры с автоматическим кэшированием префиксов (OpenAI, xAI, DeepSeek и другие) получают выгоду от того же побайтово идентичного префикса. Кэширование окупается больше всего именно тогда, когда объём входных данных велик — множество областей экспертизы, несколько языков или прикреплённые документы.
Учёт стоимости учитывает кэширование: кэшированные входные токены тарифицируются по ставке чтения из кэша модели (доля от входной ставки), а по полной цене оплачиваются только действительно новые токены. Экономия отображается напрямую в вашей аналитике стоимости, а не только в теории.
Помимо кэширования общего префикса, Entity Enricher сокращает ту часть каждого вызова, которая не является общей.
Каждый вызов expertise получает только тот срез schema, за который он отвечает, а не всю schema целиком.
Финансовый эксперт никогда не видит регуляторных полей. Меньше полей — меньше токенов на входе и выходе, а ответ обрезается до своего фрагмента перед слиянием.
Когда документы прикреплены и вы не выбрали строгий режим структурированного вывода, список полей существует только в читаемом промпте — схема не дублируется при передаче.
Это полностью убирает токены схемы и сохраняет общий префикс неизменным (поэтому он лучше кешируется). Ответ по-прежнему проверяется на стороне клиента с автоматической самокоррекцией при отклонениях.
Необязательная предварительная классификация запускает одну дешёвую и быструю модель, чтобы проверить, действительно ли сущность соответствует вашей схеме, прежде чем начнётся дорогостоящее обогащение с несколькими моделями. Несоответствие — например, спутник, отправленный в схему «Planet», — обнаруживается за доли цента вместо того, чтобы тратить полное обогащение на несколько премиальных моделей.
Она не блокирует работу (если проверка не пройдена, обогащение всё равно продолжается) и может быть отменена, поэтому вы никогда не начнёте платить за модели, которые решили пропустить.
Неудачный раунд валидации — это вызов LLM по полной цене без какого-либо результата. Два механизма делают повторные попытки редкими и продуктивными.
Типичные странности вывода LLM — объекты с числовыми ключами вместо массивов, строка 'null', случайные экранированные кавычки — исправляются до запуска валидации.
Многие потенциальные ошибки валидации исправляются автоматически, поэтому они вообще не приводят к платной повторной попытке.
Когда повтор действительно необходим, точная ошибка валидации передаётся модели, чтобы она могла устранить именно эту проблему.
Чёткая и конкретная обратная связь повышает шансы на успех следующей попытки — вместо того чтобы тратить попытки на расплывчатые указания.
Один проход дешевле всего для небольших схем; мульти-экспертиза создана для больших, где кэширование и разграничение по экспертизам с лихвой окупают дополнительные вызовы. См. Стратегии, чтобы понять, когда что использовать.
Ограничение параллелизма для каждого провайдера не даёт задачам заваливать провайдера до ошибок превышения лимита, которые иначе запустили бы задержки и повторные попытки — впустую потраченные токены и время. Регулируемый, стабильный параллелизм обходится дешевле, чем борьба с ошибками 429.
Каждое обогащение записывает реальное число токенов — включая кэшированные чтения — и итоговую стоимость. Панель стоимости превращает это во временные графики и разбивки по моделям, чтобы вы могли точно видеть, куда уходят расходы, и убедиться, что кэширование и ограничение области выполняют свою задачу. Цена, которую вы видите, — это цена, которую вам выставляют; исходные затраты провайдера и любая наценка платформы остаются прозрачными.