| | |
| | """ |
| | Test script to verify API connections for OpenAI and DeepSeek |
| | """ |
| | import os |
| | import httpx |
| | from dotenv import load_dotenv |
| | from openai import OpenAI |
| |
|
| | |
| | load_dotenv() |
| |
|
| | def test_openai(): |
| | """Test OpenAI API connection""" |
| | print("\n" + "="*60) |
| | print("Testing OpenAI API Connection") |
| | print("="*60) |
| | |
| | api_key = os.getenv("OPENAI_API_KEY") |
| | if not api_key: |
| | print("❌ OPENAI_API_KEY not found in environment") |
| | return False |
| | |
| | print(f"✓ API Key found (length: {len(api_key)})") |
| | |
| | try: |
| | |
| | print("\n[Test 1] Using default settings (HTTP/2 enabled)...") |
| | client = OpenAI(api_key=api_key, timeout=30.0) |
| | response = client.chat.completions.create( |
| | model="gpt-4o-mini", |
| | messages=[{"role": "user", "content": "Say 'connection test passed'"}], |
| | max_tokens=10 |
| | ) |
| | print(f"✅ Success with HTTP/2: {response.choices[0].message.content}") |
| | except Exception as e: |
| | print(f"❌ Failed with HTTP/2: {type(e).__name__}: {str(e)}") |
| | |
| | try: |
| | |
| | print("\n[Test 2] Using HTTP/1.1 (HTTP/2 disabled)...") |
| | client = OpenAI( |
| | api_key=api_key, |
| | timeout=30.0, |
| | http_client=httpx.Client(http2=False, timeout=30.0) |
| | ) |
| | response = client.chat.completions.create( |
| | model="gpt-4o-mini", |
| | messages=[{"role": "user", "content": "Say 'connection test passed'"}], |
| | max_tokens=10 |
| | ) |
| | print(f"✅ Success with HTTP/1.1: {response.choices[0].message.content}") |
| | return True |
| | except Exception as e: |
| | print(f"❌ Failed with HTTP/1.1: {type(e).__name__}: {str(e)}") |
| | return False |
| |
|
| |
|
| | def test_deepseek(): |
| | """Test DeepSeek API connection""" |
| | print("\n" + "="*60) |
| | print("Testing DeepSeek API Connection") |
| | print("="*60) |
| | |
| | api_key = os.getenv("DEEPSEEK_API_KEY") |
| | if not api_key: |
| | print("❌ DEEPSEEK_API_KEY not found in environment") |
| | return False |
| | |
| | print(f"✓ API Key found (length: {len(api_key)})") |
| | |
| | try: |
| | |
| | print("\n[Test 1] Using default settings (HTTP/2 enabled)...") |
| | client = OpenAI( |
| | api_key=api_key, |
| | base_url="https://api.deepseek.com", |
| | timeout=30.0 |
| | ) |
| | response = client.chat.completions.create( |
| | model="deepseek-chat", |
| | messages=[{"role": "user", "content": "Say 'connection test passed'"}], |
| | max_tokens=10 |
| | ) |
| | print(f"✅ Success with HTTP/2: {response.choices[0].message.content}") |
| | except Exception as e: |
| | print(f"❌ Failed with HTTP/2: {type(e).__name__}: {str(e)}") |
| | |
| | try: |
| | |
| | print("\n[Test 2] Using HTTP/1.1 (HTTP/2 disabled)...") |
| | client = OpenAI( |
| | api_key=api_key, |
| | base_url="https://api.deepseek.com", |
| | timeout=30.0, |
| | http_client=httpx.Client(http2=False, timeout=30.0) |
| | ) |
| | response = client.chat.completions.create( |
| | model="deepseek-chat", |
| | messages=[{"role": "user", "content": "Say 'connection test passed'"}], |
| | max_tokens=10 |
| | ) |
| | print(f"✅ Success with HTTP/1.1: {response.choices[0].message.content}") |
| | return True |
| | except Exception as e: |
| | print(f"❌ Failed with HTTP/1.1: {type(e).__name__}: {str(e)}") |
| | return False |
| |
|
| |
|
| | def test_network_connectivity(): |
| | """Test basic network connectivity""" |
| | print("\n" + "="*60) |
| | print("Testing Network Connectivity") |
| | print("="*60) |
| | |
| | urls = [ |
| | "https://api.openai.com", |
| | "https://api.deepseek.com", |
| | "https://api.anthropic.com", |
| | "https://generativelanguage.googleapis.com" |
| | ] |
| | |
| | for url in urls: |
| | try: |
| | client = httpx.Client(timeout=10.0) |
| | response = client.get(url) |
| | print(f"✅ {url}: HTTP {response.status_code}") |
| | except Exception as e: |
| | print(f"❌ {url}: {type(e).__name__}: {str(e)}") |
| |
|
| |
|
| | if __name__ == "__main__": |
| | print("\n🔍 API Connection Test Suite") |
| | print("="*60) |
| | |
| | |
| | test_network_connectivity() |
| | |
| | |
| | openai_ok = test_openai() |
| | |
| | |
| | deepseek_ok = test_deepseek() |
| | |
| | |
| | print("\n" + "="*60) |
| | print("Summary") |
| | print("="*60) |
| | print(f"OpenAI: {'✅ OK' if openai_ok else '❌ FAILED'}") |
| | print(f"DeepSeek: {'✅ OK' if deepseek_ok else '❌ FAILED'}") |
| | print("="*60) |
| |
|