I am getting this error while running this, please help
!pip install crewai==0.74.2 crewai_tools langchain_community
import warnings
warnings.filterwarnings(‘ignore’)
from crewai import Agent, Task, Crew, LLM
import os
GEMINI_API_KEY = " "
Optionally, set the API key as an environment variable.
os.environ[“GEMINI_API_KEY”] = GEMINI_API_KEY
llm = LLM(
model=“gemini-1.5-flash”,
temperature=0.7,
gemini_api_key=GEMINI_API_KEY # Ensures the API key is used.
)
Agent: Planner
planner = Agent(
role=“Content Planner”,
goal=“Plan engaging and factually accurate content on {topic}”,
backstory=(
"You’re working on planning a blog article about the topic: {topic}. "
"You collect information that helps the audience learn something and make informed decisions. "
“Your work is the basis for the Content Writer to write an article on this topic.”
),
llm=llm,
allow_delegation=False,
verbose=True
)
Agent: Writer
writer = Agent(
role=“Content Writer”,
goal=“Write an insightful and factually accurate opinion piece about the topic: {topic}”,
backstory=(
"You’re working on writing a new opinion piece about the topic: {topic}. "
"You base your writing on the work of the Content Planner, who provides an outline and relevant context about the topic. "
"You follow the main objectives and direction of the outline as provided by the Content Planner. "
"You also provide objective and impartial insights and back them up with the information from the Content Planner. "
“You acknowledge in your opinion piece when your statements are opinions as opposed to objective statements.”
),
llm=llm,
allow_delegation=False,
verbose=True
)
Agent: Editor
editor = Agent(
role=“Editor”,
goal=“Edit a given blog post to align with the writing style of the organization.”,
backstory=(
"You are an editor who receives a blog post from the Content Writer. "
"Your goal is to review the blog post to ensure that it follows journalistic best practices, "
"provides balanced viewpoints when presenting opinions or assertions, "
“and avoids major controversial topics when possible.”
),
llm=llm,
allow_delegation=False,
verbose=True
)
Task: Plan
plan = Task(
description=(
“1. Prioritize the latest trends, key players, and noteworthy news on {topic}.\n”
“2. Identify the target audience, considering their interests and pain points.\n”
“3. Develop a detailed content outline including an introduction, key points, and a call to action.\n”
“4. Include SEO keywords and relevant data or sources.”
),
expected_output=(
"A comprehensive content plan document with an outline, audience analysis, "
“SEO keywords, and resources.”
),
agent=planner,
)
Task: Write
write = Task(
description=(
“1. Use the content plan to craft a compelling blog post on {topic}.\n”
“2. Incorporate SEO keywords naturally.\n”
“3. Ensure sections/subtitles are properly named in an engaging manner.\n”
“4. Structure the post with an engaging introduction, insightful body, and a summarizing conclusion.\n”
“5. Proofread for grammatical errors and ensure alignment with the brand’s voice.\n”
),
expected_output=(
"A well-written blog post in markdown format, ready for publication, "
“with each section containing 2 or 3 paragraphs.”
),
agent=writer,
)
Task: Edit
edit = Task(
description=(
“Proofread the given blog post for grammatical errors and ensure it aligns with the brand’s voice.”
),
expected_output=(
"A well-edited blog post in markdown format, ready for publication, "
“with each section containing 2 or 3 paragraphs.”
),
agent=editor,
)
crew = Crew(
agents=[planner, writer, editor],
tasks=[plan, write, edit],
verbose=True # Set verbose to 2 to see detailed logs during execution.
)
from IPython.display import Markdown
topic = “Indian Food” # Replace with any topic you want to explore
result = crew.kickoff(inputs={“topic”: topic})
Markdown(result)
Here’s the load of error
Error Code: litellm.exceptions.APIConnectionError
The error occurs when litellm
attempts to retrieve credentials from Google Compute Engine’s metadata service but fails with a 404 Not Found
response. Specifically, the request to:
http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/?recursive=true
fails, causing authentication issues when trying to use Google Vertex AI via litellm
.
Note: I am not trying to do anything with vertext, look at my code I am trying with API keys