mirror of
https://github.com/arkorty/B.Tech-Project-III.git
synced 2026-04-19 12:41:48 +00:00
48 lines
1.7 KiB
Python
48 lines
1.7 KiB
Python
# test_apis.py (run this standalone — tests Gemini, Tavily, ElevenLabs)
|
|
import os
|
|
from dotenv import load_dotenv
|
|
load_dotenv()
|
|
|
|
# ─── Test 1: Gemini ───
|
|
print("Testing Gemini...")
|
|
import google.generativeai as genai
|
|
genai.configure(api_key=os.getenv("GEMINI_API_KEY"))
|
|
model = genai.GenerativeModel(
|
|
model_name="gemini-3-flash-preview",
|
|
generation_config=genai.GenerationConfig(
|
|
response_mime_type="application/json",
|
|
temperature=0.7,
|
|
)
|
|
)
|
|
response = model.generate_content(
|
|
'Return JSON: {"status": "ok", "message": "Gemini works"}'
|
|
)
|
|
print(f" Gemini: {response.text}")
|
|
|
|
# ─── Test 2: Tavily ───
|
|
print("\nTesting Tavily...")
|
|
from tavily import TavilyClient
|
|
tavily = TavilyClient(api_key=os.getenv("TAVILY_API_KEY"))
|
|
result = tavily.search("best Thai restaurants in Bandra Mumbai", include_answer=True, max_results=2)
|
|
print(f" Tavily answer: {result.get('answer', 'No answer')[:150]}")
|
|
print(f" Results count: {len(result.get('results', []))}")
|
|
|
|
# ─── Test 3: ElevenLabs ───
|
|
print("\nTesting ElevenLabs...")
|
|
import httpx
|
|
resp = httpx.post(
|
|
"https://api.elevenlabs.io/v1/text-to-speech/ZthjuvLPty3kTMaNKVKb",
|
|
headers={"xi-api-key": os.getenv("ELEVENLABS_API_KEY"), "Content-Type": "application/json"},
|
|
json={"text": "Hello from negoT8!", "model_id": "eleven_flash_v2_5",
|
|
"voice_settings": {"stability": 0.5, "similarity_boost": 0.75}},
|
|
timeout=15.0
|
|
)
|
|
if resp.status_code == 200:
|
|
with open("test_voice.mp3", "wb") as f:
|
|
f.write(resp.content)
|
|
print(f" ElevenLabs: ✅ Saved test_voice.mp3 ({len(resp.content)} bytes)")
|
|
else:
|
|
print(f" ElevenLabs: ❌ {resp.status_code} — {resp.text[:200]}")
|
|
|
|
print("\n✅ All API tests complete!")
|