Agent
Agente de vendas imobiliárias Júlia, implementado com pydantic-ai. Responsável por:
- Conduzir conversas com compradores em português via WhatsApp
- Detectar a fase de venda a cada turno
- Injetar exemplos reais de conversas anteriores para guiar tom e estilo
- Invocar ferramentas com dados reais do catálogo
Veja Arquitetura: Visão Geral para o fluxo completo de uma mensagem.
Chat
TurnInterpretation
chat(buyer_msg, history, phase=None, deps=None)
async
chat_stream(buyer_msg, history, phase=None, deps=None)
async
Stream agent reply token by token.
Yields (chunk, is_done, full_reply, new_history). is_done=False while streaming, True on final yield.
interpret(buyer_msg, agent_reply, history)
async
Ferramentas
As ferramentas são registradas no agente pydantic-ai e chamadas automaticamente pelo LLM quando apropriado.
Agent tools — buscar_imoveis, qualificar_comprador, propor_visita.
buscar_imoveis(ctx, quartos=None, bairro=None, preco_min=None, preco_max=None, tipo=None)
async
Busca imóveis em Jundiaí no catálogo real da Bela Vista.
Use quando o comprador mencionar quartos, bairro ou faixa de preço. Aceita variações como "Chacar Reunida" = "Chácara Reunida". Apresente no máximo 3 opções ao comprador. Nunca invente imóveis — use APENAS os resultados.
qualificar_comprador(ctx, quartos=None, bairro=None, preco_min=None, preco_max=None, prazo=None)
async
Registra informações de qualificação do comprador.
Use quando o comprador mencionar o que procura: quartos, bairro preferido, faixa de preço ou prazo para compra. Retorna um resumo do perfil coletado até agora.
propor_visita(ctx, imovel_slug=None, dia_semana=None, periodo=None)
async
Propõe uma visita presencial ao imóvel.
Use quando o comprador demonstrar interesse real em visitar. dia_semana: 'segunda' a 'sábado' periodo: 'manhã' (9h-12h), 'tarde' (14h-17h)