llms-full.txt: что это, когда использовать и как создать
llms-full.txt — дополнение к llms.txt, вставляющее полное содержимое страниц. Вот что это такое, какую проблему решает и когда усилия оправданы.
Последнее обновление:
Что такое llms-full.txt?
llms-full.txt — сопутствующее соглашение, используемое некоторыми издателями документации.
Оно не определено текущим предложением llmstxt.org v2. При этом llms.txt
содержит отобранный список ссылок на самые важные страницы, llms-full.txt идёт дальше:
он встраивает фактическое содержимое этих страниц прямо в файл.
Цель — предоставить системам извлечения AI полный текст корпуса документации в одном файле, избавив их от необходимости переходить по ссылкам и делать дополнительные HTTP-запросы для получения каждой страницы. Для крупных сайтов документации это может значительно сократить число сетевых запросов, необходимых для загрузки контента в качестве контекста AI.
llms-full.txt опубликован по адресу /llms-full.txt в корне вашего домена,
рядом с обычным /llms.txt файл.
llms-full.txt и llms.txt
| Атрибут | llms.txt | llms-full.txt |
|---|---|---|
| Содержимое | Ссылки на страницы с краткими описаниями | Ссылки на страницы + встроенное полное содержимое страниц |
| Размер файла | Небольшой (обычно менее 50 KB) | Может быть большим (от сотен КБ до нескольких МБ) |
| Сценарий использования | Обнаружение и курирование | Доставка полного корпуса для извлечения |
| Риск устаревания | Низкая, только ссылки | Более полное содержимое нужно регенерировать при изменении страниц |
| Поведение краулера | Сканер переходит по ссылкам, чтобы получать страницы | Краулер может прочитать полный контент из одного файла |
| Статус спецификации | Описано в предложении llmstxt.org v2 | Отдельное соглашение о публикации, не определённое v2 |
Формат и структура
Для llms-full.txt. Реализации обычно объединяют содержимое страниц в Markdown, но
их заголовки, разделители и метаданные могут различаться.
Упрощённый пример, показывающий структуру:
# Acme Documentation
> Acme is a REST API for inventory management.
## Documentation
- [Quickstart](https://docs.acme.example/quickstart/): getting started guide.
## Quickstart content
# Getting started with Acme
Welcome to Acme. This guide walks you through your first API call.
## Prerequisites
You will need an Acme account and an API key. Sign up at acme.example...
[... full page content ...]
- [API reference](https://docs.acme.example/api/): complete endpoint reference.
## API reference content
# API Reference
All endpoints accept JSON and return JSON. Authentication uses the Authorization header...
[... full API reference content ...]
На практике точный формат встраивания содержимого зависит от реализации. Основной принцип
заключается в том, что полный текст каждой страницы по ссылке включается в файл, чтобы клиент,
читающий llms-full.txt не нужно делать дополнительные запросы.
Когда это использовать
llms-full.txt имеет смысл, когда:
- У вас большой корпус документации который вы хотите сделать полностью доступным для загрузки системами ИИ без обхода сотен страниц. Самый очевидный пример — техническая документация для инструментов разработчика.
- Ваш контент часто запрашивают ИИ-ассистенты и хотите, чтобы эти ассистенты располагали полной актуальной информацией без приблизительных выводов из обучающих данных.
- Вы создаете конвейеры RAG которым нужно загружать вашу документацию. Один большой текстовый файл зачастую обработать проще, чем получать и разбирать HTML со множества отдельных URL.
- Ваша документация генерируется автоматически и можно добавить
llms-full.txtгенерацию на том же этапе сборки, который создаёт саму документацию.
llms-full.txt менее полезен для:
-
Небольшим сайтам с менее чем 10–15 страницами подойдёт обычный
llms.txtс прямыми ссылками достаточно. - Сайты с очень часто меняющимся содержимым: полнотекстовый файл быстрее устаревает и его сложнее поддерживать в актуальном состоянии.
- Маркетинговые или редакционные сайты, где точная формулировка каждой страницы менее важна, чем для технических справочных материалов.
Кто его использует
llms-full.txt соглашение популяризировал главным образом Mintlify, платформа документации,
широко используемая компаниями, ориентированными на разработчиков. Mintlify автоматически создаёт
оба
llms.txt и llms-full.txt для сайтов документации, размещённых на её платформе.
При сборке и развёртывании сайта документации полнотекстовый файл создаётся из того же исходного кода
Markdown, на основе которого формируется отображаемая документация.
Это означает, что значительная часть llms-full.txt файлы в сети созданы Mintlify. Эту
конвенцию также приняли другие платформы документации и пользовательские конвейеры документации, особенно
используемые компаниями, которые начинают с API.
Конвейер извлечения или помощник по программированию можно настроить на чтение llms-full.txt как единый корпус. Одна только публикация не показывает, что какой-либо названный продукт автоматически
его загружает.
Оговорки и компромиссы
Перед публикацией llms-full.txt, рассмотрите следующие компромиссы:
- Размер файла. Полный корпус документации легко может достигать нескольких мегабайт. Это нормально для прямого доступа к файлу, но клиентам, которым нужно загрузить весь файл в контекстное окно языковой модели, будут мешать ограничения длины контекста. Очень большие файлы, возможно, потребуется разделить или обобщить перед использованием.
- Устаревание. При каждом обновлении страницы документации ваша
llms-full.txtнеобходимо заново сгенерировать. Если ваш конвейер сборки не делает этого автоматически, файл начнёт расходиться с актуальной документацией. Устаревшие файлы полного текста потенциально вреднее, чем устаревшийllms.txtпотому что они содержат полный контент, который ИИ может процитировать дословно. - Не все краулеры запрашивают его.
llms-full.txtявляется соглашением, а не стандартом. Не все AI-сканеры или фреймворки агентов специально ищут его. Многие обнаружат его как обычный файл, но могут не применять к нему специальную логику. - Пропускная способность. Если ваш сайт получает значительный трафик от краулеров AI, выдача файла размером в несколько мегабайт при каждом обходе увеличивает расходы на пропускную способность. Рассмотрите заголовки кэширования, чтобы сократить повторные загрузки.
Как создать такой файл
Самый надёжный подход -- генерировать llms-full.txt во время сборки из того же источника,
который создаёт документацию. Общий процесс:
- Начните с обычного
llms.txtв качестве структуры оглавления. -
Для каждой страницы, на которую есть ссылка в
llms.txt, загрузите или прочитайте его исходное содержимое в Markdown. - Добавьте всё содержимое ниже соответствующей ссылки в файле.
- Выведите полный файл в
/llms-full.txtв вашем общедоступном каталоге.
Если вы используете платформу документации, которая это поддерживает (например, Mintlify), это может уже происходить автоматически. Проверьте документацию своей платформы на наличие поддержки llms.txt.
Если вы создаёте собственный генератор, держите исходник Markdown чистым: без лишнего HTML, артефактов сборки и front matter, который не должен попадать в результат. Цель — чистый, читаемый текст, который AI может обрабатывать напрямую.
Продолжить чтение
- Справочник llms-full.txt, сопутствующее соглашение и его компромиссы.
- llms.txt для API-продуктов, где llms-full.txt приносит наибольшую пользу.
- llms.txt для сайтов документации, руководство по реализации для платформ документации.
- Валидатор, проверьте llms.txt перед созданием llms-full.txt.