Aya1610 commited on
Commit
2687abd
·
verified ·
1 Parent(s): 55af95a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +1 -220
app.py CHANGED
@@ -203,223 +203,4 @@ if __name__ == "__main__":
203
  print("-"*(60 + len(" App Starting ")) + "\n")
204
 
205
  print("Launching Gradio Interface for Basic Agent Evaluation...")
206
- demo.launch(debug=True, share=False)
207
-
208
-
209
- # import os
210
- # import gradio as gr
211
- # import requests
212
- # import pandas as pd
213
- # from langchain_core.messages import HumanMessage
214
- # from agent import build_graph
215
-
216
- # # --- Constants ---
217
- # DEFAULT_API_URL = "https://agents-course-unit4-scoring.hf.space"
218
-
219
- # class BasicAgent:
220
- # """A langgraph agent using OpenAI."""
221
- # def __init__(self):
222
- # print("=== INITIALIZING OPENAI BASIC AGENT ===")
223
- # print(f"Current working directory: {os.getcwd()}")
224
- # print(f"Files in directory: {os.listdir('.')}")
225
-
226
- # # Check environment variables
227
- # print("=== ENVIRONMENT VARIABLES ===")
228
- # for key in sorted(os.environ.keys()):
229
- # if any(term in key.upper() for term in ['OPENAI', 'API_KEY', 'TOKEN', 'TAVILY']):
230
- # value = os.environ[key]
231
- # print(f"{key}: {value[:10] if value else 'None'}...")
232
-
233
- # # Check specifically for OpenAI API key
234
- # openai_key = os.getenv("OPENAI_API_KEY")
235
- # if openai_key:
236
- # print(f"✓ OpenAI API Key found: {openai_key[:15]}...")
237
- # else:
238
- # print("✗ OpenAI API Key not found!")
239
- # print("Please add OPENAI_API_KEY to your Hugging Face Space secrets")
240
-
241
- # try:
242
- # self.graph = build_graph()
243
- # print("✓ Graph built successfully")
244
- # except Exception as e:
245
- # print(f"✗ Error building graph: {e}")
246
- # raise e
247
-
248
- # def __call__(self, question: str) -> str:
249
- # print(f"=== AGENT CALL ===")
250
- # print(f"Question: {question[:100]}...")
251
-
252
- # try:
253
- # messages = [HumanMessage(content=question)]
254
- # print(f"Invoking graph with messages: {len(messages)}")
255
-
256
- # result = self.graph.invoke({"messages": messages})
257
- # print(f"Graph result keys: {result.keys() if isinstance(result, dict) else 'Not a dict'}")
258
-
259
- # if 'messages' in result and result['messages']:
260
- # answer = result['messages'][-1].content
261
- # print(f"Answer (first 100 chars): {answer[:100]}...")
262
- # return answer
263
- # else:
264
- # print("No messages in result")
265
- # return "I apologize, but I couldn't generate a response."
266
-
267
- # except Exception as e:
268
- # print(f"Error in agent call: {e}")
269
- # return f"Error: {str(e)}"
270
-
271
- # def run_and_submit_all(profile: gr.OAuthProfile | None):
272
- # print("=== STARTING RUN AND SUBMIT ===")
273
- # space_id = os.getenv("SPACE_ID")
274
- # print(f"Space ID: {space_id}")
275
-
276
- # if not profile:
277
- # return "Please Login to Hugging Face with the button.", None
278
-
279
- # username = profile.username
280
- # print(f"Username: {username}")
281
-
282
- # api_url = DEFAULT_API_URL
283
- # questions_url = f"{api_url}/questions"
284
- # submit_url = f"{api_url}/submit"
285
-
286
- # print("=== INITIALIZING AGENT ===")
287
- # try:
288
- # agent = BasicAgent()
289
- # print("✓ Agent initialized successfully")
290
- # except Exception as e:
291
- # error_msg = f"Error initializing agent: {e}"
292
- # print(error_msg)
293
- # return error_msg, None
294
-
295
- # agent_code = f"https://huggingface.co/spaces/{space_id}/tree/main"
296
- # print(f"Agent code URL: {agent_code}")
297
-
298
- # print("=== FETCHING QUESTIONS ===")
299
- # try:
300
- # resp_q = requests.get(questions_url, timeout=15)
301
- # resp_q.raise_for_status()
302
- # questions = resp_q.json()
303
- # print(f"✓ Fetched {len(questions)} questions")
304
- # except Exception as e:
305
- # error_msg = f"Error fetching questions: {e}"
306
- # print(error_msg)
307
- # return error_msg, None
308
-
309
- # results_log = []
310
- # answers = []
311
-
312
- # print("=== PROCESSING QUESTIONS ===")
313
- # for i, item in enumerate(questions):
314
- # task_id = item.get("task_id")
315
- # q = item.get("question")
316
-
317
- # print(f"\n--- Question {i+1}/{len(questions)} ---")
318
- # print(f"Task ID: {task_id}")
319
- # print(f"Question: {q[:100]}...")
320
-
321
- # if not task_id or q is None:
322
- # print("Skipping - missing task_id or question")
323
- # continue
324
-
325
- # try:
326
- # print("Calling agent...")
327
- # ans = agent(q)
328
- # print(f"Answer: {ans[:100]}...")
329
-
330
- # answers.append({"task_id": task_id, "submitted_answer": ans})
331
- # results_log.append({"Task ID": task_id, "Question": q, "Submitted Answer": ans})
332
- # print("✓ Question processed successfully")
333
-
334
- # except Exception as e:
335
- # error_msg = f"ERROR: {e}"
336
- # print(f"✗ Error processing question: {error_msg}")
337
- # results_log.append({"Task ID": task_id, "Question": q, "Submitted Answer": error_msg})
338
-
339
- # if not answers:
340
- # return "Agent did not produce any answers to submit.", pd.DataFrame(results_log)
341
-
342
- # print(f"=== SUBMITTING {len(answers)} ANSWERS ===")
343
- # payload = {"username": username.strip(), "agent_code": agent_code, "answers": answers}
344
-
345
- # try:
346
- # resp_s = requests.post(submit_url, json=payload, timeout=60)
347
- # resp_s.raise_for_status()
348
- # data = resp_s.json()
349
-
350
- # status = (
351
- # f"Submission Successful!\n"
352
- # f"User: {data.get('username')}\n"
353
- # f"Score: {data.get('score', 'N/A')}% "
354
- # f"({data.get('correct_count', '?')}/{data.get('total_attempted', '?')})\n"
355
- # f"{data.get('message', '')}"
356
- # )
357
- # print("✓ Submission successful")
358
- # print(status)
359
- # return status, pd.DataFrame(results_log)
360
-
361
- # except Exception as e:
362
- # error_msg = f"Submission Failed: {e}"
363
- # print(error_msg)
364
- # return error_msg, pd.DataFrame(results_log)
365
-
366
- # # Simple test function for debugging
367
- # def test_agent():
368
- # """Test function to verify agent works"""
369
- # print("=== TESTING AGENT ===")
370
- # try:
371
- # agent = BasicAgent()
372
- # test_questions = [
373
- # "What is 2 + 3?",
374
- # "What is 10 * 5?",
375
- # "Search for information about Python programming"
376
- # ]
377
-
378
- # for q in test_questions:
379
- # print(f"\nTesting: {q}")
380
- # answer = agent(q)
381
- # print(f"Answer: {answer}")
382
-
383
- # except Exception as e:
384
- # print(f"Test failed: {e}")
385
-
386
- # with gr.Blocks() as demo:
387
- # gr.Markdown("# OpenAI-Powered Agent Evaluation Runner")
388
- # gr.Markdown("""
389
- # This agent uses OpenAI's GPT models instead of Hugging Face.
390
-
391
- # ## Setup Instructions:
392
- # 1. Get an OpenAI API key from https://platform.openai.com/api-keys
393
- # 2. Add it as `OPENAI_API_KEY` in your Hugging Face Space secrets
394
- # 3. (Optional) Add `TAVILY_API_KEY` for web search functionality
395
- # 4. Log in with the button below
396
- # 5. Click **Run Evaluation & Submit All Answers**
397
-
398
- # ## Current Configuration:
399
- # - Model: GPT-3.5-turbo (change to GPT-4 in agent.py if you have access)
400
- # - Tools: Math operations, Wikipedia search, Arxiv search, Web search (if Tavily configured)
401
- # """)
402
-
403
- # with gr.Row():
404
- # gr.LoginButton()
405
- # test_btn = gr.Button("Test Agent", variant="secondary")
406
-
407
- # run_btn = gr.Button("Run Evaluation & Submit All Answers", variant="primary")
408
- # status_out = gr.Textbox(label="Run Status / Submission Result", lines=5)
409
- # results_table = gr.DataFrame(label="Questions and Agent Answers", wrap=True)
410
-
411
- # # Button actions
412
- # run_btn.click(fn=run_and_submit_all, outputs=[status_out, results_table])
413
- # test_btn.click(fn=test_agent, outputs=[])
414
-
415
- # if __name__ == "__main__":
416
- # print("=== STARTING OPENAI GRADIO APP ===")
417
-
418
- # # Quick environment check
419
- # openai_key = os.getenv("OPENAI_API_KEY")
420
- # if openai_key:
421
- # print(f"✓ OpenAI API Key configured: {openai_key[:15]}...")
422
- # else:
423
- # print("⚠️ OpenAI API Key not found - please add OPENAI_API_KEY to your Space secrets")
424
-
425
- # demo.launch(debug=True, share=False)
 
203
  print("-"*(60 + len(" App Starting ")) + "\n")
204
 
205
  print("Launching Gradio Interface for Basic Agent Evaluation...")
206
+ demo.launch(debug=True, share=False)