Ir para o conteúdo principal

Agentes de IA em publicidade para posicionamento de conteúdo contextual

Use o Databricks para criar um agente de IA que potencializa a inserção de conteúdo contextual

AI Agents In Advertising for Contextual Content Placement

Published: October 22, 2025

Soluções18 min de leitura

Summary

  • Vá além das palavras-chave. Saiba como um AI Agent no Databricks encontra o momento contextual perfeito para inserção de conteúdo.
  • Crie um pipeline de anúncios mais inteligente. Descubra uma arquitetura que usa modelos multimodais, o Unity Catalog e a busca de vetores (vector search) para analisar um corpus de conteúdo.
  • Um exemplo prático e real. Veja como essa abordagem funciona usando roteiros de filmes para oferecer melhores experiências de anúncio.

Introdução

Encontrar o lugar certo para colocar um anúncio é um grande desafio, já que a inserção de conteúdo contextual tradicional, baseada em palavras-chave, muitas vezes deixa a desejar, perdendo nuances como sarcasmo ou conexões não óbvias. Este blog mostra como um AI Agent criado na Databricks supera essas limitações para conseguir uma inserção de conteúdo altamente sutil e profundamente contextual.

Vamos explorar como isso pode ser feito no contexto de roteiros de filmes e televisão para entender as cenas e os momentos específicos em que o conteúdo terá o maior impacto. Embora nos concentremos neste exemplo específico, o conceito pode ser generalizado para um catálogo mais amplo de dados de mídia, incluindo roteiros de TV, roteiros de áudio (por exemplo, podcasts), artigos de notícias ou blogs. Como alternativa, poderíamos reposicionar isso para publicidade programática, em que os dados de entrada incluiriam o corpus do conteúdo do anúncio e seus metadados e posicionamento associados, e o agent geraria as tags apropriadas para usar na inserção otimizada via inserção programática direta ou baseada em ad server.

Visão geral da solução

Esta solução aproveita os avanços mais recentes do Databricks em ferramentas de AI Agent, incluindo Agent Framework, Vector Search, Unity Catalog e Agent Evaluation com MLflow 3.0. O diagrama abaixo fornece uma visão geral de alto nível da arquitetura.

Diagrama de Arquitetura da Solução de Posicionamento de Conteúdo
Figure 1. content placement Solution Architecture
  1. Fontes de dados: Roteiros de filmes ou conteúdo de mídia armazenados em nuvem ou em sistemas externos
  2. Pré-processamento de dados: o texto não estruturado é ingerido, analisado, limpo e dividido em partes (chunked). Em seguida, criamos embeddings a partir dos trechos de texto processados e os indexamos em um Databricks Vector Store para serem usados como uma ferramenta retriever.
  3. Desenvolvimento do Agent: O agent de posicionamento de conteúdo utiliza a ferramenta retriever de vector search encapsulada em uma Unity Catalog Function, LangGraph, MLflow e um LLM de sua escolha (neste exemplo, usamos um modelo Claude)
  4. Avaliação do agente: A qualidade do agente melhora continuamente por meio de juízes de LLM, juízes personalizados, feedback humano e um ciclo de desenvolvimento iterativo
  5. Implantação do agente: O Agent Framework implanta o agente em um endpoint de serviço de modelo do Databricks, governado, protegido e monitorado pelo AI Gateway.
  6. Uso do aplicativo: Expõe o Agent aos usuários finais por meio do Databricks Apps, um aplicativo personalizado ou do tech stack de publicidade tradicional; registra todo o feedback do usuário e os logs na Databricks para a melhoria contínua da qualidade

Do ponto de vista prático, esta solução permite que os vendedores de anúncios perguntem em linguagem natural o melhor lugar dentro de um corpus de conteúdo para inserir o conteúdo do anúncio com base em uma descrição. Então, neste exemplo, dado que nosso conjunto de dados contém um grande volume de transcrições de filmes, se perguntássemos ao agent: “Onde posso colocar um anúncio de comida para animais de estimação? O anúncio é uma imagem de um beagle comendo em uma tigela”, esperaríamos que nosso agent retornasse cenas específicas de filmes de cães conhecidos, por exemplo, Air Bud - O Cão Amigo ou Marley & Eu.

Abaixo está um exemplo real do nosso agente:

Consulta e resposta do agent na Databricks
Figure 2. Example query & response from agent in Databricks Playground environment

Agora que temos uma compreensão geral da solução, vamos nos aprofundar em como preparamos os dados para criar o agente.

Pré-processamento de dados

Pré-processamento de dados de filmes para inserção contextual
Ao adicionar uma ferramenta de recuperação a um agente (uma técnica chamada Geração Aumentada por Recuperação, ou RAG), o pipeline de processamento de dados é uma etapa crítica para alcançar alta qualidade. Neste exemplo, seguimos as melhores práticas para construir um pipeline de dados não estruturados robusto, que geralmente inclui quatro etapas:

  1. Análise
  2. Segmentação
  3. Incorporações
  4. Indexação

O conjunto de dados que usamos para esta solução inclui 1.200 roteiros de filmes completos, que armazenamos como arquivos de texto individuais. Para inserir o conteúdo do anúncio da maneira mais relevante contextualmente, nossa estratégia de pré-processamento é recomendar a cena específica de um filme, em vez do filme inteiro.

Análise de cena personalizada

Primeiro, fazemos a análise (parsing) das transcrições brutas para dividir cada arquivo de roteiro em cenas individuais, usando o formato padrão de escrita de roteiros como nossos delimitadores de cena (por exemplo, “INT”, “EXT”, etc.). Ao fazer isso, podemos extrair metadados relevantes para enriquecer o conjunto de dados e armazená-los junto com a transcrição bruta em uma tabela Delta (por exemplo, título, número da cena, local da cena).

Estratégia de divisão em trechos de tamanho fixo ciente da cena

Em seguida, implementamos uma estratégia de "chunking" (divisão em blocos) de tamanho fixo em nossos dados de cena limpos, enquanto filtramos cenas mais curtas, já que recuperá-las não agregaria muito valor neste caso de uso.

Observação: Embora tenhamos considerado inicialmente chunks de tamanho fixo (o que provavelmente teria sido melhor do que roteiros completos), a divisão nos delimitadores de cena ofereceu um aumento significativo na relevância de nossas respostas.

Criando o Vector Search Retriever

Em seguida, carregamos os dados no nível da cena em um Índice do Vector Search, aproveitando o Delta-Sync integrado e os embeddings gerenciados pelo Databricks para facilitar a implantação e o uso. Isso significa que, se nosso banco de dados de roteiros for atualizado, nosso índice do Vector Search correspondente também será atualizado para incorporar a atualização dos dados. A imagem abaixo demonstra um exemplo de um único filme (10 Coisas que Eu Odeio em Você) dividido por cenas. O uso da busca de vetores (vector search) permite que nosso agente encontre cenas que são semanticamente semelhantes à descrição do conteúdo do anúncio, mesmo que não haja correspondências exatas de palavras-chave.

Roteiros de filmes pré-processados e divididos em cenas
Figure 3. Example of preprocessed movie scripts, broken down into scenes


Criar o índice do Vector Search de alta disponibilidade e governado é simples, exigindo apenas algumas linhas de código para definir o endpoint, a tabela de origem, o modelo de embedding e a localização no Unity Catalog. Veja o código abaixo para a criação do índice neste exemplo. 

Agora que nossos dados estão em ordem, podemos prosseguir com a criação do nosso agente de posicionamento de conteúdo.

Desenvolvimento de agentes

Um princípio central da IA agentiva no Databricks é equipar um LLM com as ferramentas necessárias para raciocinar com eficácia sobre dados corporativos, desbloqueando a inteligência de dados. Em vez de pedir ao LLM para executar um processo inteiro de ponta a ponta, delegamos certas tarefas a ferramentas e funções, tornando o LLM um orquestrador de processos inteligente. Isso nos permite usá-lo exclusivamente para seus pontos fortes: entender a intenção semântica do usuário e raciocinar sobre como resolver um problema.

Para nossa aplicação, usamos um índice de busca vetorial como um meio de procurar eficientemente por cenas relevantes com base na solicitação de um usuário. Embora a própria base de conhecimento de um LLM pudesse teoricamente ser usada para recuperar cenas relevantes, usar a abordagem de índice do Vector Search é mais prático, eficiente e seguro, pois garante a recuperação de nossos dados corporativos governados no Unity Catalog.

Observe que o Agente usa os comentários na definição da função para identificar quando e como chamar a função em consultas do usuário. O código abaixo demonstra como encapsular um  índice do Vector Search em uma função SQL padrão do Unity Catalog, tornando-o uma ferramenta acessível para o processo de raciocínio do agente. 

Agora que temos um agent definido, qual é o próximo passo?

Agent Evaluation: medindo a qualidade do agente com o MLflow

Um dos maiores obstáculos que impede as equipes de colocar aplicações de agentes em produção é a capacidade de medir a qualidade e a eficácia do agente. Avaliações subjetivas baseadas em 'impressões' não são aceitáveis em uma implantação de produção. As equipes precisam de uma forma quantitativa para garantir que sua aplicação esteja funcionando como esperado e para orientar melhorias iterativas. Todas essas perguntas tiram o sono das equipes de produto e desenvolvimento. Apresentando o Agent Evaluation com MLflow 3.0 do Databricks. O MLflow 3.0 oferece um conjunto robusto de ferramentas, incluindo rastreamento de modelos, avaliação, monitoramento e um registro de prompts para gerenciar o ciclo de vida completo de desenvolvimento do agente. 

Visão geral dos LLM Judges no Databricks

A funcionalidade de avaliação nos permite usar juízes LLM integrados para medir a qualidade em relação a métricas predefinidas. No entanto, para cenários especializados como o nosso, uma avaliação personalizada geralmente é necessária. O Databricks oferece suporte a vários níveis de personalização, desde a definição de “diretrizes” em linguagem natural, em que um usuário fornece critérios de avaliação em linguagem natural e o Databricks gerencia a infraestrutura de avaliação, avaliadores baseados em prompt, em que o usuário fornece um prompt e um critério de avaliação personalizado, ou pontuadores personalizados, que podem ser heurísticas simples ou avaliadores de LLM completamente definidos pelo usuário.

Neste caso de uso, usamos tanto uma diretriz personalizada para o formato da resposta quanto um avaliador personalizado baseado em prompt para avaliar a relevância da cena, oferecendo um poderoso equilíbrio entre controle e escalabilidade.

Geração de Dados Sintéticos

Outro desafio comum na Avaliação de Agentes é não ter uma "ground truth" (verdade de referência) de solicitações de usuários para usar como base de avaliação ao criar seu agente. No nosso caso, não temos um conjunto robusto de possíveis solicitações de clientes, então também precisamos gerar dados sintéticos para medir a eficácia do agente que criamos. Usamos a função integrada `generate_evals_df` para realizar essa tarefa, dando instruções para gerar exemplos que esperamos que correspondam às solicitações dos nossos clientes. Usamos esses dados gerados sinteticamente como entrada para um trabalho de avaliação para inicializar ("bootstrap") um conjunto de dados e permitir uma compreensão quantitativa clara do desempenho do nosso agente antes de entregar aos clientes.

MLflow Evaluate

Com o dataset pronto, podemos executar um job de avaliação para determinar a qualidade do nosso agent em termos quantitativos. Neste caso, usamos uma combinação de judges integrados (Relevância e Segurança), uma diretriz personalizada que avalia se o agent retornou os dados no formato correto e um judge personalizado baseado em prompt que avalia a qualidade da cena retornada em relação à consulta do usuário em uma escala de 1 a 5. Para a nossa sorte, nosso agent parece ter um ótimo desempenho com base no feedback do nosso judge de LLM!

Relatórios de avaliação do agente
Figure 4. Agent Evaluation results

Dentro do MLflow 3, também podemos nos aprofundar nos rastreamentos para entender como nosso modelo está performando e entender a lógica do avaliador por trás de cada resposta. Esses detalhes em nível de observação são extremamente úteis para investigar casos extremos, fazer as alterações correspondentes na definição do agente e ver como essas alterações afetam o desempenho. Este ciclo rápido de iteração e desenvolvimento é extremamente poderoso para criar agentes de alta qualidade. Não estamos mais trabalhando às cegas e agora temos uma visão quantitativa clara do desempenho de nosso aplicativo.

Databricks Review App

Embora os LLMs-como-Avaliadores sejam extremamente úteis e muitas vezes necessários para a escalabilidade, muitas vezes é necessário o feedback de especialistas no assunto para se ter confiança para passar para a produção, bem como para melhorar o desempenho geral do agent. Os especialistas no assunto muitas vezes não são os engenheiros de IA que desenvolvem o processo agêntico, portanto, precisamos de uma forma de coletar feedback e integrá-lo de volta ao nosso produto e aos nossos avaliadores.

O Review App que acompanha os agentes implantados por meio do Agent Framework oferece essa funcionalidade de forma nativa. Os especialistas no assunto (SMEs) podem interagir livremente com o agente, ou os engenheiros podem criar sessões de rotulagem personalizadas que pedem aos especialistas para avaliar exemplos específicos. Isso pode ser extremamente útil para observar o desempenho do agente em casos desafiadores, ou até mesmo como um "teste de unidade" em um conjunto de casos de teste que podem ser altamente representativos das solicitações do usuário final. Esse feedback, positivo ou negativo, é integrado diretamente ao conjunto de dados de avaliação, criando um "padrão ouro" que pode ser usado para o "fine-tuning" (ajuste fino) posterior, bem como para melhorar os juízes automatizados.

A avaliação agêntica é certamente desafiadora e pode consumir muito tempo, exigindo coordenação e investimento entre equipes parceiras, incluindo o tempo dos especialistas no assunto, o que pode ser percebido como algo fora do escopo das atribuições normais da função. No Databricks, vemos as avaliações como a base para a criação de aplicações agênticas, e é fundamental que as organizações reconheçam a importância da avaliação como um componente central do processo de desenvolvimento agêntico.

Implantando o Agente com o Databricks Model Serving e MCP

A criação de agentes no Databricks oferece opções flexíveis para implantação em casos de uso tanto em lote (batch) quanto em tempo real. Neste cenário, utilizamos o Model Serving do Databricks para gerar um endpoint escalável, seguro e em tempo real que se integra downstream por meio da API REST. Como um exemplo simples, expomos isso por meio de um aplicativo Databricks que também funciona como um servidor personalizado do Protocolo de Contexto de Modelo (MCP), o que nos permite utilizar este agente fora do Databricks como uma ferramenta.  

Como uma extensão da funcionalidade principal, podemos integrar recursos de conversão de imagem em texto ao aplicativo Databricks. Abaixo está um exemplo em que um LLM analisa a imagem recebida, gera uma legenda de texto e envia uma solicitação personalizada ao agente de posicionamento de conteúdo, incluindo um público-alvo desejado. Neste caso, usamos uma arquitetura de múltiplos agentes para personalizar a imagem de um anúncio usando o Pet Ad Image Generator e pedimos um posicionamento:
 

Aplicativo Databricks e Servidor MCP para interagir com o agente
Figure 5. Databricks App & MCP Server for interacting with agent

Ao encapsular este agente em um servidor MCP personalizado, ele amplia as opções de integração para anunciantes, editores e planejadores de mídia no ecossistema de adtech existente. 

Conclusão

Ao fornecer um mecanismo de posicionamento escalável, em tempo real e profundamente contextual, este Agente de IA vai além de simples palavras-chave para entregar uma relevância de anúncio significativamente maior, melhorando diretamente o desempenho da campanha e reduzindo o desperdício de anúncios tanto para anunciantes quanto para editores.

Saiba mais sobre agentes de IA no Databricks: explore nossos recursos dedicados sobre como criar e implantar modelos de linguagem grandes e agentes de IA na Databricks Lakehouse Platform.
Fale com um especialista: pronto para aplicar isso ao seu negócio? Entre em contato com nossa equipe para discutir como o Databricks pode ajudar você a criar e dimensionar sua solução de publicidade de última geração.

 

(This blog post has been translated using AI-powered tools) Original Post

Nunca perca uma postagem da Databricks

Inscreva-se nas categorias de seu interesse e receba as últimas postagens na sua caixa de entrada