Упс! Не вдала спроба:(
Будь ласка, спробуйте ще раз.

Універсальний конвертер MarkitDown від Microsoft: Перетворюємо будь-які файли на Markdown

Taras Shu
Taras Shu Independent Researcher, AI Agenting Community
1
3 хвилин читання

Якщо ви інженер і колись створювали RAG-системи або готували дані для великих мовних моделей, ви знаєте, скільки головного болю завдає розбір різнорідних форматів: .docx, .pdf, .xlsx, вебсторінки, аудіофайли. Зазвичай це означає безліч бібліотек, кастомних скриптів і постійне налагодження.

Команда Microsoft випустила елегантне розв’язання цієї проблеми — MarkitDown. Це універсальний серверний інтерфейс, спроєктований як потужний інструмент для підготовки даних.

В основі MarkitDown лежить один-єдиний метод: convert_to_markdown(uri: str).

Ви передаєте йому URI ресурсу, а він повертає структурований Markdown. Неважливо, що це за ресурс: локальний файл, посилання на вебсторінку чи дані у форматі data:URI.

Підписуйтеся на наші соцмережі

Сервер спирається на власну бібліотеку та плагіни, дозволяючи конвертувати разючий список форматів:

  • Документи Office: Word (.docx), Excel (.xlsx), PowerPoint (.pptx).
  • PDF: Видобуває не тільки текст, а й таблиці, зберігаючи їхню структуру.
  • Зображення: Розпізнає текст (OCR) і, при підключенні LLM-плагінів, може генерувати описи.
  • Аудіо: Автоматично транскрибує мовлення в текст.
  • Вебконтент: HTML та RSS-стрічки.
  • Структуровані дані: JSON, XML, CSV.
  • Архіви: ZIP-файли (сервер ітерується за вмістом і конвертує кожен файл).

MarkitDown має кілька ключових особливостей, які роблять його гнучким інструментом для розробки

  • 1
    Два режими роботи:
    1.1. STDIO (за замовчуванням): Ідеально для локальної інтеграції з редакторами коду на кшталт Cursor або десктопними клієнтами.STDIO (за замовчуванням): Ідеально для локальної інтеграції з редакторами коду на кшталт Cursor або десктопними клієнтами.
    1.2. HTTP/SSE: Дозволяє запустити повноцінний вебсервер на базі Starlette та Uvicorn. Ви отримуєте API-ендпоінт, до якого можна звертатися через мережу.HTTP/SSE: Дозволяє запустити повноцінний вебсервер на базі Starlette та Uvicorn. Ви отримуєте API-ендпоінт, до якого можна звертатися через мережу.
  • 2
    Розширюваність через плагіни: Функціонал (наприклад, OCR або транскрибація) можна вмикати через змінні оточення. Приклад: MARKITDOWN_ENABLE_PLUGINS.
  • 3
    Безпека: Важливий нюанс — під час запуску в режимі HTTP-сервера інструмент працює з правами поточного користувача і не має вбудованої автентифікації. Це варто враховувати під час розгортання.

MarkitDown — надпотужний інструмент, який закриває одне з найбільш трудомістких завдань в MLOps: уніфікацію та попередню обробку даних. Замість десятка розрізнених бібліотек ви отримуєте єдину точку входу для підготовки контенту для ваших RAG-застосунків та LLM.

Інструмент, що економить тижні інженерної роботи. MCP MarkitDown я вже собі додав. Пробую пожити з ним деякий час.

Посилання на репозиторій: https://github.com/microsoft/markitdown

Якщо ви хочете поділитися з читачами SPEKA власним досвідом, розповісти свою історію чи опублікувати колонку на важливу для вас тему, долучайтеся. Відтепер ви можете зареєструватися на сайті SPEKA і самостійно опублікувати свій пост.
1
Icon 0

Підписуйтеся на наші соцмережі