-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest.py
More file actions
72 lines (61 loc) · 1.32 KB
/
Copy pathtest.py
File metadata and controls
72 lines (61 loc) · 1.32 KB
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import asyncio
import os
from dotenv import load_dotenv
load_dotenv()
# ==========================
# LangChain
# ==========================
# from langchain.agents import create_agent
# from langchain_openai import ChatOpenAI
#
# from serphouse.langchain import search, news, short_video
#
# model = ChatOpenAI(
# model="gpt-5.4",
# api_key=os.environ["OPENAI_API_KEY"],
# )
#
# agent = create_agent(
# model=model,
# tools=[
# search(),
# news(),
# short_video(),
# ],
# )
#
# response = agent.invoke(
# {
# "messages": [
# {
# "role": "user",
# "content": "Latest AI news from OpenAI",
# }
# ]
# }
# )
#
# print(response)
# ==========================
# LlamaIndex
# ==========================
from llama_index.core.agent.workflow import FunctionAgent
from llama_index.llms.openai import OpenAI
from serphouse.llamaindex import search, news, short_video
agent = FunctionAgent(
llm=OpenAI(
model="gpt-5.4",
api_key=os.environ["OPENAI_API_KEY"],
),
tools=[
search(),
news(),
short_video(),
],
)
async def main():
response = await agent.run(
"short_video tool and search about what happen on 6july in surat"
)
print(response)
asyncio.run(main())