bstraehle commited on
Commit
0a0df44
1 Parent(s): b68c4db

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -7
app.py CHANGED
@@ -16,6 +16,7 @@ def transfer_to_triage_agent():
16
  global triage_agent, triage_thread
17
  set_current_agent(triage_agent)
18
  set_current_thread(triage_thread)
 
19
 
20
  def transfer_to_sales_agent():
21
  """Use for anything sales or buying related."""
@@ -23,6 +24,7 @@ def transfer_to_sales_agent():
23
  global sales_agent, sales_thread
24
  set_current_agent(sales_agent)
25
  set_current_thread(sales_thread)
 
26
 
27
  def transfer_to_issues_repairs_agent():
28
  """Use for issues, repairs, or refunds."""
@@ -30,6 +32,7 @@ def transfer_to_issues_repairs_agent():
30
  global issues_repairs_agent, issues_repairs_thread
31
  set_current_agent(issues_repairs_agent)
32
  set_current_thread(issues_repairs_thread)
 
33
 
34
  #
35
 
@@ -37,7 +40,8 @@ def escalate_to_human(summary):
37
  """Only call this if explicitly asked to."""
38
  print(f"=> escalate_to_human: summary: {summary}")
39
  #exit()
40
-
 
41
  #
42
 
43
  def execute_order(product, price: int):
@@ -148,9 +152,9 @@ def create_thread(client):
148
 
149
  return thread
150
 
151
- def create_message(client, thread, msg):
152
  message = client.beta.threads.messages.create(
153
- role="user",
154
  thread_id=thread.id,
155
  content=msg,
156
  )
@@ -197,16 +201,18 @@ def execute_tool_call(tool_call):
197
  return tools[name](**args)
198
 
199
  def execute_tool_calls(steps):
 
 
200
  for step in steps.data:
201
  step_details = step.step_details
202
  show_json("step_details", step_details)
203
 
204
  if hasattr(step_details, "tool_calls"):
205
  for tool_call in step_details.tool_calls:
206
- execute_tool_call(tool_call)
207
  show_json("tool_call", tool_call)
208
 
209
- return "TODO: execute_tool_calls return"
210
 
211
  def list_messages(client, thread):
212
  messages = client.beta.threads.messages.list(
@@ -281,8 +287,11 @@ def chat(message, history, openai_api_key):
281
 
282
  steps = list_steps(client, thread, run)
283
 
284
- result = execute_tool_calls(steps)
285
- print(result)
 
 
 
286
 
287
  messages = list_messages(client, thread)
288
 
 
16
  global triage_agent, triage_thread
17
  set_current_agent(triage_agent)
18
  set_current_thread(triage_thread)
19
+ return "transfer_to_triage_agent"
20
 
21
  def transfer_to_sales_agent():
22
  """Use for anything sales or buying related."""
 
24
  global sales_agent, sales_thread
25
  set_current_agent(sales_agent)
26
  set_current_thread(sales_thread)
27
+ return "transfer_to_sales_agent"
28
 
29
  def transfer_to_issues_repairs_agent():
30
  """Use for issues, repairs, or refunds."""
 
32
  global issues_repairs_agent, issues_repairs_thread
33
  set_current_agent(issues_repairs_agent)
34
  set_current_thread(issues_repairs_thread)
35
+ return "transfer_to_issues_repairs_agent"
36
 
37
  #
38
 
 
40
  """Only call this if explicitly asked to."""
41
  print(f"=> escalate_to_human: summary: {summary}")
42
  #exit()
43
+ return "escalate_to_human"
44
+
45
  #
46
 
47
  def execute_order(product, price: int):
 
152
 
153
  return thread
154
 
155
+ def create_message(client, thread, msg, type = "user"):
156
  message = client.beta.threads.messages.create(
157
+ role=type,
158
  thread_id=thread.id,
159
  content=msg,
160
  )
 
201
  return tools[name](**args)
202
 
203
  def execute_tool_calls(steps):
204
+ result = ""
205
+
206
  for step in steps.data:
207
  step_details = step.step_details
208
  show_json("step_details", step_details)
209
 
210
  if hasattr(step_details, "tool_calls"):
211
  for tool_call in step_details.tool_calls:
212
+ result = execute_tool_call(tool_call)
213
  show_json("tool_call", tool_call)
214
 
215
+ return result
216
 
217
  def list_messages(client, thread):
218
  messages = client.beta.threads.messages.list(
 
287
 
288
  steps = list_steps(client, thread, run)
289
 
290
+ message = execute_tool_calls(steps)
291
+ print("\n\n\n[" + message + "]\n\n\n")
292
+
293
+ if message != "":
294
+ create_message(client, thread, message, "tool")
295
 
296
  messages = list_messages(client, thread)
297