From fe1cbfb628d3de83c4f385ed6694ba48d279385a Mon Sep 17 00:00:00 2001 From: Guangya Liu Date: Fri, 13 Sep 2024 10:32:08 -0400 Subject: [PATCH] crew (#205) --- crew/crew1.py | 79 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 crew/crew1.py diff --git a/crew/crew1.py b/crew/crew1.py new file mode 100644 index 0000000..0d9ec25 --- /dev/null +++ b/crew/crew1.py @@ -0,0 +1,79 @@ +from dotenv import load_dotenv +load_dotenv() + +import os +from crewai import Agent, Task, Crew, Process +from crewai_tools import SerperDevTool + +# You can choose to use a local model through Ollama for example. See https://docs.crewai.com/how-to/LLM-Connections/ for more information. + +# os.environ["OPENAI_API_BASE"] = 'http://localhost:11434/v1' +# os.environ["OPENAI_MODEL_NAME"] ='openhermes' # Adjust based on available model +# os.environ["OPENAI_API_KEY"] ='sk-111111111111111111111111111111111111111111111111' + +# You can pass an optional llm attribute specifying what model you wanna use. +# It can be a local model through Ollama / LM Studio or a remote +# model like OpenAI, Mistral, Antrophic or others (https://docs.crewai.com/how-to/LLM-Connections/) +# If you don't specify a model, the default is OpenAI gpt-4o +# +# import os +# os.environ['OPENAI_MODEL_NAME'] = 'gpt-3.5-turbo' +# +# OR +# +# from langchain_openai import ChatOpenAI + +search_tool = SerperDevTool() + +# Define your agents with roles and goals +researcher = Agent( + role='Senior Research Analyst', + goal='Uncover cutting-edge developments in AI and data science', + backstory="""You work at a leading tech think tank. + Your expertise lies in identifying emerging trends. + You have a knack for dissecting complex data and presenting actionable insights.""", + verbose=True, + allow_delegation=False, + # You can pass an optional llm attribute specifying what model you wanna use. + # llm=ChatOpenAI(model_name="gpt-3.5", temperature=0.7), + tools=[search_tool] +) +writer = Agent( + role='Tech Content Strategist', + goal='Craft compelling content on tech advancements', + backstory="""You are a renowned Content Strategist, known for your insightful and engaging articles. + You transform complex concepts into compelling narratives.""", + verbose=True, + allow_delegation=True +) + +# Create tasks for your agents +task1 = Task( + description="""Conduct a comprehensive analysis of the latest advancements in AI in 2024. + Identify key trends, breakthrough technologies, and potential industry impacts.""", + expected_output="Full analysis report in bullet points", + agent=researcher +) + +task2 = Task( + description="""Using the insights provided, develop an engaging blog + post that highlights the most significant AI advancements. + Your post should be informative yet accessible, catering to a tech-savvy audience. + Make it sound cool, avoid complex words so it doesn't sound like AI.""", + expected_output="Full blog post of at least 4 paragraphs", + agent=writer +) + +# Instantiate your crew with a sequential process +crew = Crew( + agents=[researcher, writer], + tasks=[task1, task2], + verbose=True, + process = Process.sequential +) + +# Get your crew to work! +result = crew.kickoff() + +print("######################") +print(result)