![]()
Большое контекстное окно обещает загрузить больше текста, но не гарантирует, что модель заметит единственное исключение на предпоследней странице. Поэтому Claude и Gemini для длинного документа стоит сравнивать по ответам на конкретные вопросы, а не по длине получившегося пересказа.
В Чатиуме можно собрать читательский кабинет: документ, вопросы и выводы с привязкой к разделам. Такой интерфейс превращает длинный ответ в проверяемый рабочий материал.
Создай кабинет разбора рабочих документов. Пользователь загружает материал и задаёт вопросы. Показывай краткий ответ, подтверждающие фрагменты и места, где информации не хватает. Добавь сравнение Claude и Gemini и сохранение проверенных выводов.
Что различается у конкретных моделей
В этой статье рассматриваются Claude Sonnet 5.5 и Gemini 4 Argon. На 24 октября 2026 года каталог OpenRouter указывает для них контекст примерно в миллион токенов. Это размер модельного контекста, а не обещание принять файл любого размера через любой интерфейс.
| Возможность маршрута | Claude Sonnet 5.5 | Gemini 4 Argon |
|---|---|---|
| Текст и изображения | Заявлены | Заявлены |
| Файлы | Заявлены | Заявлены |
| Аудио и видео на входе | Не заявлены для этого маршрута | Заявлены |
| Текстовый ответ | Да | Да |
Если рабочий набор состоит из текста и PDF, обе модели подходят для первичного рассмотрения. Если вместе с документом требуется разбирать аудио или видео, у Gemini есть соответствующие заявленные входы. Корректная передача этих форматов и доступность в вашем приложении проверяются отдельно.
Пример: правило спрятано не в основном разделе
Представим инструкцию для службы поддержки. В начале написано: «Запросы обрабатываются в течение двух рабочих дней». Позже есть отдельный раздел: «Для восстановления доступа требуется дополнительная проверка; срок сообщается после её завершения».
Вопрос: «Когда клиенту восстановят доступ?» Ответ «через два дня» неверен, даже если он точно повторяет заметную фразу из начала. Правильный вывод должен найти исключение и объяснить, что фиксированный срок по этому документу назвать нельзя.
Чтобы сравнение было содержательным, добавьте вопросы трёх типов: прямой факт, исключение и отсутствие ответа. Последний особенно полезен: документ может вообще не содержать нужной информации, и длинная модельная речь не должна это скрывать.
Как подготовить материал, чтобы сравнение имело смысл
Сохраняйте заголовки, номера разделов и порядок страниц. Если превратить документ в сплошной текст без структуры, модели сложнее ссылаться на основание, а человеку — проверять ответ. Таблица, извлечённая в неправильном порядке, может породить ошибку ещё до запуска модели.
Для большого набора документов сначала составьте перечень: название, версия, дата действия. Не смешивайте старую инструкцию с новой без указания их статуса. Иначе модель может аккуратно объединить несовместимые правила — получится связный, но несуществующий регламент.
Не требуйте пересказать всё, если вам нужен ответ на три вопроса. Ограниченный запрос проще принять. А если вопросов много и они повторяются, стоит рассмотреть поиск по базе знаний вместо повторной отправки всей папки.
Как сравнить текстовый разбор в Чатиуме
Этот короткий пример отправляет уже извлечённый текст с названиями разделов. Он не показывает загрузку PDF и не проверяет мультимодальные возможности моделей.
Ниже — серверный фрагмент для одинакового задания двум моделям. ctx даёт Чатиум, sourceText содержит один и тот же проверенный исходник. done и failed — зарегистрированные обработчики app.function, которые проверяют источник вызова: caller.type === 'plugin' && caller.appSlug === 'start'.
import { startCompletion } from '@start/sdk'
const jobs = []
for (const model of ['anthropic/claude-sonnet-5.5', 'google/gemini-4-argon']) {
const { completionId } = await startCompletion(ctx, {
model,
system: 'Ответь на вопросы по документу. Для каждого вывода укажи раздел и подтверждающий фрагмент. Учитывай исключения; если ответа нет, так и напиши.',
messages: [{ role: 'user', content: [{ type: 'text', text: sourceText }] }],
onCompletionCompleted: done,
onCompletionFailed: failed,
})
jobs.push({ model, completionId })
}
В jobs лежат идентификаторы задач, а не готовые ответы. Приложение сохраняет соответствие модели и completionId, принимает результаты позже через обработчики и показывает отдельное состояние каждого запуска. Полный интерфейс и хранение в этот короткий пример не входят.
Частые вопросы
Миллион токенов означает, что модель ничего не пропустит?
Нет. Размер контекста описывает вместимость, а точность ответа проверяется отдельно. Особенно важны исключения, изменения версий и сведения в таблицах.
Что лучше: загрузить всё или сначала найти нужные разделы?
Для одного связного документа полный контекст может быть удобен. Для большой обновляемой библиотеки полезнее отбирать релевантные части. Развилку разбираем в RAG или длинный контекст.
Как выбрать победителя на своём документе?
Заранее подготовить вопросы и подтверждённые ответы, затем посчитать точные ответы, пропуски исключений и выдуманные основания. Длина и уверенность пересказа не заменяют эту проверку.