-
Notifications
You must be signed in to change notification settings - Fork 2
/
agent-shopper.py
38 lines (30 loc) · 1.21 KB
/
agent-shopper.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import crewai
from langchain_community.llms import Ollama
from langchain_community.tools import DuckDuckGoSearchRun
from crewai_tools import tool
from crewai_tools import WebsiteSearchTool
llm = Ollama(model="mannix/phi3-mini-4k")
@tool("Search Amazon")
def search_amazon(q: str) -> str:
"""Search Amazon"""
return DuckDuckGoSearchRun().run(f"site:https://amazon.com {q}")
@tool("DuckDuckGoSearch")
def search(search_query: str):
"""Search the web for information on a given topic"""
return DuckDuckGoSearchRun().run(search_query)
def callback_function(output):
print(f"Task completed: {output.raw_output}")
prompt = '''Find info on a good laptop under $1000'''
agent_amazon_shopper = crewai.Agent(
role="Amazon Shopper",
goal="Find info about a good laptop under $1000",
backstory="As a savvy shopper, you need to find info on a good laptop under $1000",
tools=[search],
llm=llm,
allow_delegation=False, verbose=True)
task_shop = crewai.Task(description=prompt,
agent=agent_amazon_shopper,
expected_output='''info on laptop''')
crew = crewai.Crew(agents=[agent_amazon_shopper], tasks=[task_shop], verbose=True)
res = crew.kickoff()
print(res)