AI

Criação de um agente de geração de leads de IA usando dados brilhantes

Descubra como automatizar seu processo de geração de leads usando IA e Bright Data. Este guia abrange tudo, desde scraping até pontuação e divulgação.
15 min de leitura
AI Lead Generation Agent using Bright data

A geração de leads é a força vital das vendas, mas para a maioria das equipes, continua sendo um gargalo frustrante. As abordagens tradicionais são lentas, tendenciosas e difíceis de escalar, prendendo seus melhores talentos em um ciclo de pesquisa manual, entrada de dados e suposições. Mas e se você pudesse transformar essa função crítica de uma tarefa tediosa em uma vantagem automatizada e perfeita?

Neste guia, você aprenderá:
– O que é geração de leads com IA
– Por que a IA supera os métodos tradicionais
– Como construir seu próprio agente de geração de leads passo a passo
– Como a Bright Data potencializa seu fluxo de trabalho

Vamos começar!

O que é geração de leads com IA

Em termos simples, a geração de leads com IA é o processo de usar inteligência artificial para encontrar, coletar, enriquecer e qualificar automaticamente clientes potenciais para o seu negócio. Ela transforma dados brutos em oportunidades de vendas acionáveis.

Pense nisso como um representante de desenvolvimento de vendas altamente eficiente e orientado por dados que trabalha 24 horas por dia, 7 dias por semana. Ele não apenas encontra leads, mas também os compreende.

Um agente de IA executa um fluxo de trabalho automatizado e contínuo, baseado em quatro ações principais:

  1. Scrape – Ele usa autonomamente ferramentas como os Scrapers da Bright Data para coletar dados brutos de fontes específicas (por exemplo, Linkedin, sites de empresas). Esse é o seu método de “interagir com o ambiente externo”.
  2. Enrich (Enriquecer) – O agente pega esses dados brutos, que geralmente são detalhes de uma empresa, e usa outras ferramentas para acrescentar informações cruciais. Ele encontrará automaticamente endereços de e-mail, números de telefone, dados de tecnologia, notícias sobre financiamento da empresa e outros dados disponíveis publicamente.
  3. Pontuação – É aqui que o núcleo de “tomada de decisão” e “resolução de problemas” do agente de IA se destaca. Usando os dados enriquecidos, ele qualifica um lead. Por exemplo:
    • Pontuação baseada em regras: “Se setor = Tecnologia e número_de_funcionários > 50, adicione 10 pontos”.
    • Raciocínio baseado em LLM: um LLM analisa o perfil do lead e as notícias da empresa para avaliar a adequação com base em um prompt detalhado que descreve seu Perfil de Cliente Ideal (ICP). Ele pode compreender critérios complexos que são difíceis de codificar com regras simples.
  4. Engajar: finalmente, o agente executa uma ação. Não se limita apenas à análise. Ele pode adicionar automaticamente o lead qualificado a um CRM, gerar um e-mail de contato personalizado ou até mesmo enviar uma mensagem de primeiro contato em outra plataforma, fechando o ciclo desde a descoberta até o primeiro contato.

Por que a geração tradicional de leads falha

Durante décadas, o processo de vendas para geração de leads permaneceu em grande parte manual. Um representante de vendas procura manualmente por clientes em potencial, avalia seu potencial com base em informações limitadas e espera que seu acompanhamento chegue a uma caixa de entrada cheia no momento certo. Essa abordagem não é apenas ultrapassada, é fundamentalmente falha. Veja por que os métodos tradicionais estão prejudicando sua equipe de vendas:

1.Viés humano na qualificação: o processo manual depende muito de intuições e julgamentos subjetivos. Um representante pode inconscientemente priorizar leads de empresas conhecidas ou funções específicas.

2.Leads escapando: a geração manual de leads é um processo caótico de alternar entre guias, planilhas e entradas de CRM. É inevitável que leads promissores se percam em planilhas desorganizadas do Excel, sejam esquecidos em guias do navegador ou nunca sejam inseridos no sistema na correria inicial das atividades. Cada lead que escapa é uma receita que sai diretamente do seu funil.

3.Disponibilidade limitada das equipes: sua equipe de vendas só pode trabalhar 40 horas por semana (se você tiver sorte). Eles precisam dormir, tirar férias e descansar nos fins de semana. A internet, no entanto, não precisa disso. Os clientes em potencial pesquisam soluções a qualquer hora, mas seu processo manual só pode responder durante o horário comercial. Isso

Por que a geração de leads com IA é importante

A geração de leads com IA não é apenas uma atualização, é uma transformação completa do processo de vendas. Ela é importante porque resolve diretamente as principais falhas dos métodos tradicionais, oferecendo:

  • Automação total: ela lida com as tarefas repetitivas e demoradas de pesquisa e coleta de dados, liberando sua equipe para se concentrar em fechar negócios.
  • Operação 24 horas por dia, 7 dias por semana: ao contrário de uma equipe humana, um agente de IA trabalha sem parar, garantindo que nenhuma oportunidade seja perdida devido aos fusos horários.
  • Decisões baseadas em dados: substitui suposições e preconceitos humanos por qualificação objetiva e baseada em critérios, garantindo que você busque apenas os leads com maior potencial.
  • Resposta instantânea: a IA pode identificar e iniciar contato com um lead em minutos, aumentando drasticamente as taxas de engajamento e conversão.
  • Escala ilimitada: ele pode analisar milhares de clientes potenciais sem esforço, permitindo que sua empresa amplie seu alcance sem aumentar proporcionalmente seu quadro de funcionários.

Agora que você viu como a IA está remodelando o alcance das vendas, é importante entender como construir o seu próprio negócio. A seguir, vamos ver como você pode realmente construir seu próprio agente de geração de leads com tecnologia de IA.

Criando seu agente de geração de leads com IA

Nesta questão, vamos percorrer passo a passo a construção do seu agente de geração de leads com IA. Vamos construir um agente simplificado que automatiza todo o fluxo de trabalho. Você verá como é fácil combinar o Bright Data e o Streamlit para criar um sistema que trabalha incansavelmente para você.

Pré-requisitos

Configure seu ambiente de desenvolvimento com estes requisitos:

  • (Python 3.9) ou superior
  • Conta Bright Data: inscreva-se e crie um token API (créditos de avaliação gratuita disponíveis)
  • Chave API OpenAI: crie uma chave no seu painel OpenAI para embeddings e acesso LLM
  • Um editor de código, como VS Code ou PyCharm
  • O Python Virtual Environment mantém as dependências isoladas.
  • A bibliotecaStreamlit fornece uma interface de usuário interativa, permitindo que os usuários utilizem a ferramenta.

Configuração do ambiente

Crie o diretório do seu projeto e instale as dependências. Comece configurando um ambiente virtual limpo para evitar conflitos com outros projetos Python.

python -m venv venv
# macOS/Linux: source venv/bin/activate
# Windows: venvScriptsactivate
pip install langchain langchain-community langchain-openai streamlit python-dotenv 

Crie um novo arquivo chamado lead_generator.py e adicione as seguintes importações. Essas bibliotecas lidam com Scraping de dados, processamento de texto, embeddings e interface de usuário.

import base64
import json
import streamlit as st
import os
import requests
from dotenv import load_dotenv
from typing import Dict, List, Any

from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain_openai import OpenAIEmbeddings, ChatOpenAI
from langchain_community.vectorstores import FAISS
from langchain.chains import LLMChain
from langchain.prompts import PromptTemplate
from langchain.schema import Document
from langchain.agents import initialize_agent, AgentType, Tool
from langchain.memory import ConversationBufferMemory
from langchain.callbacks import StreamlitCallbackHandler

load_dotenv()

Configuração do Bright Data

Armazene suas credenciais de API com segurança usando variáveis de ambiente. Crie um arquivo .env para armazenar suas credenciais, mantendo as informações confidenciais separadas do seu código.

BRIGHT_DATA_API_TOKEN="seu_bright_data_api_token_aqui"
OPENAI_API_KEY="sua_openai_api_key_aqui"

Você precisa de:

  • Token da API Bright Data: gere a partir do seu painel Bright Data
  • Chave da API OpenAI: para geração de texto LLM

Etapa 1: Coleta de dados com o Bright Data

É hora de definir uma configuração para obter dados de leads, por exemplo, de perfis do LinkedIn.

Se você não está familiarizado com o funcionamento das APIs Web Scraper da Bright Data, vale a pena verificar primeiro a documentação.

Resumidamente, as APIs Web Scraper fornecem pontos finais de API que permitem recuperar dados públicos de domínios específicos. Nos bastidores, a Bright Data inicializa e executa uma tarefa de scraping pronta em seus servidores. Essas APIs lidam com rotação de IP, Resolução de CAPTCHA e outras medidas para coletar dados públicos de páginas da web de forma eficaz e ética. Quando a tarefa é concluída, os dados coletados são analisados em um formato estruturado e disponibilizados para você como um instantâneo.

Portanto, o fluxo de trabalho geral é:

  1. Acione a chamada da API para iniciar uma tarefa de Scraping de dados.
  2. Verifique periodicamente se o instantâneo contendo os dados coletados está pronto.
  3. Recuperar os dados do instantâneo assim que estiverem disponíveis.

Você pode implementar a lógica acima com apenas algumas linhas de código

class BrightDataCollector:
    def __init__(self, api_key: str):
        self.api_key = api_key
        self.base_url = "https://api.brightdata.com/conjuntos_de_datos/v3"
        self.headers = {"Authorization": f"Bearer {api_key}"}

    def collect_leads(self, filters: Dict[str, Any], limit: int = 10) -> List[Dict[str, Any]]:
        # Acionar pesquisa
        r = requests.post(
            f"{self.base_url}/trigger",
            headers={**self.headers, "Content-Type": "application/json"},
            params={"dataset_id": "gd_your_lead_dataset_id", "type": "discover_new", "limit_per_input": str(limit)},
            json=[{
                "keyword": f"{filters.get('role','')} {filters.get('industry','')}".strip(),
                "location": filters.get("location", "")
            }]
        )
        snapshot_id = r.json().get("snapshot_id")
        if not snapshot_id:
            return []

        # Pesquisar até estar pronto
        url = f"{self.base_url}/snapshot/{snapshot_id}?format=json"
        para _ no intervalo (30):
            snap = requests.get(url, headers=self.headers)
            se snap.status_code == 200:
                retornar snap.json()
            time.sleep(5)
        retornar []

Etapa 2: Qualificar leads com IA

Depois de coletar leads brutos, o próximo desafio é descobrir quais deles se encaixam no seu perfil de cliente ideal. Em vez de pontuação manual, você pode usar um qualificador de IA que extrai parâmetros de pesquisa, analisa leads, atribui pontuações de relevância e destaca as melhores correspondências.

Na classe abaixo, mostramos como construir esse fluxo de trabalho com LangChain e OpenAi.

   """Qualificação e pontuação de leads com IA"""

    def __init__(self, api_key: str):
        self.llm = ChatOpenAI(api_key=api_key, model_name="gpt-3.5-turbo", temperature=0.3)
        self.embeddings = OpenAIEmbeddings(api_key=api_key)

        # Solicitação de qualificação
        self.analysis_prompt = PromptTemplate(
            input_variables=["query", "lead"],
            template="""
            Consulta original: {query}
            Lead: {lead}

            Retorne JSON com:
            - pontuação (1-100)
            - análise
            - pontos_críticos
            - proposta_de_valor
            - nível_de_tomada_de_decisão
            - probabilidade_de_engajamento
            """
        )

        self.analysis_chain = LLMChain(llm=self.llm, prompt=self.analysis_prompt)

    def qualificar(self, lead: dict, consulta: str) -> dict:
        """Qualificar um único lead"""
        resultado = self.analysis_chain.run(query=query, lead=json.dumps(lead))
        retornar {**lead, **json.loads(resultado)}

    def batch_qualify(self, leads: list, query: str) -> list:
        """Qualificar e classificar leads"""
        results = [self.qualify(lead, query) for lead in leads]
        return sorted(results, key=lambda x: x["score"], reverse=True)

    def vector_store(self, leads: list):
        """Criar armazenamento de vetores FAISS para pesquisa semântica"""
docs = [Document(page_content=f"{l['name']} {l['title']} {l['company']}", metadata={"i": i})
para i, l em enumerate(leads)]
retornar FAISS.from_documents(docs, self.embeddings)

Etapa 3: IU Streamlit para interação

Esta é a camada da interface do usuário que une tudo, permitindo que você configure chaves de API, controle configurações de IA e explore leads com visuais claros

st.set_page_config(page_title="Agente de geração de leads com IA", page_icon="🎯", layout="wide")

# Cabeçalho
st.title("🔎 Agente de geração de leads com IA")

# Configurações da barra lateral
com st.sidebar:
    st.header("Chaves API")
    bright_data_api_key = st.text_input("Chave API Bright Data", type="password")
    openai_api_key = st.text_input("Chave API OpenAI", type="password")
    st.header("Configurações")
    model_name = st.selectbox("Modelo OpenAI", ["gpt-3.5-turbo", "gpt-4"])
    max_leads = st.slider("Leads máximos", 5, 50, 10)

# Interface de chat
if "messages" not in st.session_state:
    st.session_state.messages = []

para msg em st.session_state.messages:
    com st.chat_message(msg["role"]):
        st.markdown(msg["content"])

user_input = st.chat_input("Descreva seus leads ideais...")

se user_input:
    st.session_state.messages.append({"role": "user", "content": user_input})
    st.chat_message("user").markdown(user_input)

    # Placeholder: a IA extrai filtros e busca leads
    st.chat_message("assistant").markdown("Extracted filters, fetching leads...")

# Exibir um cartão de lead simples
def display_lead_card(lead: Dict[str, Any]):
    com st.expander(f"{lead.get('name')} - {lead.get('title')} na {lead.get('company')}"):
        st.write(f"Localização: {lead.get('location', 'N/A')}")
        st.write(f"E-mail: {lead.get('email', 'N/A')}")
        st.write(f"LinkedIn: {lead.get('linkedin', 'N/A')}")
        st.write(f"Pontuação: {lead.get('score', 0)}/100")

# Exemplos de leads
sample_leads = [
    {"name": "Jane Doe", "title": "Gerente de Marketing", "company": "Fintech Co", "location": "CA", "email": "[email protected]", "linkedin": "linkedin.com/janedoe", "score": 85}
]

st.subheader("Leads qualificados")
for lead in sample_leads:
    display_lead_card(lead)

Com essa interface do usuário, os usuários não recebem apenas pontuações JSON brutas, mas também veem leads classificados, insights e potencial de engajamento rapidamente.

Etapa 4: Automatizar acompanhamentos

Depois de qualificar seus leads, você ainda precisará interagir com eles no momento certo e com a mensagem certa. É aí que entra a automação. A classe FollowUpAutomator gera e-mails personalizados, mensagens no LinkedIn e acompanhamentos, e então os agenda e executa em uma sequência estruturada.

class FollowUpAutomator:
    """Sistema básico de acompanhamento automatizado para leads qualificados"""

    def __init__(self, api_key: str):
        self.llm = ChatOpenAI(api_key=api_key, model_name="gpt-3.5-turbo", temperature=0.7)

        # Modelos simples
        self.initial_prompt = PromptTemplate(
            input_variables=["name", "company"],
            template="Escreva um e-mail de contato curto e amigável para {name} na {company}."
        )
        self.followup_prompt = PromptTemplate(
            input_variables=["nome", "empresa"],
            template="Escreva um e-mail de acompanhamento educado para {nome} na {empresa}, com menos de 80 palavras."
        )
        self.linkedin_prompt = PromptTemplate(
            input_variables=["name", "industry"],
            template="Escreva uma mensagem curta no LinkedIn para {name} no setor {industry}."
        )

        self.initial_chain = LLMChain(llm=self.llm, prompt=self.initial_prompt)
        self.followup_chain = LLMChain(llm=self.llm, prompt=self.followup_prompt)
        self.linkedin_chain = LLMChain(llm=self.llm, prompt=self.linkedin_prompt)

    def create_sequence(self, lead: Dict[str, Any]) -> List[Dict[str, Any]]:
        """Cria uma sequência de contato em três etapas para um lead"""
        return [
            {"day": 0, "type": "email", "content": self.initial_chain.run(name=lead["name"], company=lead["company"])},
            {"day": 2, "type": "linkedin", "content": self.linkedin_chain.run(name=lead["name"], industry=lead.get("industry", ""))},
            {"dia": 7, "tipo": "e-mail", "conteúdo": self.followup_chain.run(nome=lead["nome"], empresa=lead["empresa"])}
        ]

    def schedule(self, leads: Lista[Dict[str, Qualquer]]) -> Lista[Dict[str, Qualquer]]:
        """Atribui datas a cada contato"""
        agendado = []
        para lead em leads:
            base = datetime.now()
            sequência = self.create_sequence(lead)
            para contato em sequência:
                contato["data_agendada"] = base + timedelta(days=contato["dia"])
                contato["lead"] = lead["nome"]
            agendado.append({"lead": lead["nome"], "sequência": sequência})
        retornar agendado

Etapa 5: Concluir o código e executar

Seu código final em lead_generator.py e agora você pode executá-lo com:

streamlit run lead_generator.py

Quando você executa a base de código completa, o assistente recebe sua consulta, extrai novos leads da Bright Data e os enriquece com pontuação e insights baseados na IA. Cada lote de 10 leads é processado até que 40 anúncios de emprego sejam analisados, pontuados e classificados por relevância, poder de decisão e probabilidade de engajamento. Por fim, o conjunto completo de resultados aprimorados é exportado para um arquivo results.csv limpo, fornecendo a você não apenas uma lista de contatos, mas um banco de dados de leads qualificados por IA pronto para ação.

The final UI of the AI lead generation agent

Conclusão

Agora você tem uma estrutura completa para construir um agente de geração de leads alimentado por IA que automatiza todo o fluxo de trabalho de prospecção. Este sistema coleta autonomamente dados novos da web, os enriquece com contexto crucial, qualifica leads de forma inteligente com base no seu perfil de cliente ideal e os prepara para engajamento imediato.

O verdadeiro poder dessa abordagem está em sua flexibilidade. Você pode adaptar essa estrutura para qualquer setor, de SaaS e finanças a comércio eletrônico e recrutamento, simplesmente modificando suas fontes de dados de destino e critérios de qualificação nas configurações do Bright Data e LLM. O design modular permite que você incorpore facilmente novos pontos de dados, algoritmos de pontuação ou canais de saída à medida que seu processo de vendas evolui.

Para criar fluxos de trabalho mais avançados e poderosos, recomendamos que você explore toda a gama de Conjuntos de dados e soluções na documentação do Bright Data.

Crie uma contagratuita no Bright Data hoje mesmo e use seus créditos de avaliação para começar a construir seu próprio agente automatizado de geração de leads. Transforme seu funil de vendas de uma torneira com vazamento em um mecanismo de receita previsível e de alta velocidade.