AnyChat: общайтесь со своими документами
AnyChat — это мощный чат-бот, который позволяет вам взаимодействовать с вашими документами (PDF, TXT, DOCX, ODT, PPTX, CSV и т. д.) естественным и диалоговым способом. Он использует возможности LangChain, Ollama, Groq, Gemini и Streamlit для обеспечения интуитивно понятного и информативного опыта.
Чат-бот-20_04_24.mp4
Функции
- Диалоговое взаимодействие: задавайте вопросы о ваших документах и получайте человеческие ответы от чат-бота.
- Поддержка нескольких документов: загрузка и обработка документов различных форматов, включая PDF-файлы, текстовые файлы, документы Word, электронные таблицы и презентации.
- Поддержка чата на веб-сайте: общайтесь с любым действующим веб-сайтом.
- Расширенные языковые модели: выбирайте одну из различных языковых моделей (LLM), таких как Ollama, Groq и Gemini, для обеспечения ответов чат-бота.
- Модели внедрения: выберите Ollama Embeddings или GooglePalm Embeddings, чтобы улучшить понимание ваших документов чат-ботом.
- Удобный интерфейс: Streamlit предоставляет понятный и интуитивно понятный интерфейс для взаимодействия с чат-ботом.
Установка
Предварительные условия
- Питон 3.10 или выше
- Виртуальная среда (рекомендуется)
Клонировать репозиторий
Клонируйте репозиторий AnyChat с GitHub:
git clone https://github.com/shitan198u/AnyChat.git
Перейдите в рабочий каталог
Использование Rye
(рекомендуется)
Установите менеджер пакетов Rye: Руководство по установке
Синхронизируйте проект:
Использование venv
- Создайте виртуальную среду:
python -m venv anychat-env
- Активируйте виртуальную среду:
source anychat-env/bin/activate
- Установите необходимые зависимости:
pip install -r requirements.txt
Использование conda
- Создайте среду conda:
conda create -n anychat-env python=3.12
- Активируйте среду conda:
conda activate anychat-env
- Установите необходимые зависимости:
conda install --file requirements.txt
Конфигурация
- Переименуйте файл
secrets_example.toml
в secrets.toml
в каталоге src/anychat/.streamlit/
.
Установка Олламы
Чтобы использовать Ollama для AnyChat, вам необходимо установить Ollama и загрузить необходимые модели. Следуйте инструкциям ниже:
- Установите Олламу:
Посетите официальный сайт Ollama для получения инструкций по установке: Ollama Скачать
- Скачать модели Олламы:
Откройте терминал и выполните следующие команды, чтобы загрузить необходимые модели:
ollama pull nomic-embed-text
Эта команда загружает модель nomic-embed-text
, необходимую для запуска вложений Ollama.
Эта команда загружает модель openchat
, которую вы можете использовать в качестве языковой модели в AnyChat.
Использование
- Установите ключи API:
- Если вы используете Google Gemini или Groq, получите необходимые ключи API и надежно сохраните их в файле
src/anychat/.streamlit/secrets.toml
или загрузите их в интерфейс чат-бота.
- Запустите приложение:
cd src/anychat
streamlit run chatbot.py
- Использование ржи
cd src/anychat
rye run streamlit run chatbot.py
- Загрузить документы:
- В интерфейсе Streamlit загрузите документы, с которыми хотите пообщаться.
- Нажмите кнопку «Обработать», чтобы обработать документы.
- Начать общение:
- Как только документы будут обработаны, вы сможете начать задавать вопросы в поле ввода чата.
- Чат-бот проанализирует ваши документы и предоставит соответствующие ответы на основе их содержания.
Лицензия
Этот проект лицензируется по лицензии MIT. Подробности смотрите в файле LICENSE
.
Дополнительные примечания
- Для оптимальной производительности убедитесь, что у вас есть необходимые ресурсы (ЦП, ОЗУ) для обработки документов и вычислений LLM.
- Точность и скорость реагирования чат-бота могут варьироваться в зависимости от сложности ваших документов и выбранного LLM.
- Рассмотрите возможность использования среды с поддержкой графического процессора, если у вас есть к ней доступ, поскольку она может значительно ускорить обработку.