Chatbot de IA dinâmico com fontes de treinamento personalizadas
Chatbot gpt personalizável
Este projeto é um chatbot de IA dinâmico que pode ser treinado a partir de várias fontes, como PDFs, documentos, sites e vídeos do YouTube. Ele usa um sistema de usuário com autenticação social através do Google e o framework Django REST para seu backend. O chatbot aproveita o modelo de linguagem GPT-3.5 da OpenAI para conduzir conversas e foi projetado para oferecer escalabilidade e facilidade de uso.
Características
- Treine chatbot de múltiplas fontes (PDFs, documentos, sites, vídeos do YouTube)
- Sistema de usuário com autenticação social através do Google
- Conecte-se com o modelo de linguagem OpenAI GPT-3.5 para conversação
- Use Pinecone e FAISS para indexação vetorial
- Empregue text-embedding-ada-002 da OpenAI para incorporação de texto
- Biblioteca Python Langchain para processamento de arquivos e conversão de texto
- Arquitetura escalável com configurações separadas para ambientes locais, de teste e de produção
- Configurações dinâmicas do site para títulos e atualizações imediatas
- Suporte multilíngue
- Suporte ao banco de dados PostgreSQL
- Agendador de tarefas Celery com opções Redis e AWS SQS
- Suporte de bucket AWS S3 para hospedagem escalonável
- Fácil implantação no Heroku ou AWS
Tecnologias
- Linguagem: Python
- Estrutura: Estrutura REST do Django
- Banco de dados: PostgreSQL
Bibliotecas principais:
- Salsão
- Langchain
- OpenAI
- Pinha
- FAISS
Requisitos
- Python 3.8 ou superior
- Django 4.1 ou superior
- Chave de API da pinha
- Chave API da OpenAI
- Redis ou AWS SQS
- Banco de dados PostgreSQL
Escopo Futuro
- Integração com mais serviços de terceiros para autenticação
- Suporte para formatos de arquivo e tipos de mídia adicionais para treinamento de chatbot
- Melhor consciência do contexto em conversas
- Suporte multilíngue aprimorado com detecção automática de idioma
- Integração com plataformas populares de mensagens e aplicativos de bate-papo
Como correr
- Clone o repositório.
git clone https://github.com/shamspias/customizable-gpt-chatbot
- Instale os pacotes necessários executando
pip install -r requirements.txt
- Execute aipo
celery -A config worker --loglevel=info
- Execute o comando
python manage.py runserver
- Abra
http://127.0.0.1:8000/
no seu navegador
No linux e mac é necessário instalar 'sudo apt install python3-dev -y`
- Certifique-se de ter as bibliotecas de desenvolvimento do libcurl instaladas em seu sistema. Você pode instalá-los executando o seguinte comando:
sudo apt-get install libcurl4-openssl-dev gcc libssl-dev -y
- Certifique-se de ter a versão mais recente do pip e setuptools instalada executando o seguinte comando:
pip install --upgrade pip setuptools
-
pip install pycurl
Implantação
O chatbot pode ser implantado no Heroku ou AWS seguindo os procedimentos padrão para implantação do Django nessas plataformas.
Problemas
- Se você não usa AWS SQS, não há necessidade de instalar os pacotes
pycurl
e boto3
. - Se você não usa AWS S3, não há necessidade de instalar o pacote
django-storages
.
Observação
Certifique-se de ter a chave API do OpenAI antes de executar o projeto.
Esta é apenas uma implementação básica do projeto, você sempre pode adicionar mais funcionalidades e customização de acordo com sua necessidade.
Aproveitar!