Перейти к основному содержимому

🪶 Извлечение с Apache Tika

warning

Этот учебник является вкладом сообщества и не поддерживается командой Open WebUI. Он служит только для демонстрации того, как настроить Open WebUI для ваших конкретных нужд. Хотите внести вклад? Ознакомьтесь с учебником по внесению вклада.

🪶 Извлечение с Apache Tika

Эта документация предоставляет пошаговое руководство по интеграции Apache Tika с Open WebUI. Apache Tika — это инструмент анализа содержимого, который может использоваться для обнаружения и извлечения метаданных и текстового содержимого из более чем тысячи различных типов файлов. Все эти типы файлов можно обрабатывать через единый интерфейс, делая Tika полезным для индексации поисковых систем, анализа содержимого, перевода и многого другого.

Требования

  • Установленный экземпляр Open WebUI
  • Docker установлен на вашей системе
  • Настроенная сеть Docker для Open WebUI

Шаги интеграции

Шаг 1: Создание Docker Compose файла или запуск команды Docker для Apache Tika

У вас есть два варианта запуска Apache Tika:

Вариант 1: Использование Docker Compose

Создайте новый файл с именем docker-compose.yml в том же каталоге, где находится ваш экземпляр Open WebUI. Добавьте следующую конфигурацию в файл:

services:
tika:
image: apache/tika:latest-full
container_name: tika
ports:
- "9998:9998"
restart: unless-stopped

Запустите файл Docker Compose, используя следующую команду:

docker-compose up -d

Вариант 2: Использование команды Docker Run

В качестве альтернативы вы можете запустить Apache Tika с помощью следующей команды Docker:

docker run -d --name tika \
-p 9998:9998 \
--restart unless-stopped \
apache/tika:latest-full

Обратите внимание, что если вы решите использовать команду Docker run, вам потребуется указать флаг --network, если вы хотите запускать контейнер в той же сети, что и ваш экземпляр Open WebUI.

Шаг 2: Настройка Open WebUI для использования Apache Tika

Чтобы использовать Apache Tika в качестве движка извлечения контекста в Open WebUI, выполните следующие действия:

  • Войдите в свой экземпляр Open WebUI.
  • Перейдите в меню настроек Admin Panel.
  • Щелкните Settings.
  • Перейдите на вкладку Documents.
  • Измените значение выпадающего списка движка извлечения содержимого Default на Tika.
  • Обновите URL-адрес движка извлечения контекста на http://tika:9998.
  • Сохраните изменения.

Проверка Apache Tika в Docker

Чтобы проверить, что Apache Tika работает корректно в среде Docker, выполните следующие шаги:

1. Запуск контейнера Apache Tika Docker

Сначала убедитесь, что контейнер Apache Tika Docker запущен. Вы можете запустить его, используя следующую команду:

docker run -p 9998:9998 apache/tika

Эта команда запускает контейнер Apache Tika и сопоставляет порт 9998 из контейнера с портом 9998 на вашем локальном компьютере.

2. Убедитесь, что сервер работает

Вы можете убедиться, что сервер Apache Tika работает, отправив запрос GET:

curl -X GET http://localhost:9998/tika

Эта команда должна вернуть следующий ответ:

This is Tika Server. Please PUT

3. Проверка интеграции

Кроме того, вы можете попробовать отправить файл для анализа, чтобы протестировать интеграцию. Вы можете протестировать Apache Tika, отправив файл для анализа с помощью команды curl:

curl -T test.txt http://localhost:9998/tika

Замените test.txt на путь к текстовому файлу на вашем локальном компьютере.

Apache Tika ответит обнаруженными метаданными и типом содержимого файла.

Использование скрипта для проверки Apache Tika

Если вы хотите автоматизировать процесс проверки, этот скрипт отправляет файл в Apache Tika и проверяет ответ на наличие ожидаемых метаданных. Если метаданные присутствуют, скрипт выведет сообщение об успешном анализе вместе с метаданными файла; в противном случае будет отображено сообщение об ошибке и ответ от Apache Tika.

import requests

def verify_tika(file_path, tika_url):
try:
# Отправка файла в Apache Tika и проверка результата
response = requests.put(tika_url, files={file: open(file_path, rb)})

if response.status_code == 200:
print("Apache Tika успешно проанализировал файл.")
print("Ответ от Apache Tika:")
print(response.text)
else:
print("Ошибка анализа файла:")
print(f"Код статуса: {response.status_code}")
print(f"Ответ от Apache Tika: {response.text}")
except Exception as e:
print(f"Произошла ошибка: {e}")

if __name__ == "__main__":
file_path = "test.txt" # Укажите путь к вашему файлу
tika_url = "http://localhost:9998/tika"

verify_tika(file_path, tika_url)

Инструкции по запуску скрипта:

Требования

  • Python 3.x должен быть установлен на вашей системе
  • Библиотека requests должна быть установлена (вы можете установить ее с помощью pip: pip install requests)
  • Контейнер Apache Tika Docker должен быть запущен (используйте команду docker run -p 9998:9998 apache/tika)
  • Замените "test.txt" на путь к файлу, который вы хотите отправить в Apache Tika

Запуск скрипта

  1. Сохраните скрипт как verify_tika.py (например, используя текстовый редактор, такой как Notepad или Sublime Text)
  2. Откройте терминал или командную строку
  3. Перейдите в каталог, где вы сохранили скрипт (используя команду cd)
  4. Запустите скрипт с помощью следующей команды: python verify_tika.py
  5. Скрипт выдаст сообщение, указывающее, работает ли Apache Tika корректно

Примечание: если вы сталкиваетесь с какими-либо проблемами, убедитесь, что контейнер Apache Tika запущен корректно и файл отправляется по правильному URL.

Заключение

Следуя этим шагам, вы можете убедиться, что Apache Tika работает корректно в окружении Docker. Вы можете протестировать настройку, отправив файл для анализа, проверить, что сервер работает через GET-запрос, или использовать скрипт для автоматизации процесса. Если вы столкнетесь с какими-либо проблемами, убедитесь, что контейнер Apache Tika запущен корректно и файл отправляется по правильному URL.

Устранение неполадок

  • Убедитесь, что служба Apache Tika работает и доступна с экземпляра Open WebUI.
  • Проверьте логи Docker на наличие ошибок или проблем, связанных со службой Apache Tika.
  • Убедитесь, что URL двигателя извлечения контекста правильно настроен в Open WebUI.

Преимущества интеграции

Интеграция Apache Tika с Open WebUI предоставляет несколько преимуществ, включая:

  • Улучшенное извлечение метаданных: Расширенные возможности Apache Tika по извлечению метаданных помогут вам извлекать точные и релевантные данные из ваших файлов.
  • Поддержка множества форматов файлов: Apache Tika поддерживает широкий спектр форматов файлов, что делает его идеальным решением для организаций, работающих с разнообразными типами файлов.
  • Улучшенный анализ содержимого: Расширенные возможности анализа содержимого Apache Tika помогут вам извлечь ценные инсайты из ваших файлов.

Заключение

Интеграция Apache Tika с Open WebUI — это простой процесс, который может улучшить способности Open WebUI по извлечению метаданных. Следуя шагам, указанным в этой документации, вы сможете легко настроить Apache Tika как механизм извлечения контекста для Open WebUI.