Что такое llms-full.txt?

Сопутствующий файл, который объединяет всю документацию в один URL, чтобы LLM могли загрузить её одним запросом.

Последнее обновление:

Что такое llms-full.txt?

llms-full.txt является сопутствующим файлом для llms.txt который содержит фактическое содержимое страниц, на которые ссылаются в llms.txt, объединённые в единый Markdown-документ. Он находится в корне домена: https://example.com/llms-full.txt.

Это издательская конвенция, используемая некоторыми поставщиками документации, а не формат, определённый текущим предложением llmstxt.org v2. Клиент должен явно поддерживать её или быть настроен на её использование.

Где llms.txt — это отобранный индекс (оглавление), llms-full.txt находится полный корпус, полное удобочитаемое содержимое, готовое к передаче в контекстное окно LLM одним HTTP-запросом.

llms-full.txt и llms.txt

Эти два файла решают разные задачи:

  • llms.txt (индекс). Короткий файл Markdown с заголовками разделов и отобранными ссылками. Небольшой (обычно 1–10 КБ). Прост в обслуживании. Сообщает клиенту LLM какие страницы для чтения. Затем клиент должен перейти по ссылкам и получить каждую страницу отдельно.
  • llms-full.txt (корпус). Более крупный Markdown-файл, включающий содержимое этих страниц. Размер может составлять от 50 KB до 5 MB и более в зависимости от размера документации. Клиент загружает один URL и получает всё сразу, без дальнейшего обхода.

Публикация обоих вариантов подходит сайтам с большим объёмом документации и известным процессом поглощения: llms.txt для лёгкого обнаружения, а llms-full.txt для клиентов, явно настроенных на загрузку всего корпуса.

Структура файла

Для llms-full.txt помимо соответствия Markdown. Доминирующее соглашение (сформированное Mintlify и принятое Anthropic, Vercel и другими) таково:

  1. Каждая включённая страница начинается с URL в виде заголовка уровня 2 или заголовка блока кода.
  2. Полное содержимое страницы в формате Markdown следует непосредственно ниже.
  3. Горизонтальная линия (---) или пустая строка разделяет соседние страницы.

Минимальный пример с двумя встроенными страницами:

# example.com, full content\n\n## https://example.com/getting-started/\n\n# Getting started\n\nWelcome to Example. To install...\n\n---\n\n## https://example.com/api-reference/\n\n# API reference\n\nBase URL: https://api.example.com/v1...\n

Кто его публикует?

llms-full.txt соглашение популяризировал Mintlify, который автоматически создаёт оба llms.txt и llms-full.txt для каждого размещённого у него сайта документации. Anthropic публикует его по адресу docs.anthropic.com/llms-full.txt, это несколько мегабайт и полный справочник API, руководства и документация по моделям, объединённые в Markdown.

Проверенная конечная точка Anthropic показывает, что соглашение используется в продакшене. Это не доказывает, что конкретный чат-бот, сканер или поисковая система автоматически читает файл.

Как создать llms-full.txt

Есть три распространенных подхода:

  1. Статическая генерация во время сборки. Напишите скрипт сборки, который читает те же источники Markdown, что использует сайт, удаляет элементы, специфичные для HTML, и объединяет их в /public/llms-full.txt (или эквивалентный каталог вывода вашего фреймворка). Так делают Mintlify и большинство генераторов статических сайтов.
  2. Динамический серверный маршрут. Для фреймворков с поддержкой серверного рендеринга создайте маршрут по адресу /llms-full.txt который получает ваше содержимое при запросе, объединяет его и возвращает ответ в виде обычного текста. Медленнее на каждый запрос, зато всегда актуален.
  3. Ручное обслуживание. Для небольших сайтов можно поддерживать llms-full.txt вручную: скопируйте исходный Markdown ключевых страниц в один файл и обновляйте его при изменении содержимого. Для большой документации это не масштабируется, но для сайта из 5 страниц вполне подходит.

Когда публиковать llms-full.txt

Опубликовать llms-full.txt если ваш сайт соответствует хотя бы одному из этих условий:

  • У вас есть техническая документация, о которой разработчики регулярно спрашивают ИИ-ассистентов.
  • Ваш контент распределён по множеству страниц, которые клиенту LLM было бы дорого обходить по отдельности.
  • Вы хотите, чтобы контент можно было использовать в RAG-конвейерах или рабочих процессах ИИ-агентов, ожидающих корпус по одному URL.
  • Вы являетесь SaaS- или API-провайдером, пользователи которого могут задавать вопросы о программировании Cursor, Windsurf или подобным инструментам.

Если на вашем сайте меньше 10 страниц с содержательными материалами, хорошо поддерживаемый llms.txt одного файла, вероятно, достаточно. Дополнительная поверхность атаки, создаваемая llms-full.txt оправдывает себя при большом масштабе документации.

Оговорки и компромиссы

  • Размер файла. llms-full.txt может стать очень большим. Сайт документации из 500 страниц может создать файл размером более 10+ MB, что превышает контекстное окно большинства современных LLM. Рассмотрите возможность включить только страницы с наиболее значимыми сигналами вместо всего сайта.
  • Затраты на сопровождение. В отличие от llms.txt (содержащего только ссылки), llms-full.txt дублирует содержимое. Если страницы меняются без триггера пересборки, файл устаревает. Автоматизируйте этап генерации.
  • Стандартизированной схемы нет. В отличие от llms.txt, у которого есть определённой структуры на llmstxt.org, llms-full.txt формат — это общественное соглашение без формальной спецификации. Структурируйте файл понятно, чтобы любой клиент мог его разобрать.
  • Публичная доступность. Всё в llms-full.txt по определению является публичным. Не включайте контент, который вы иначе не стали бы публиковать по публичному URL.

Продолжить чтение

Источники