from crewai import Agent, Crew, Process, Task
from crewai_tools import SerperDevTool
from openinference.instrumentation.crewai import CrewAIInstrumentor
from phoenix.otel import register
# configure o monitoramento para seu crew
tracer_provider = register(
endpoint="http://localhost:6006/v1/traces")
CrewAIInstrumentor().instrument(skip_dep_check=True, tracer_provider=tracer_provider)
search_tool = SerperDevTool()
# Defina seus agentes com papéis e objetivos
pesquisador = Agent(
role="Analista Sênior de Pesquisa",
goal="Descobrir os avanços mais recentes em IA e ciência de dados",
backstory="""
Você trabalha em um importante think tank de tecnologia. Sua especialidade é identificar tendências emergentes. Você tem habilidade para dissecar dados complexos e apresentar insights acionáveis.
""",
verbose=True,
allow_delegation=False,
tools=[search_tool],
)
writer = Agent(
role="Estrategista de Conteúdo Técnico",
goal="Criar conteúdo envolvente sobre avanços tecnológicos",
backstory="Você é um Estrategista de Conteúdo renomado, conhecido por seus artigos perspicazes e envolventes. Você transforma conceitos complexos em narrativas atraentes.",
verbose=True,
allow_delegation=True,
)
# Crie tarefas para seus agentes
task1 = Task(
description="Realize uma análise abrangente dos avanços mais recentes em IA em 2024. Identifique tendências-chave, tecnologias inovadoras e impactos potenciais na indústria.",
expected_output="Relatório analítico completo em tópicos",
agent=pesquisador,
)
task2 = Task(
description="Utilizando os insights fornecidos, desenvolva um blog envolvente destacando os avanços mais significativos em IA. O post deve ser informativo e acessível, voltado para um público técnico. Dê um tom interessante, evite palavras complexas para não soar como IA.",
expected_output="Post de blog completo com pelo menos 4 parágrafos",
agent=writer,
)
# Instancie seu crew com um processo sequencial
crew = Crew(
agents=[pesquisador, writer], tasks=[task1, task2], verbose=1, process=Process.sequential
)
# Coloque seu crew para trabalhar!
result = crew.kickoff()
print("######################")
print(result)