sampsong commited on
Commit
ca293a6
·
1 Parent(s): 0e59656

add test mode

Browse files
Files changed (1) hide show
  1. app.py +58 -40
app.py CHANGED
@@ -11,6 +11,7 @@ from langfuse.langchain import CallbackHandler
11
  # --- Constants ---
12
  DEFAULT_API_URL = "https://agents-course-unit4-scoring.hf.space"
13
  langfuse_handler = CallbackHandler()
 
14
 
15
  # --- Basic Agent Definition ---
16
  # ----- THIS IS WERE YOU CAN BUILD WHAT YOU WANT ------
@@ -106,48 +107,65 @@ def run_and_submit_all( profile: gr.OAuthProfile | None):
106
  status_update = f"Agent finished. Submitting {len(answers_payload)} answers for user '{username}'..."
107
  print(status_update)
108
 
109
- # 5. Submit
110
- print(f"Submitting {len(answers_payload)} answers to: {submit_url}")
111
- try:
112
- response = requests.post(submit_url, json=submission_data, timeout=60)
113
- response.raise_for_status()
114
- result_data = response.json()
115
- final_status = (
116
- f"Submission Successful!\n"
117
- f"User: {result_data.get('username')}\n"
118
- f"Overall Score: {result_data.get('score', 'N/A')}% "
119
- f"({result_data.get('correct_count', '?')}/{result_data.get('total_attempted', '?')} correct)\n"
120
- f"Message: {result_data.get('message', 'No message received.')}"
121
  )
122
- print("Submission successful.")
123
- results_df = pd.DataFrame(results_log)
124
- return final_status, results_df
125
- except requests.exceptions.HTTPError as e:
126
- error_detail = f"Server responded with status {e.response.status_code}."
 
 
 
 
127
  try:
128
- error_json = e.response.json()
129
- error_detail += f" Detail: {error_json.get('detail', e.response.text)}"
130
- except requests.exceptions.JSONDecodeError:
131
- error_detail += f" Response: {e.response.text[:500]}"
132
- status_message = f"Submission Failed: {error_detail}"
133
- print(status_message)
134
- results_df = pd.DataFrame(results_log)
135
- return status_message, results_df
136
- except requests.exceptions.Timeout:
137
- status_message = "Submission Failed: The request timed out."
138
- print(status_message)
139
- results_df = pd.DataFrame(results_log)
140
- return status_message, results_df
141
- except requests.exceptions.RequestException as e:
142
- status_message = f"Submission Failed: Network error - {e}"
143
- print(status_message)
144
- results_df = pd.DataFrame(results_log)
145
- return status_message, results_df
146
- except Exception as e:
147
- status_message = f"An unexpected error occurred during submission: {e}"
148
- print(status_message)
149
- results_df = pd.DataFrame(results_log)
150
- return status_message, results_df
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
151
 
152
 
153
  # --- Build Gradio Interface using Blocks ---
 
11
  # --- Constants ---
12
  DEFAULT_API_URL = "https://agents-course-unit4-scoring.hf.space"
13
  langfuse_handler = CallbackHandler()
14
+ mode = "test"
15
 
16
  # --- Basic Agent Definition ---
17
  # ----- THIS IS WERE YOU CAN BUILD WHAT YOU WANT ------
 
107
  status_update = f"Agent finished. Submitting {len(answers_payload)} answers for user '{username}'..."
108
  print(status_update)
109
 
110
+ if(mode == "test"):
111
+ # 5a test
112
+ question = "When was a picture of St. Thomas Aquinas first added to the wikipedia page on the principle of double effect?"
113
+ graph = build_graph(provider="groq")
114
+ messages = [HumanMessage(content=question)]
115
+ print("message {messages}")
116
+ messages = graph.invoke(
117
+ input= {"messages": messages},
118
+ config={"callbacks": [langfuse_handler]}
 
 
 
119
  )
120
+ graph.get_graph().draw_mermaid_png()
121
+
122
+ for m in messages["messages"]:
123
+ m.pretty_print()
124
+ print("m-Message{m}")
125
+
126
+ else:
127
+ # 5b. Submit
128
+ print(f"Submitting {len(answers_payload)} answers to: {submit_url}")
129
  try:
130
+ response = requests.post(submit_url, json=submission_data, timeout=60)
131
+ response.raise_for_status()
132
+ result_data = response.json()
133
+ final_status = (
134
+ f"Submission Successful!\n"
135
+ f"User: {result_data.get('username')}\n"
136
+ f"Overall Score: {result_data.get('score', 'N/A')}% "
137
+ f"({result_data.get('correct_count', '?')}/{result_data.get('total_attempted', '?')} correct)\n"
138
+ f"Message: {result_data.get('message', 'No message received.')}"
139
+ )
140
+ print("Submission successful.")
141
+ results_df = pd.DataFrame(results_log)
142
+ return final_status, results_df
143
+ except requests.exceptions.HTTPError as e:
144
+ error_detail = f"Server responded with status {e.response.status_code}."
145
+ try:
146
+ error_json = e.response.json()
147
+ error_detail += f" Detail: {error_json.get('detail', e.response.text)}"
148
+ except requests.exceptions.JSONDecodeError:
149
+ error_detail += f" Response: {e.response.text[:500]}"
150
+ status_message = f"Submission Failed: {error_detail}"
151
+ print(status_message)
152
+ results_df = pd.DataFrame(results_log)
153
+ return status_message, results_df
154
+ except requests.exceptions.Timeout:
155
+ status_message = "Submission Failed: The request timed out."
156
+ print(status_message)
157
+ results_df = pd.DataFrame(results_log)
158
+ return status_message, results_df
159
+ except requests.exceptions.RequestException as e:
160
+ status_message = f"Submission Failed: Network error - {e}"
161
+ print(status_message)
162
+ results_df = pd.DataFrame(results_log)
163
+ return status_message, results_df
164
+ except Exception as e:
165
+ status_message = f"An unexpected error occurred during submission: {e}"
166
+ print(status_message)
167
+ results_df = pd.DataFrame(results_log)
168
+ return status_message, results_df
169
 
170
 
171
  # --- Build Gradio Interface using Blocks ---