-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmulti_agent.py
More file actions
35 lines (33 loc) · 1.27 KB
/
multi_agent.py
File metadata and controls
35 lines (33 loc) · 1.27 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
from gemini import generate_steps_prompt,check_sufficiency
from mongodb import DBOps
import os
class MultiAgent:
def __init__(self,message):
self.message = message
self.agents = []
self.skills = []
def get_agents(self):
db = DBOps()
res = db.find_documents({})
for agent in res:
self.agents.append({'name':agent['name'],'action':agent['action']})
def setup(self):
self.get_agents()
self.get_skills()
res = check_sufficiency(self.message, self.agents, self.skills)
return res
def get_skills(self):
for skill in os.listdir("skills"):
if skill.endswith(".md") and skill != "skill_template.md":
self.skills.append(skill)
def generate_steps(self):
# Consists of the final name of the app and the steps to complete the task(agent name and step description)
self.get_agents()
res = generate_steps_prompt(self.message,self.agents)
return res
if __name__ == "__main__":
multi_agent = MultiAgent("Create a food ordering app and a web page for it using vanilla css and vanilla js")
#print(multi_agent.get_agents())
multi_agent.get_skills()
print(multi_agent.setup())
print(multi_agent.generate_steps())