spandana30 commited on
Commit
8f974c7
Β·
verified Β·
1 Parent(s): facf100

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -14
app.py CHANGED
@@ -10,23 +10,23 @@ from langgraph.graph import StateGraph, END
10
 
11
  HF_TOKEN = os.getenv("HF_TOKEN")
12
 
13
- # Agent model config β€” all use Gemma
14
  AGENT_MODEL_CONFIG = {
15
  "product_manager": {
16
- "base": "unsloth/gemma-3-1b-it",
17
- "adapter": "spandana30/project-manager-gemma"
18
  },
19
  "project_manager": {
20
- "base": "unsloth/gemma-3-1b-it",
21
- "adapter": "spandana30/project-manager-gemma"
22
  },
23
  "software_engineer": {
24
- "base": "unsloth/gemma-3-1b-it",
25
- "adapter": "spandana30/project-manager-gemma"
26
  },
27
  "qa_engineer": {
28
- "base": "unsloth/gemma-3-1b-it",
29
- "adapter": "spandana30/project-manager-gemma"
30
  }
31
  }
32
 
@@ -88,13 +88,26 @@ def generate_ui(user_prompt: str, max_iter: int):
88
  }
89
 
90
  workflow = StateGraph(AgentState)
91
- workflow.add_node("product_manager", lambda s: {"messages": s["messages"] + [{"role": "product_manager", "content": agent(PROMPTS["product_manager"], s, "product_manager", "product_manager")}]})
92
- workflow.add_node("project_manager", lambda s: {"messages": s["messages"] + [{"role": "project_manager", "content": agent(PROMPTS["project_manager"], s, "project_manager", "project_manager")}]})
 
 
 
 
 
 
 
 
 
 
93
  workflow.add_node("software_engineer", lambda s: {
94
  "html": agent(PROMPTS["software_engineer"], s, "software_engineer", "software_engineer"),
95
- "messages": s["messages"] + [{"role": "software_engineer", "content": s["html"]}]
 
 
 
96
  })
97
- def qa_fn(s):
98
  feedback = agent(PROMPTS["qa_engineer"], s, "qa_engineer", "qa_engineer")
99
  done = "APPROVED" in feedback or s["iteration"] >= max_iter
100
  return {
@@ -117,7 +130,7 @@ def generate_ui(user_prompt: str, max_iter: int):
117
 
118
  def main():
119
  st.set_page_config(page_title="Multi-Agent UI Generator", layout="wide")
120
- st.title(" Multi-Agent Collaboration")
121
  max_iter = st.sidebar.slider("Max QA Iterations", 1, 5, 2)
122
  prompt = st.text_area("Describe your UI:", "A landing page for a coffee shop with a hero image, menu, and contact form.", height=150)
123
  if st.button("πŸš€ Generate UI"):
 
10
 
11
  HF_TOKEN = os.getenv("HF_TOKEN")
12
 
13
+ # βœ… Corrected keys: base_id and adapter_id
14
  AGENT_MODEL_CONFIG = {
15
  "product_manager": {
16
+ "base_id": "unsloth/gemma-3-1b-it",
17
+ "adapter_id": "spandana30/project-manager-gemma"
18
  },
19
  "project_manager": {
20
+ "base_id": "unsloth/gemma-3-1b-it",
21
+ "adapter_id": "spandana30/project-manager-gemma"
22
  },
23
  "software_engineer": {
24
+ "base_id": "unsloth/gemma-3-1b-it",
25
+ "adapter_id": "spandana30/project-manager-gemma"
26
  },
27
  "qa_engineer": {
28
+ "base_id": "unsloth/gemma-3-1b-it",
29
+ "adapter_id": "spandana30/project-manager-gemma"
30
  }
31
  }
32
 
 
88
  }
89
 
90
  workflow = StateGraph(AgentState)
91
+ workflow.add_node("product_manager", lambda s: {
92
+ "messages": s["messages"] + [{
93
+ "role": "product_manager",
94
+ "content": agent(PROMPTS["product_manager"], s, "product_manager", "product_manager")
95
+ }]
96
+ })
97
+ workflow.add_node("project_manager", lambda s: {
98
+ "messages": s["messages"] + [{
99
+ "role": "project_manager",
100
+ "content": agent(PROMPTS["project_manager"], s, "project_manager", "project_manager")
101
+ }]
102
+ })
103
  workflow.add_node("software_engineer", lambda s: {
104
  "html": agent(PROMPTS["software_engineer"], s, "software_engineer", "software_engineer"),
105
+ "messages": s["messages"] + [{
106
+ "role": "software_engineer",
107
+ "content": s["html"]
108
+ }]
109
  })
110
+ def qa_fn(s):
111
  feedback = agent(PROMPTS["qa_engineer"], s, "qa_engineer", "qa_engineer")
112
  done = "APPROVED" in feedback or s["iteration"] >= max_iter
113
  return {
 
130
 
131
  def main():
132
  st.set_page_config(page_title="Multi-Agent UI Generator", layout="wide")
133
+ st.title("πŸ€– Multi-Agent Collaboration (Gemma Only)")
134
  max_iter = st.sidebar.slider("Max QA Iterations", 1, 5, 2)
135
  prompt = st.text_area("Describe your UI:", "A landing page for a coffee shop with a hero image, menu, and contact form.", height=150)
136
  if st.button("πŸš€ Generate UI"):