Сначала: ваши AI-функции просто крутые!
Во-вторых, если мы разместим файлы PDF, Word или PowerPoint на нашем форуме, сможете ли вы также прочитать их и разбить на векторы для RAG?
Сначала: ваши AI-функции просто крутые!
Во-вторых, если мы разместим файлы PDF, Word или PowerPoint на нашем форуме, сможете ли вы также прочитать их и разбить на векторы для RAG?
К сожалению, поддержка PDF-файлов пока отсутствует — мы рассматриваем возможность её добавления. Однако мы поддерживаем файлы TXT в нашей реализации RAG для персон и инструментов. Таким образом, если вы сможете конвертировать исходные материалы в текстовые файлы, их можно будет использовать в персоне.
Да, именно так мы и поступили: преобразовали вложения в текст и связали их с каждой темой.
Мы несколько раз получали такую обратную связь и рассматриваем возможность расширения поддержки форматов файлов в будущем через нашего AI-бота и реализацию Tool RAG.
В качестве временного решения мы просто конвертируем файлы PowerPoint, Word или PDF в текст и прикрепляем их к соответствующей теме.
Поддержка PDF стала бы настоящим прорывом для многих сообществ! Поскольку это, по сути, универсальный стандарт для документов, нам часто приходится переформатировать материалы в .txt для RAG, что действительно отнимает много времени ![]()
Мы завершаем работу над эмбеддингами, и как только она будет закончена, следующим шагом станет добавление поддержки PDF.
Вау, это очень приятно. Респект команде, которая всегда учитывает потребности сообщества!
А как насчёт JSON-файлов? У меня есть множество экспортированных чатов из Discord, которые нам нужно будет обрабатывать с помощью ИИ, чтобы не потерять эту информацию ![]()
Я думал о дообучении моделей, но, пожалуй, добавлять файлы в Discourse будет лучше и проще для всех, у кого есть похожие задачи.
JSON — это просто текст, поэтому мы уже поддерживаем его.
Для больших языковых моделей это неэффективный формат из-за значительного дублирования внутри структуры, что приведёт к неоправданному расходу токенов, но в целом он будет работать. Я рекомендую запустить скрипт для преобразования и переформатирования данных, чтобы улучшить производительность RAG.
Автоматизировать это очень сложно, так как JSON может быть сильно вложенным, а выбор идеального текстового представления, специфичного для предметной области, сильно зависит от самой области.
Спасибо, Сэм. Можно спросить о вашем предложении поддерживать сбалансированное соотношение производительности и цены при добавлении ~150 МБ JSON (в PDF)?
Это мой первый опыт работы с RAG на наших данных, и я скоро начну изучать этот процесс.
Буду признателен за любые советы от сообщества.
Скажу прямо: этот коммит выглядит просто великолепно ![]()
Не подскажете, есть ли какие-то сроки полного выпуска этой функции? Я вижу, что пока она скрыта как функция сайта.
Одной из сложностей в работе над этим является поддержка PDF-файлов всех типов. Как вы можете себе представить, некоторые PDF-файлы содержат простой текст и их легко обработать. Однако есть файлы с пользовательскими шрифтами, изображениями, графикой, нелинейным форматированием и т.д.
Мы пытаемся найти способ заставить работать все типы PDF-файлов, поэтому это может занять некоторое время.
Очень верно сказано. Я считаю, что DeepSeek сейчас немного меняет эту ситуацию. Запуск более мелких моделей DeepSeek локально с помощью Ollama теперь может обеспечивать качественную инференс и предлагать решение этих проблем.
Извините, что отвлекаю, @Saif, не могли бы вы помочь мне по связанной теме здесь: How to properly debug AI Personas? Спасибо!
Спасибо за такое невероятное дополнение к уже потрясающему плагину.
В PR указано, что:
DigestRagUpload теперь обрабатывает загрузку PDF-файлов и изображений. Оно использует PdfToImages и ImageToText для извлечения текста и создания фрагментов документа.Когда это задание фактически выполняется? Нужно ли мне запускать его вручную?
Я только что загрузил несколько текстовых файлов и один PDF-файл. Текстовые файлы индексируются сразу, но для PDF-файла всё ещё отображается статус «готов к индексации».
Спасибо. ![]()
Задача выполняется, но возникла ошибка:
Jobs::HandledExceptionWrapper: Wrapped NameError: undefined local variable or method `temp_dir’ for an instance of DiscourseAi::Utils::PdfToImages
Я использую собственную установку. Возможно, я смогу разобраться в этом подробнее?
Я бы воздержался от использования этой функции, поскольку она технически ещё не запущена. Вы столкнетесь с проблемами здесь.
Я думаю, я нашел проблему в PdfToImages:
Подтверждаю, дайте мне несколько дней, я также хочу попробовать прямое извлечение текста, что мы можем включить по умолчанию.
Затем «богатое» извлечение на основе LLM можно разместить за флагами.
Проблема многих PDF-файлов в том, что они огромны и могут сильно нагружать ресурсы сервера. Кроме того, такие инструменты, как Tesseract, могут быть довольно сложными в установке, но они могут улучшить качество.
@sam, я размещаю это на собственном сервере и сейчас сталкиваюсь с проблемами в Tesseract. Установил без проблем, но он выдаёт ошибки, которые, кажется, недостаточно серьёзны, чтобы сорвать выполнение задачи:
Ошибка при обработке OCR: /var/www/discourse/lib/discourse.rb:139:in `exec’: Не удалось выполнить OCR изображения с помощью Tesseract
Оценка разрешения как 337
Даже при этой ошибке PDF отображается в Persona как проиндексированный.
Не уверен, что это означает для влияния на RAG. Разберусь глубже в выходные.
Спасибо за столь быстрый ответ.
У нас есть оценка (и я хочу добавить больше), но в целом качество преобразования изображения в текст сильно варьируется в зависимости от модели, если оно не основано на фактах.
Хорошая новость в том, что с PDF мы можем извлекать текст без потерь, а затем полагаться на LLM только для его улучшения, если вы хотите довести его до идеала. Что-то будет на следующей неделе.