An LLM может извлекать только то, что сохранил этап ingest, поэтому первая задача конвейера RAG — преобразовать файлы Word, PDF, Excel и электронных книг в чистый Markdown. С GroupDocs.Markdown.Mcp AI‑агент делает это локально, из Claude Desktop, Claude Code, Cursor или любого другого клиента MCP, и файлы никогда не покидают ваш компьютер:

Преобразовать каждый PDF в этой папке в Markdown, изображения как файлы, с front matter.

Пошаговая версия с настройками и устранением неполадок находится в документации: Как конвертировать документы в Markdown для RAG с помощью AI‑агента.

Почему большинство конвейеров RAG начинают с неправильного шага конвертации?

Обычная привычка — рассматривать конвертацию как простую трубу: отправлять файлы в любой ближайший парсер, принимать любой полученный текст и тратить усилия на эмбеддинги. Это меняет порядок важности. Чанкер делит по заголовкам, таблица, пришедшая в виде потока значений ячеек, не отвечает ни на один вопрос, а корпус, загруженный в сторонний парсер, раскрывает информацию, о которой вы не планировали. Когда поиск работает плохо, причина может быть в первом файле, к которому обратился конвейер.

В этой статье предлагаются три исправления: выполнять шаг на своей машине, осознанно выбирать параметры вывода и проверять результат вместо того, чтобы доверять ему.

Является ли облачный парсер правильным местом для ingest (ввода) документов?

Для внутреннего корпуса, обычно нет. Ingest (ввод) — единственная стадия, которая видит каждый ваш документ: политики, прайс‑листы, постмортемы. Сервис парсинга, получающий их все, видит весь архив, а не отдельный файл.

GroupDocs.Markdown.Mcp использует транспорт MCP stdio. Ваш AI‑клиент запускает сервер как дочерний процесс, и путь данных проходит через агент, локальный сервер, локальную файловую систему. У сервера нет входящих портов, внешних конечных точек и телеметрии. Только то, что агент пишет в своих ответах, передаётся поставщику модели. Платная лицензия с учётом использования — единственный случай, требующий исходящего трафика: она сообщает о потреблении, но никогда не передаёт содержимое документов, а файл лицензии работает офлайн.

Запустите его с помощью Docker:

docker run --rm -i -v $(pwd)/documents:/data \
  ghcr.io/groupdocs-markdown/markdown-net-mcp:latest

или, используя .NET 10 SDK, dnx GroupDocs.Markdown.Mcp --yes. Укажите GROUPDOCS_MCP_STORAGE_PATH на папку, содержащую корпус.

Какой сервер GroupDocs конвертирует в Markdown: Markdown или Conversion?

Оба могут генерировать Markdown, но отвечают на разные вопросы.

Вам нужно Используйте
Markdown, сохраняющий структуру, с контролем над изображениями, flavor, выбором страниц и front matter GroupDocs.Markdown.Mcp (this server)
Markdown как один из множества целей, или DOCX → PDF → XLSX в одном рабочем процессе GroupDocs.Conversion.Mcp, который поддерживает более 100 форматов в обоих направлениях

Если Markdown является конечным форматом и его качество имеет значение, выбирайте специализированный движок. Если вы конвертируете между множеством форматов, а Markdown — лишь один из них, выбирайте общий конвертер; его путь для PDF описан в 3 способа превратить PDF в Markdown, готовый для LLM (и почему локальный вариант выигрывает).

Что делает Markdown лучшим форматом для ingest (ввода) в RAG?

Заголовки сохраняются, таблицы остаются таблицами, списки остаются списками. Это единицы, с которыми работают чанкер и эмбеддер. Сервер конвертирует DOCX, DOC, RTF, ODT, XLSX, XLS, ODS, CSV, TSV, EPUB, MOBI, TXT, CHM и более 20 форматов с помощью одного инструмента, convert_to_markdown. Источники семейства Word конвертируются наиболее чисто, потому что их структура явно указана в файле. Листы электронных таблиц превращаются в таблицы Markdown.

Три параметра важны для индекса:

Параметр Настройка для ingest Причина
images "file", или "skip" только для прозы По умолчанию base64 помещает многомегабайтный data URI в середину чанка
frontMatter true YAML с заголовком, автором, форматом и количеством страниц становится метаданными чанка, поэтому ответ может ссылаться на название документа, а не на имя файла
flavor "github" (по умолчанию) или "commonmark" Соответствует парсеру, который читает результат

Пример сеанса (сокращённый)

You:   Before converting anything: what is the license status of the markdown server?
Agent: get_license_status -> mode: licensed, engine GroupDocs.Markdown 26.3, server 26.9.0.
You:   Convert every PDF in this folder to Markdown, images as files, with front matter.
Agent: convert_to_markdown (images: "file", frontMatter: true) for each PDF.
       Saved one .md per document, with extracted images alongside.
You:   For each converted file, give me the source page count and the Markdown length.
Agent: get_document_info for each source, then the length of each saved .md.
       One 300-page file produced only 4 KB of Markdown: likely a scan.

Как проверить корпус перед индексацией?

Считайте запуск недоверенным, пока не проверите его. Один запрос выявляет большинство ошибок:

Для каждого конвертированного файла укажите количество исходных страниц и полученную длину Markdown.

get_document_info возвращает fileName, fileFormat, pageCount, title, author и isEncrypted без конвертации, поэтому агент может сравнить количество страниц с тем, что он записал. Руководство из 300 страниц, превратившееся в 4 КБ Markdown, — это скан или усечённый запуск.

Сканированные PDF — жёсткое ограничение. У них нет текстового слоя, а у этого сервера нет шага OCR; обрабатывайте такие файлы отдельно.

Честные ограничения: лимит оценки

Без лицензии сервер работает в режиме оценки, где обрабатываются только первые 3 страницы, каждая с водяным знаком оценки. Вывод — корректный Markdown, и ничего не сообщает, что остальное было пропущено, поэтому индекс, построенный таким образом, выглядит полным, но почти пустым. Делайте get_license_status первым вызовом в каждом запуске ingest.

Часто задаваемые вопросы

Какой формат лучше всего подходит для ingest в RAG?

Markdown — хороший выбор, потому что чанкеры и эмбеддеры хорошо работают с заголовками, списками и таблицами. Используйте images: "file" и frontMatter: true, чтобы чанки не содержали base64 и сохраняли метаданные источника.

Могу ли я конвертировать Word в Markdown для LLM без загрузки документов?

Да. GroupDocs.Markdown.Mcp работает как локальный процесс через stdio, и агент читает файлы из указанной вами папки.

Преобразует ли он PDF в Markdown для векторной базы данных?

Он конвертирует PDF, имеющие текстовый слой, восстанавливая заголовки, списки и таблицы, где это возможно. Сканированные PDF не имеют текста для конвертации, и шаг OCR отсутствует.

Углубиться