Английский документ 中文文档
CHATWEB может заполнить любую веб -страницу или извлечь текст из PDF, DOCX, TXT FILES и генерировать встроенное резюме. Это также может ответить на ваши вопросы на основе содержания текста. Он реализован с использованием ChatAPI и EnceddingAPI на основе GPT3.5, а также векторной базы данных.
Основной принцип аналогичен существующим проектам, таким как CHATPDF и автоматизированный ИИ обслуживания клиентов.
Страги Clawl Веб-страницы. Извлечение текстового содержимого Использовать API встроенного API GPT3.5 для генерации векторов для каждого абзаца Рассчитайте оценку сходства между вектором каждого абзаца и вектором текста, чтобы генерировать резюме сохранение векторного текстового картирования в векторной базе данных. Создание ключевых слов из пользовательского ввода Сгенерировать вектор из ключевых слов Используйте векторную базу данных для выполнения поиска ближайшего соседа и вернуть список наиболее похожих текстов, используемых API чата GPT3.5 для разработки подсказки, которая отвечает на вопрос пользователя на основе самых похожих текстов в списке. Идея состоит в том, чтобы извлечь соответствующий контент из большого количества текста, а затем ответить на вопросы на основе этого контента, который может достичь аналогичного эффекта для преодоления пределов токена.
Было сделано улучшение для создания векторов на основе ключевых слов, а не на вопрос пользователя, который повышает точность поиска соответствующих текстов.
git clone https://github.com/SkywalkerDarren/chatWeb.gitcd chatWebconfig.example.json в config.jsonconfig.json и установить open_ai_key в свой ключ API OpenAIpip3 install -r requirements.txtpython3 main.py Если вы предпочитаете, вы также можете запустить этот проект, используя Docker:
docker-compose build (необходимо только один раз, когда вы не планируете поддерживать эту репо)config.example.json в config.json и установить все необходимые вещи. Пример конфигурации уже подходит для работы с Docker, не нужно что -то менять там, если у вас нет open_ai_key в ваших переменных env, вы также можете установить его здесь, или позже, если вы запустите это приложение.http://localhost:7860 config.json , установить language на English или другой язык config.json и set mode в console , api или webui чтобы выбрать режим запуска.console введите /help в просмотре команд.api услуга API может быть предоставлена внешнему миру. api_port и api_host могут быть установлены в config.json .webui можно предоставить службу интерфейса веб -пользователя. webui_port может быть установлен в config.json , Defalling to http://127.0.0.1:7860 . config.json и установить use_stream на true . config.json и установить temperature на значение от 0 до 1.config.json и добавить open_ai_proxy для вашего прокси -адреса, например: "open_ai_proxy": {
"http": "socks5://127.0.0.1:1081",
"https": "socks5://127.0.0.1:1081"
}
config.json и установить use_postgres в true .postgresql://localhost:5432/mydb , или вы можете установить его в config.json .Скомпилируйте и установите расширение (поддержка Postgres 11+).
git clone --branch v0.4.0 https://github.com/pgvector/pgvector.git
cd pgvector
make
make install # may need sudoЗатем загрузите его в базу данных, в которой вы хотите использовать его
CREATE EXTENSION vector;
pip3 install psycopg2Please enter the link to the article or the file path of the PDF/TXT/DOCX document: https://gutenberg.ca/ebooks/hemingwaye-oldmanandthesea/hemingwaye-oldmanandthesea-00-e.html
Please wait for 10 seconds until the webpage finishes loading.
The article has been retrieved, and the number of text fragments is: 663
...
=====================================
Query fragments used tokens: 7219, cost: $ 0.0028876
Query fragments used tokens: 7250, cost: $ 0.0029000000000000002
Query fragments used tokens: 7188, cost: $ 0.0028752
Query fragments used tokens: 7177, cost: $ 0.0028708
Query fragments used tokens: 2378, cost: $ 0.0009512000000000001
Embeddings have been created with 663 embeddings, using 31212 tokens, costing $ 0.0124848
The embeddings have been saved.
=====================================
Please enter your query (/help to view commands):