O CrewAI permite que você crie equipes de IA onde cada agente tem funções, ferramentas e objetivos específicos, trabalhando em conjunto para realizar tarefas complexas.

Pense nisso como se estivesse montando sua equipe dos sonhos: cada membro (agente) traz habilidades e conhecimentos únicos, colaborando perfeitamente para atingir seus objetivos.

Assim como uma empresa tem departamentos (Vendas, Engenharia, Marketing) trabalhando juntos sob liderança para atingir objetivos de negócios, o CrewAI ajuda você a criar uma organização de agentes de IA com funções especializadas colaborando para realizar tarefas complexas.

Site Oficial: www.crewai.com

01 - Passo

Utilize o colab.new para instalar os pacotes do CrewAI.

!pip install -q -U crewai crewai_tools

02 - Passo

Realize a importação dos Agent, Task e Crew, execute e em seguida adicione mais um bloco de código: + Código

from crewai import Agent, Task, Crew

03 - Passo

Para este exemplo vou utilizar a API da OpenAI

Acesse o site platform.openai.com/settings/organization/api-keys e gere a API_KEY.

04 - Passo

Defina a variável OPEN_API_KEY com a Chave gerada no site da OpenAI.

import os
from google.colab import userdata

os.environ["OPENAI_API_KEY"] = userdata.get('OPENAI_API_KEY')
os.environ["OPEN_MODEL_NAME"] = 'gpt-4o'

os.environ["SERPER_API_KEY"] = userdata.get('SERPER_API_KEY')

05 - Passo

Para obter dados da internet sugiro a utilização da API do Serper.

Acesse o site serper.dev e gere a API Key.

06 - Passo

Defina a variável SERPER_API_KEY com a Chave gerada no site da Serper.

07 - Passo

Execute o código para certificar que as variáveis foram configuradas corretamente.

08 - Passo

Importe as ferramentas para fazer Web Sraping nos sites.

Para mais opções acesse: docs.crewai.com/concepts/tools

from crewai_tools import SerperDevTool, ScrapeWebsiteTool

search_tool = SerperDevTool()
scrape_tool = ScrapeWebsiteTool()

09 - Passo

Criando o Agente de Busca de Conteúdo.

Para mais detalhes sobre os parâmetros dos Agents, acesse: docs.crewai.com/concepts/agents

buscador = Agent(
    role='Buscador de Conteúdo',
    goal='Localizar e consolidar informações relevantes sobre {tema} a partir de fontes online.',
    backstory=(
        'Você é um especialista em busca e curadoria de conteúdo. '
        'Seu objetivo é pesquisar informações relevantes sobre {tema}, coletá-las de diversas fontes online e organizá-las de forma estruturada. '
        'Os dados que você reunir servirão como base para o Redator de Conteúdo, garantindo que ele tenha materiais confiáveis e atualizados para a criação do artigo.'
    ),
    tools=[search_tool, scrape_tool],
    verbose=True
)

10 - Passo

Criando o Agente Redator de Conteúdo.

redator = Agent(
    role='Redator de Conteúdo',
    goal='Produzir um artigo bem estruturado e profissional sobre {tema}.',
    backstory=(
        'Você é um especialista em redação e criação de conteúdo. '
        'Seu objetivo é redigir um artigo de alta qualidade sobre {tema}, utilizando informações estruturadas e verificadas. '
        'Para isso, você se baseará nos dados coletados pelo Buscador de Conteúdo, garantindo precisão, clareza e relevância na escrita. '
        'Seu texto deve ser coeso, bem organizado e adequado ao público-alvo.'
    ),
    tools=[search_tool, scrape_tool],
    verbose=True
)

11 - Passo

Criando o Agente Editor de Conteúdo.

editor = Agent(
    role='Editor de Conteúdo',
    goal='Revisar e aprimorar um artigo sobre {tema}, garantindo clareza, coesão e qualidade profissional.',
    backstory=(
        'Você é um editor experiente responsável por refinar e aprimorar textos. '
        'Seu objetivo é revisar o artigo sobre {tema}, garantindo que ele seja claro, coeso e bem estruturado. '
        'Para isso, você utilizará o texto gerado pelo Redator de Conteúdo, corrigindo erros, ajustando o tom e garantindo a fluidez da leitura. '
        'Seu trabalho é essencial para entregar um conteúdo polido e de alta qualidade, adequado ao público-alvo.'
    ),
    tools=[search_tool, scrape_tool],
    verbose=True
)

12 - Passo

Criando a Tarefa do Buscador.

Para mais detalhes sobre os parâmetros das Tasks, acesse: docs.crewai.com/concepts/tasks

buscar = Task(
    description=(
        "1. Pesquise e selecione as principais informações e recomendações sobre {tema}.\n"
        "2. Identifique o público-alvo, considerando seus interesses, desafios e necessidades.\n"
        "3. Inclua palavras-chave estratégicas e fontes confiáveis para embasar o conteúdo."
    ),
    agent=buscador,
    expected_output="Um resumo estruturado com insights relevantes sobre {tema}, incluindo palavras-chave essenciais e fontes de referência."
)

13 - Passo

Criação da Tarefa do Buscador.

redigir = Task(
    description=(
        "1. Utilize os dados coletados para redigir um artigo profissional e bem fundamentado sobre {tema}.\n"
        "2. Incorpore palavras-chave de maneira natural e estratégica para otimização.\n"
        "3. Estruture o artigo de forma clara e coerente, garantindo introdução, desenvolvimento e uma conclusão objetiva e impactante."
    ),
    agent=redator,
    expected_output="Um artigo bem estruturado e profissional sobre {tema}, com linguagem clara e otimizada."
)

14 - Passo

Criação da Tarefa do Buscador.

editar = Task(
    description=(
        "1. Revisar o artigo sobre {tema}, corrigindo erros de ortografia, gramática e pontuação.\n"
        "2. Ajustar a fluidez do texto, garantindo coesão e clareza na comunicação.\n"
        "3. Refinar a estrutura e o tom do artigo para torná-lo mais profissional e adequado ao público-alvo."
    ),
    agent=editor,
    expected_output="Um artigo revisado, coeso e pronto para publicação."
)

15 - Passo

Criação da Equipe.

equipe = Crew(
    agents = [buscador, redator, editor],
    tasks = [buscar, redigir, editar],
    verbose = True
)

16 - Passo

Executando a Equipe.

titulo_do_artigo = 'Phishing'

entradas = {"tema" : titulo_do_artigo}

resultado = equipe.kickoff(inputs=entradas)

17 - Passo

Realizando a Formatação do Artigo.

from IPython.display import Markdown
Markdown(resultado.raw)

👍 Se este artigo te ajudou compartilhe!



  Autor

Marcos Henrique

 São Paulo/SP



  Ferramentas

© 2025 - SecurityAI

Contato