Pular para conteúdo

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)