Прочитать файл целиком¶
Режим чтения файла целиком предназначен для ситуаций, когда вы хотите, чтобы модель получила извлечённый текст документа непосредственно в контексте текущего разговора.
В технической основе эта возможность может называться Upload as Text или Context. В пользовательской документации ИИ Студии мы называем её «Прочитать файл целиком».
Что вы сделаете¶
Вы загрузите документ, Студия извлечёт его текст и добавит этот текст к запросу. После этого модель сможет:
- пересказать документ;
- выделить факты;
- сравнить разделы;
- найти противоречия;
- переписать текст;
- составить таблицу требований;
- объяснить код или конфигурацию;
- ответить на вопросы по всему содержимому, которое поместилось в контекст.
Когда этот режим лучше всего¶
Используйте его для:
- небольшого договора;
- статьи;
- письма;
- инструкции на несколько или десятки страниц;
- конфигурационного файла;
- небольшого набора исходного кода;
- фрагмента журнала;
- JSON/YAML/XML;
- небольшого CSV;
- документа, который нужно преобразовать целиком.
Не используйте этот режим как основной для огромной базы документов.
Как работает чтение целиком¶
Шаг 1. Определение типа файла¶
Студия определяет формат по фактическому типу содержимого и метаданным, а не только по расширению.
Шаг 2. Извлечение текста¶
Для обычных текстовых файлов содержимое читается напрямую.
Для PDF/DOCX и других документов используется parser, который пытается получить текстовое представление.
Шаг 3. Ограничение объёма¶
Сервер применяет лимиты файла и извлечённого текста. Это защищает систему от бесконечного контекста и чрезмерного потребления ресурсов.
Шаг 4. Добавление в контекст¶
Извлечённый текст становится частью запроса вместе с:
- вашим сообщением;
- историей текущего разговора;
- системными инструкциями;
- инструкциями помощника;
- памятью, если она участвует;
- результатами инструментов, если они использованы.
Шаг 5. Формирование ответа¶
Модель видит подготовленный текст и отвечает на поставленную задачу.
Пошаговая инструкция¶
Шаг 1. Создайте отдельный чат для новой задачи¶
Это необязательно, но полезно для больших документов: в новом чате меньше старой истории, которая занимает контекст.
Шаг 2. Откройте меню вложения¶
Нажмите кнопку добавления файла около поля сообщения.
Шаг 3. Выберите чтение как текст¶
Выберите пункт, означающий чтение содержимого файла целиком.
Если такого пункта нет, возможность могла быть ограничена администратором для вашей роли.
Шаг 4. Выберите файл¶
Дождитесь окончания обработки.
Шаг 5. Сначала проверьте распознавание¶
Напишите:
«Назови заголовок документа и перечисли заголовки первых пяти разделов. Не используй внешние знания».
Если результат соответствует оригиналу, переходите к основной задаче.
Шаг 6. Поставьте задачу¶
Например:
«Прочитай документ целиком. Составь таблицу: требование, ответственный, срок, последствия нарушения. Для каждого пункта приведи короткий фрагмент исходного текста. Не добавляй требования, которых нет в документе».
Почему «целиком» всё равно имеет предел¶
Название режима означает способ обработки, а не обещание бесконечного контекста.
Есть несколько независимых ограничений:
- максимальный размер загрузки;
- максимальный объём извлечённого текста;
- контекстное окно модели;
- место, занятое историей диалога;
- место, необходимое для ответа.
Если документ слишком большой, конец текста может оказаться за пределами эффективного контекста.
Большой файл
Если ответ уверенно описывает начало документа, но «не видит» последние разделы, это типичный признак переполнения контекста. Перейдите на поиск по документам.
Контекст — это общий бюджет¶
Представим условно, что модель имеет рабочее окно на N токенов.
В него должны одновременно поместиться:
системные инструкции
+ инструкции помощника
+ память
+ история разговора
+ извлечённый текст файла
+ ваш новый вопрос
+ резерв под ответ
Поэтому один и тот же документ может работать лучше в новом коротком чате, чем в разговоре, где уже сотни сообщений.
Что такое токены¶
Модель читает текст не буквами и не страницами, а небольшими фрагментами — токенами.
Количество страниц не является точным способом оценки.
На объём влияют:
- язык;
- числа;
- код;
- длинные идентификаторы;
- JSON;
- таблицы;
- повторяющиеся данные.
Например, 100 страниц художественного текста и 100 страниц JSON могут занимать совершенно разный объём контекста.
Вставка длинного текста¶
Современный интерфейс может автоматически превращать очень длинную вставку из буфера обмена в текстовое вложение. Пользователю это удобно: поле сообщения не превращается в десятки экранов текста.
Но логика остаётся той же — содержимое становится частью контекста и подчиняется тем же ограничениям.
Работа с PDF¶
Цифровой PDF¶
Если PDF создан из Word, браузера или системы отчётности и содержит текстовый слой, parser обычно может извлечь текст.
Сканированный PDF¶
Если каждая страница является картинкой, локальный document_parser не следует считать полноценным OCR.
Признаки скана:
- текст в обычном PDF-просмотрщике не выделяется;
- поиск по слову внутри PDF ничего не находит;
- копирование страницы даёт пустой результат или мусор.
Такой файл сначала лучше распознать в доверенном OCR-решении.
Подробнее: PDF и DOCX.
Работа с Word¶
При чтении DOCX модель получает извлечённое текстовое представление, а не визуальную копию страницы Word.
Обычно хорошо передаются:
- заголовки;
- абзацы;
- списки;
- текст таблиц.
Хуже подходят задачи, где критично точное визуальное расположение:
- колонтитулы;
- сложные плавающие объекты;
- графические схемы;
- водяные знаки;
- точные стили;
- визуальное сравнение форматирования.
Для таких задач обязательно сверяйтесь с оригиналом.
Работа с кодом¶
Режим чтения целиком удобен для кода, когда файлов немного.
Пример запроса:
«Проанализируй приложенный nginx.conf. Сначала опиши структуру конфигурации. Затем перечисли только реальные потенциальные проблемы. Для каждой покажи директиву, почему она опасна и предложи минимальное изменение. Не выполняй команды».
Если файлов десятки или сотни, лучше выбрать относящиеся к задаче части проекта.
Работа с журналами¶
Не передавайте многогигабайтный лог целиком.
Сначала подготовьте фрагмент:
- несколько минут до события;
- момент ошибки;
- несколько минут после;
- связанные строки по request ID, PID, user ID или trace ID.
Пример:
«Событие произошло около 14:10. Построй хронологию с 14:08 до 14:12, выдели первую ошибку-причину и отдельно последующие ошибки-следствия».
Работа с CSV¶
Небольшой CSV можно читать как текст.
Хорошие задачи:
- объяснить структуру колонок;
- найти очевидные аномалии в небольшой выборке;
- сформулировать правила очистки;
- преобразовать небольшую таблицу в Markdown;
- проверить корректность заголовков.
Плохой сценарий:
- передать миллионы строк и ожидать точный статистический расчёт.
В текущей продуктовой политике произвольное выполнение пользовательского кода отключено, поэтому Студия не должна притворяться полноценным Python-ноутбуком для огромных таблиц.
Как задавать вопросы по файлу¶
Для краткого содержания¶
«Сделай краткое содержание не более 15 пунктов. Сохрани числа, даты и названия. Отдельно перечисли обязательные действия».
Для договора¶
«Извлеки стороны, предмет, сроки, стоимость, порядок оплаты, ответственность, основания расторжения и спорные условия. Для каждого пункта укажи, где он находится в документе».
Для технической инструкции¶
«Составь пошаговую процедуру только на основании документа. Не добавляй команды, отсутствующие в источнике. Если шаг неоднозначен, пометь его как требующий уточнения».
Для сравнения¶
«Сравни два приложенных документа. Покажи только содержательные различия. Колонки: тема, документ A, документ B, практическое последствие».
Как проверить, что модель действительно использует файл¶
Попросите найти то, чего модель не могла бы надёжно знать заранее:
- внутренний номер документа;
- уникальную фамилию;
- нестандартное название раздела;
- редкий код ошибки;
- конкретную сумму;
- внутренний URL без секрета.
Затем задайте контрольный отрицательный вопрос:
«Есть ли в документе требование проводить аудит каждые 17 дней? Если такого требования нет, так и напиши».
Если модель начинает выдумывать несуществующее требование, усилите ограничение:
«Отвечай исключительно на основании приложенного текста. Любое утверждение, для которого нет фрагмента документа, помечай “не найдено в документе”».
Почему цитаты при чтении целиком могут отличаться от File Search¶
При поиске по документам Студия работает с индексированными фрагментами и может привязывать ответ к конкретному найденному источнику.
При полном текстовом контексте модель получает большой блок текста как часть запроса. Механизм источников может быть менее структурированным.
Если проверяемость важнее полного чтения, используйте File Search.
Когда переключаться на поиск по документам¶
Переходите на RAG/File Search, если:
- документ очень длинный;
- документов много;
- одни и те же документы нужны многократно;
- важно получать ссылки на источники;
- пользователь задаёт точечные вопросы;
- начало документа читается, а конец систематически теряется;
- контекст чата становится слишком большим;
- облачная модель становится дорогой из-за передачи огромного контекста.
Безопасность¶
Локальная модель¶
Извлечённый текст передаётся локальному inference внутри инфраструктуры Студии.
Yandex AI¶
Извлечённый текст, который включён в запрос, передаётся в Yandex AI Studio вместе с вопросом и необходимым контекстом.
Внешние сервисы¶
Не включайте интернет-поиск без необходимости, если задача должна оставаться полностью внутри локального контура.
Частые ошибки¶
«Модель не видит последнюю страницу»¶
Вероятно, документ или разговор слишком велики для эффективного контекста.
Решение: новый чат, меньший файл или File Search.
«Из PDF получился мусор»¶
Возможны сложная вёрстка, повреждённые шрифты или скан.
Решение: проверить текстовый слой, пересохранить PDF или выполнить OCR.
«Таблица потеряла структуру»¶
Текстовое извлечение не гарантирует точное воспроизведение сложной сетки таблиц.
Решение: экспортировать нужную таблицу в CSV или добавить пояснение колонок.
«Модель отвечает общими знаниями»¶
Добавьте:
«Отвечай только по приложенному файлу. Если ответа нет — напиши “не найдено”».
Как проверить результат¶
Успешная работа означает, что модель:
- правильно называет документ;
- находит уникальные элементы;
- не придумывает отсутствующие разделы;
- корректно отвечает на контрольный отрицательный вопрос;
- признаёт отсутствие данных;
- не теряет существенные части документа.
Если последний пункт не выполняется, переходите к поиску по большим документам.