Spaces:
Runtime error
Runtime error
| import os | |
| import pytz | |
| from tools.nlu_tool import extract_intent_and_slots | |
| from tools.scheduler import find_common_slots | |
| from datetime import datetime | |
| from smolagents import OpenAIServerModel | |
| def test_timezone_function(): | |
| """Test the timezone functionality""" | |
| try: | |
| tz = pytz.timezone('America/New_York') | |
| local_time = datetime.now(tz).strftime("%Y-%m-%d %H:%M:%S") | |
| print("Timezone test passed:", local_time) | |
| except Exception as e: | |
| print("Timezone test failed:", str(e)) | |
| def test_nlu(): | |
| """Test the NLU functionality""" | |
| try: | |
| # Test with an amount in yen | |
| test_text = "I need to transfer ¥30,000" | |
| result = extract_intent_and_slots(test_text) | |
| print("NLU test result (amount):", result) | |
| # Test with a date/time | |
| test_text_2 = "Schedule for tomorrow at 2pm" | |
| result_2 = extract_intent_and_slots(test_text_2) | |
| print("NLU test result (schedule):", result_2) | |
| except Exception as e: | |
| print("NLU test failed:", str(e)) | |
| def test_scheduler(): | |
| """Test the scheduler functionality""" | |
| try: | |
| # Create proper datetime objects in Asia/Tokyo timezone | |
| import dateparser | |
| from datetime import datetime, timedelta | |
| tz = pytz.timezone('Asia/Tokyo') | |
| settings = {'TIMEZONE': 'Asia/Tokyo', 'RETURN_AS_TIMEZONE_AWARE': True} | |
| tomorrow = datetime.now() + timedelta(days=1) | |
| start_str = f"tomorrow 09:00" | |
| end_str = f"tomorrow 12:00" | |
| start = dateparser.parse(start_str, settings=settings) | |
| end = dateparser.parse(end_str, settings=settings) | |
| test_windows = [ | |
| {'start': start, 'end': end} | |
| ] | |
| result = find_common_slots(test_windows) | |
| print("Scheduler test result:", result) | |
| except Exception as e: | |
| print("Scheduler test failed:", str(e)) | |
| def test_openai_connection(): | |
| """Test the OpenAI API connection""" | |
| try: | |
| print("Testing OpenAI API connection...") | |
| openai_api_key = os.getenv('OPENAI_API_KEY') | |
| if not openai_api_key: | |
| print("❌ Error: OPENAI_API_KEY environment variable is not set") | |
| return | |
| model = OpenAIServerModel( | |
| api_key=openai_api_key, | |
| model_id="gpt-5-mini-2025-08-07", | |
| max_tokens=50, | |
| temperature=0.5, | |
| ) | |
| # Try a simple chat completion to test the connection | |
| test_prompt = "Say 'Hello, the API is working!'" | |
| try: | |
| response = model.generate_text(test_prompt) | |
| print("✅ OpenAI API Test Response:", response) | |
| except Exception as e: | |
| print("❌ API Call Error:", str(e)) | |
| print("Error details:", str(type(e).__name__)) | |
| except Exception as e: | |
| print("❌ OpenAI Setup Error:", str(e)) | |
| def main(): | |
| print("Starting debug tests...") | |
| print("\n1. Testing OpenAI API connection:") | |
| test_openai_connection() | |
| print("\n2. Testing timezone functionality:") | |
| test_timezone_function() | |
| print("\n3. Testing NLU:") | |
| test_nlu() | |
| print("\n4. Testing scheduler:") | |
| test_scheduler() | |
| if __name__ == "__main__": | |
| main() |