Este é um chatbot de telegramas baseado em Python que usa a API do OpenAI com os modelos GPT-3.5-Turbo-* para fornecer respostas de conversação aos usuários de uma maneira com reconhecimento de contexto de diálogo.
Você pode configurar facilmente os parâmetros dos modelos OpenAI para o chatbot usando o arquivo models.yml . Essa abordagem permite ajustes rápidos de configurações de modelo, como temperature , max_tokens , voice e assim por diante, sem alterar o código. Simplesmente edite o arquivo models.yml para alterar o comportamento e o estilo de resposta do seu chatbot, conforme necessário.
Clone ou faça o download do repositório.
git clone [email protected]:welel/dialog-chat-bot.git
Fecha na filial GPT-3.5-Turbo .
git checkout gpt-3.5-turbo
Crie um ambiente virtual e ative -o e instale dependências.
python -m venv env
source env/bin/activate
pip install --upgrade pip && pip install -r requirements.txt
Para usar mensagens de voz, instale o FFMPEG.
# on Ubuntu or Debian
sudo apt update && sudo apt install ffmpeg
# on Arch Linux
sudo pacman -S ffmpeg
# on MacOS using Homebrew (https://brew.sh/)
brew install ffmpeg
# on Windows using Chocolatey (https://chocolatey.org/)
choco install ffmpeg
# on Windows using Scoop (https://scoop.sh/)
scoop install ffmpeg
Copie/renomeie .env.dist para .env e preencha -o com dados.
cp .env.dist .env
Configure um bot de telegrama e obtenha um token de bot (consulte https://medium.com/geekculture/gereate-telegram-token-for-bot-api-d26faf9bf064 para obter instruções).
Configure uma conta OpenAI e obtenha uma chave da API (consulte https://beta.openai.com/docs/quickstart para obter instruções).
Execute o bot.
python bot.py
Instale o Docker e o Docker Compose (link se você não souber).
Copie/renomeie .env.dist para .env e preencha -o com dados.
cp .env.dist .env
Agora basta construir a imagem e executá -la com o Docker Compose:
docker compose build
docker compose up -d
Para começar a interagir com o bot, envie qualquer mensagem para o bot de telegrama.
O chatbot usa configurações especificadas no arquivo models.yml para adaptar suas respostas. Esse arquivo permite a personalização detalhada dos parâmetros do modelo OpenAI, oferecendo flexibilidade para ajustar o comportamento do bot de acordo com diferentes necessidades ou contextos.
models.yml O arquivo models.yml no diretório do projeto contém configurações para diferentes modelos ou cenários. Veja como configurá -lo:
Selecionando um modelo : na chave dos models , você pode definir várias configurações.
Cada configuração pode especificar um modelo OpenAI diferente. Por exemplo, a configuração default usa gpt-3.5-turbo com um limite max_tokens de 100. Você precisa definir um nome de configuração de modelo no ambiente variável MODEL_CONFIG_NAME para selecionar a configuração.
Configurando o modelo de bate -papo do OpenAI (seção chat_model ) :
gpt-3.5-turbo , cada uma com diferentes recursos e tamanhos das janelas de contexto. Configurando o comportamento do chatbot (seção chatbot ) :
max_context_len define o número total de tokens (entradas do usuário e respostas de bot) consideradas em uma única janela de conversa. Ajustar isso ajuda a gerenciar os detalhes do histórico de conversação e pode afetar os requisitos computacionais e o faturamento. Configurando a voz de Bot (seção voice ) :
alloy , echo , fable , onyx , nova e shimmer . Cada voz tem um tom e estilo únicos.