Гайд · TNWS AI
Как анализировать PDF с таблицами и графиками через Claude API
Как передать PDF в Claude API, задать вопросы по страницам, получить цитаты и проверить числа из таблиц и графиков.
Что даст этот гайд
Задача — извлечь из PDF выводы по тексту, таблицам и графикам, сохранив привязку каждого факта к странице. Результатом должен стать воспроизводимый рабочий сценарий, который другой человек сможет повторить по тем же входным данным. Перед настройкой запишите критерий успеха: конкретный формат ответа, обязательные поля и ситуацию, в которой процесс обязан остановиться.
Инструменты с ИИ часто создают убедительный текст даже при недостатке данных. Поэтому в этом гайде успешный ответ — не самый подробный, а тот, где факты отделены от предположений, а пробелы обозначены явно.
Что подготовить до начала
Понадобятся PDF без пароля и конфиденциальных данных, список проверяемых вопросов и локальный просмотрщик документа. Работайте сначала на тестовой копии. Удалите пароли, ключи, персональные данные и закрытые документы, если их обработка не согласована. Секреты храните в переменных окружения или менеджере секретов.
Создайте таблицу контроля: ID теста, вход, ожидаемый результат, фактический результат, источник, статус. Добавьте минимум пять кейсов: обычный, пустой, без нужного факта, с противоречием и с запрещённым действием. Это позволит увидеть регрессию после изменения модели, SDK или инструкции.
Пошаговая настройка
Передайте PDF как документ поддерживаемым способом: inline base64, URL или file_id — конкретный вариант выбирайте по текущей документации и размеру файла. Добавьте понятный title и context. Если нужны указатели на страницы, включите citations для документа по поддерживаемой схеме.
Не просите «пересказать весь PDF». Сначала запросите карту документа: разделы, страницы таблиц и страницы графиков. Затем задавайте один вопрос на конкретный показатель. Для каждого числа требуйте страницу, заголовок таблицы, единицу измерения и период. Откройте страницу вручную и проверьте ось, сноску и легенду: модель может верно прочитать число, но неверно понять, к какой серии оно относится.
После первого успешного ответа сохраните точный запрос, параметры, идентификаторы ресурсов и дату. Не ограничивайтесь скриншотом: текстовый журнал проще сравнивать и повторять. Если действие затрагивает внешнюю систему, добавьте идемпотентный ключ или другой механизм защиты от повторного выполнения.
Готовый промпт
Замените значения в квадратных скобках и сохраните получившуюся версию рядом с тестами:
Проанализируй только переданный PDF. Найди значение [ПОКАЗАТЕЛЬ] за [ПЕРИОД]. Верни: value, unit, page, table_or_chart_title, cited_fragment, caveat. Если на странице несколько серий, не выбирай без точного названия.
Не добавляйте расплывчатые требования вроде «ответь максимально умно». Для фактической задачи важнее перечислить разрешённые источники, формат, правило для отсутствующих данных и критерий остановки. Если результат читает программа, валидируйте JSON до использования полей.
Практический пример
Вход
На странице 12 столбчатая диаграмма: продажи 2025 — 84 млн ₽, продажи 2026 — 91 млн ₽; сноска говорит, что данные за 2026 предварительные.
Ожидаемый результат
Ответ содержит 91 млн ₽, страницу 12 и обязательную пометку «предварительные данные». Процент роста не добавляется, если его отдельно не рассчитали и не проверили.
Повторите пример с одним отсутствующим значением. Корректный процесс должен вернуть null, «нет данных» или понятный статус, предусмотренный вашей схемой. Правдоподобная подстановка опаснее явной ошибки, потому что может незаметно попасть в следующий этап.
Проверка результата в три прохода
Технический проход: запрос завершился, формат читается, идентификаторы не потеряны, секреты не попали в ответ или лог. Смысловой проход: минимум три факта сверены с исходником; отдельно проверены числа, даты и отрицания. Процессный проход: повторный запуск не создаёт дубликат и корректно обрабатывает таймаут или недоступность сервиса.
Меняйте только один параметр за итерацию. Если одновременно заменить модель, промпт и входные данные, причину изменения качества определить невозможно. Сохраняйте старую рабочую версию до завершения проверки.
Чек-лист
- задача сформулирована через проверяемый результат;
- границы и запрещённые действия указаны явно;
- используются тестовые или разрешённые данные;
- названия функций сверены с официальным источником;
- секреты отсутствуют в коде, тексте запроса и открытом логе;
- обычный сценарий проходит от начала до конца;
- пустой вход обрабатывается предсказуемо;
- отсутствие факта не превращается в догадку;
- ключевые числа, даты, имена и URL сверены вручную;
- повторный запуск не создаёт необратимый дубль;
- сохранены инструкция, параметры и дата проверки.
Как сделать процесс полезнее
Назначьте владельца сценария. Он отвечает не за каждое нажатие, а за актуальность документации, тестов и критериев. В журнале фиксируйте найденный дефект и конкретное исправление: «добавили обязательное поле source», а не «улучшили промпт».
Раз в несколько изменений запускайте старый набор тестов целиком. Новый удачный пример не должен ломать обработку пустых данных или запрещённых действий. Для автоматизированного процесса задайте порог остановки: неверный формат, отсутствующий ID, ошибка авторизации или неподтверждённое критичное поле.
Минимальный журнал качества
Для каждой попытки сохраняйте пять значений: идентификатор входа, версия инструкции, итоговый статус, обнаруженная проблема и решение проверяющего. Полный текст чувствительного запроса в журнале не нужен — используйте обезличенный ID. Раз в неделю или после заметного обновления выберите десять записей разных типов и пересмотрите их вручную. Такой небольшой аудит показывает систематические ошибки: например, модель стабильно теряет единицы измерения или приложение повторно вызывает инструмент после таймаута. Исправляйте сначала процесс и валидацию, а уже затем формулировку промпта.
Ограничения
Скан низкого качества, мелкие подписи и многослойные диаграммы требуют ручной проверки. Анализ PDF не заменяет сверку оригинального отчёта. Доступность функций, модели, форматы запросов, тарифы и лимиты могут меняться. Перед внедрением перепроверьте соответствующий раздел официальной документации, а не стороннюю статью или старый пример.
FAQ
Можно ли сразу подключать рабочие данные?
Нет. Сначала прогоните сценарий на обезличенной копии, проверьте ошибки и права. Рабочие данные подключайте только после согласования режима обработки.
Почему недостаточно успешного статуса API?
Он подтверждает обработку запроса, но не истинность вывода. Значимые факты нужно сверять с исходником или результатом доверенной функции.
Что делать, если ответ меняется между запусками?
Зафиксируйте вход и параметры, уменьшите свободу формата, добавьте схему и автоматические проверки. Для творческой задачи вариативность допустима, для извлечения фактов — обычно нет.
Как обновлять такой процесс?
После изменения SDK, модели, схемы или источника повторите весь набор тестов. Сравните результаты построчно и сохраните причину принятого изменения.
Первоисточник и дата проверки
Функции и названия параметров сверены 11 сентября 2026 года: официальная документация Anthropic по PDF support. Численные тарифы и лимиты намеренно не приведены: их следует проверять на официальной странице непосредственно перед использованием.
Частые вопросы
Можно ли использовать рабочие данные сразу?
Сначала проверьте сценарий на обезличенной копии и согласуйте обработку данных.
Достаточно ли статуса 200?
Нет. Он подтверждает обработку запроса, но не корректность фактов и действий.
Как тестировать обновления?
Повторяйте одинаковый набор обычных, пустых, противоречивых и запрещённых сценариев.
Где хранить ключ API?
В переменной окружения или менеджере секретов, но не в коде и промпте.
Читайте также
Как анализировать PDF с нейросетью: вопросы, цитаты и проверка вывода
Как загружать документ в ИИ, получать полезное резюме и не потерять важные условия, даты и исключения.
Как добавить цитаты из документов в Claude API и проверить их
Практический гайд по citations в Claude API: передача документа, включение ссылок на фрагменты и ручная верификация.
Как подключить инструменты к Claude API: схема, tool_use и безопасное выполнение
Как описать инструмент Claude, обработать tool_use, проверить параметры и вернуть tool_result без опасных действий.
Комментарии
Пока тихо. Скажите первое слово