Aplicações conversacionais com LLMs

Aplicações conversacionais com LLMs

Introdução

Os modelos de linguagem permitem criar aplicações conversacionais sofisticadas, capazes de entender e responder aos usuários de forma natural. Este tutorial explora as diferentes maneiras de implementar chatbots e assistentes virtuais com LLMs.

Tipos de aplicações conversacionais

1. Chatbots

2. Assistentes virtuais

3. Agentes conversacionais

Implementação

1. Base de conversação

from openai import OpenAI
import json
from typing import List, Dict, Any

class ConversationManager:
    def __init__(self, api_key: str):
        self.client = OpenAI(api_key=api_key)
        self.conversation_history: List[Dict[str, str]] = []
    
    def add_message(self, role: str, content: str):
        self.conversation_history.append({
            "role": role,
            "content": content
        })
    
    def get_response(self, user_message: str) -> str:
        # Adicionar a mensagem do usuário
        self.add_message("user", user_message)
        
        # Obter a resposta do modelo
        response = self.client.chat.completions.create(
            model="gpt-3.5-turbo",
            messages=self.conversation_history,
            temperature=0.7
        )
        
        # Extrair e salvar a resposta
        assistant_message = response.choices[0].message.content
        self.add_message("assistant", assistant_message)
        
        return assistant_message
    
    def clear_history(self):
        self.conversation_history = []