Morphik Core: платформа RAG с открытым исходным кодом для обработки мультимодальных данных

Общее введение

Morphik Core - это проект с открытым исходным кодом, разработанный командой morphik-org и размещенный на GitHub. Раньше он назывался DataBridge Core, но теперь переименован в Morphik Core.Этот инструмент представляет собой базу данных, предназначенную для приложений искусственного интеллекта, которые могут работать с широким спектром данных, таких как текст, изображения, PDF, видео и т. д. Он предоставляет мощные функции RAG (Retrieval Augmented Generation), чтобы помочь пользователям быстро извлекать и генерировать информацию. Morphik Core поддерживает крупномасштабную обработку данных и может управлять миллионами документов, сохраняя при этом скорость поиска. Независимо от того, хотите ли вы опробовать новую идею или создать производственную среду, он обеспечивает поддержку. В настоящее время он находится в разработке и планирует запустить хостинговый сервис, где пользователи могут присоединиться к списку ожидания.

Morphik Core:处理多模态数据的开源 RAG 平台

 

Список функций

  • Поддержка мультимодальных данных: можно работать с текстом, PDF, изображениями, видео и другими форматами.
  • Интеллектуальный разбор файлов: автоматически разбивает файлы на более мелкие фрагменты и генерирует вставки.
  • Мультимодальное встраивание ColPali: объединение текстового и графического контента для эффективного поиска.
  • Поддержка графиков знаний: автоматическое извлечение сущностей и связей для улучшения результатов поиска.
  • Правила естественного языка: установление правил для загроможденных данных с целью извлечения структурированной информации.
  • Эффективное кэширование: предварительная обработка данных для снижения вычислительных затрат и ускорения отклика.
  • Расширяемая архитектура: поддержка пользовательских парсеров и различных методов хранения данных.
  • MCP Протоколы: облегчают обмен знаниями с системами искусственного интеллекта.

 

Использование помощи

Morphik Core - это инструмент для разработчиков, позволяющий получать код и использовать его в основном через GitHub. Здесь представлено подробное руководство по установке и эксплуатации, которое поможет вам быстро начать работу.

Процесс установки

Чтобы начать работу с Morphik Core, вам нужно загрузить код с GitHub и настроить свое окружение. Для этого нужно выполнить следующие шаги:

  1. склад клонов
    Введите команду в терминале, чтобы загрузить проект:
git clone https://github.com/morphik-org/morphik-core.git

Затем перейдите в каталог проекта:

cd morphik-core
  1. Создание виртуальной среды
    Создайте автономную среду с Python 3.12, чтобы избежать конфликтов зависимостей:
python3.12 -m venv .venv

Активируйте окружающую среду:

  • Linux/macOS:
    source .venv/bin/activate
    
  • Окна:
    .venv\Scripts\activate
    
  1. Установка зависимостей
    Проекты requirements.txt файл для установки необходимых пакетов:
pip install -r requirements.txt

Если вам не хватает файлов, проверьте последние зависимости в README на GitHub.

  1. Начальные услуги
    Настройте и запустите сервер:
python quick_setup.py
python start_server.py

По завершении работы служба будет localhost:8000 Бег.

Основные функции

В основе Morphik Core лежит способность обрабатывать мультимодальные данные и предоставлять RAG Функции. Вот как это сделать:

1. Импорт данных

Вы можете импортировать текст или файлы с помощью Python SDK. Например, импортируйте фрагмент текста:

from databridge import DataBridge
db = DataBridge("databridge://localhost:8000")
doc = db.ingest_text("这是关于AI技术的示例文档。", metadata={"category": "tech"})
  • Инструкция по эксплуатации: После подключения к серверу импортируйте текст и добавьте метаданные.
  • в конце концов: Текст обрабатывается и сохраняется для извлечения.

Импорт файлов PDF:

doc = db.ingest_file("path/to/document.pdf", metadata={"category": "research"})
  • функциональность: Поддержка PDF, видео и других форматов с автоматическим разбором содержимого.

2. Мультимодальный поиск (ColPali)

Morphik Core использует ColPali для обработки документов, содержащих изображения. Пример:

doc = db.ingest_file("report_with_charts.pdf", use_colpali=True)
chunks = db.retrieve_chunks("显示第二季度收入图表", use_colpali=True, k=3)
  • перейти: Включает ColPali при импорте файлов и возвращает текст и изображения при извлечении.
  • эффект: Вы можете найти содержимое графика или изображения напрямую.

3. Установка правил

Для извлечения информации можно задавать правила на естественном языке:

rules = [
{"type": "metadata_extraction", "schema": {"title": "string", "author": "string"}},
{"type": "natural_language", "prompt": "删除所有个人信息"}
]
doc = db.ingest_file("document.pdf", rules=rules)
  • Соответствует английским -ity, -ism, -ization: Извлечение названий, авторов из файлов или очистка данных по требованию.
  • предложение: Правила должны быть адаптированы к содержанию документа.

4. Картирование знаний

Создание и использование графов знаний для улучшения поиска информации:

db.create_graph("tech_graph", filters={"category": "tech"})
response = db.query("AI如何与云计算相关?", graph_name="tech_graph", hop_depth=2)
  • буровая установка: После создания карты запрос возвращает связанную с ней информацию.
  • доминирование: Результаты более точные и подходят для решения сложных задач.

5. пакетная обработка

Поддерживает пакетный импорт файлов в папки:

docs = db.ingest_directory("data/documents", recursive=True, pattern="*.pdf")
  • функциональность: Рекурсивное сканирование каталога и импорт всех PDF-файлов.
  • взять: Подходит для обработки больших объемов данных.

Функциональное управление

Главными особенностями Morphik Core являются мультимодальная поддержка и эффективность. Здесь представлено подробное описание:

Мультимодальное встраивание ColPali

ColPali позволяет тексту и изображениям работать вместе. Например:

db.ingest_file("report.pdf", use_colpali=True)
chunks = db.retrieve_chunks("查找2024年的销售数据图", use_colpali=True)
  • эффект: Не только возвращать текст, но и находить графики.
  • использовать: Анализ документов, содержащих визуальный контент.

Эффективное кэширование

Предварительная обработка данных для ускорения поиска:

db.cache_documents(filters={"category": "research"})
chunks = db.retrieve_chunks("AI最新进展", k=5)
  • пробег: Сокращение времени отклика и снижение вычислительных затрат 80%.
  • принимать к сведению: Кэш занимает место и регулярно очищается.

масштабируемость

Подключение к базам данных и обработка больших объемов данных:

db.connect_storage("postgresql://user:password@localhost:5432/dbname")
docs = db.ingest_directory("large_data")
  • адъювант: Управляйте миллионами документов с помощью PostgreSQL или MongoDB.
  • темп: Время извлечения сохраняется в секундах.

предостережение

  • Прежде чем использовать его в первый раз, прочитайте на GitHub README.md и официальной документации.
  • Убедитесь, что версия Python равна 3.12 и что зависимости установлены правильно.
  • Вопросы можно отправлять в виде проблем в Discord (https://discord.gg/BwMtv3Zaju) или на GitHub.

Выполнив эти шаги, вы сможете легко установить и использовать Morphik Core для работы с различными данными.

 

сценарий применения

  1. Исследовательская работа Управление
    Исследователь импортирует PDF-файл статьи, извлекает название и аннотацию с помощью правил, формирует граф знаний и быстро находит смежные исследования.
  2. Аналитика корпоративных данных
    Компания обрабатывает отчеты и контракты, извлекает графики и тексты с помощью ColPali и кэширует данные для повышения эффективности.
  3. Сопоставление образовательных ресурсов
    Преподаватели импортируют учебники и видео, устанавливают правила для извлечения ключевых моментов, а студенты могут просматривать содержание курса.

 

QA

  1. Взимает ли Morphik Core плату?
    Никакой платы, это проект с открытым исходным кодом, лицензированный MIT и бесплатный для использования.
  2. Нужен сервер?
    Да, для самостоятельного хостинга требуется локальный сервер, а в будущем появятся варианты облачного хостинга.
  3. Поддерживает ли он видео?
    Поддержка анализа видео и извлечения текста и содержимого.
© заявление об авторских правах

Похожие статьи

DB-GPT:构建AI原生数据应用开发框架,集成多模型管理与智能数据处理

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...