51 lines
2.0 KiB
Python
51 lines
2.0 KiB
Python
#!/usr/bin/env python3
|
|
"""Test Gemini integration directly."""
|
|
|
|
import os
|
|
import sys
|
|
sys.path.insert(0, '/Users/enias/projects/my-ai-projects/apps/youtube-summarizer')
|
|
|
|
# Test environment variables
|
|
print("=== Environment Variables ===")
|
|
print(f"GOOGLE_API_KEY: {os.getenv('GOOGLE_API_KEY', 'NOT_FOUND')[:10]}...")
|
|
print(f"ANTHROPIC_API_KEY: {os.getenv('ANTHROPIC_API_KEY', 'NOT_FOUND')[:10]}...")
|
|
|
|
# Test Gemini service directly
|
|
from backend.services.gemini_summarizer import GeminiSummarizer
|
|
from backend.services.ai_service import SummaryRequest, SummaryLength
|
|
|
|
async def test_gemini():
|
|
api_key = os.getenv('GOOGLE_API_KEY')
|
|
if not api_key:
|
|
print("❌ No GOOGLE_API_KEY found")
|
|
return
|
|
|
|
print("✅ GOOGLE_API_KEY found")
|
|
|
|
# Initialize Gemini service
|
|
gemini = GeminiSummarizer(api_key=api_key)
|
|
print(f"✅ GeminiSummarizer initialized with model: {gemini.model}")
|
|
print(f"✅ Max context: {gemini.max_tokens_input:,} tokens (2M context!)")
|
|
|
|
# Test with sample transcript
|
|
request = SummaryRequest(
|
|
transcript="This is a test video about artificial intelligence and machine learning. It covers neural networks, deep learning, and AI applications in various industries including healthcare, finance, and education.",
|
|
length=SummaryLength.BRIEF,
|
|
focus_areas=["AI", "technology"]
|
|
)
|
|
|
|
print("🚀 Testing Gemini summarization...")
|
|
try:
|
|
result = await gemini.generate_summary(request)
|
|
print("✅ Gemini summarization successful!")
|
|
print(f"📄 Summary: {result.summary[:100]}...")
|
|
print(f"🔑 Key points: {len(result.key_points)} points")
|
|
print(f"🎯 Themes: {result.main_themes}")
|
|
print(f"💰 Cost: ${result.cost_data['total_cost_usd']:.4f}")
|
|
print(f"⚡ Context advantage: {result.processing_metadata.get('large_context_advantage', 'N/A')}")
|
|
except Exception as e:
|
|
print(f"❌ Error: {e}")
|
|
|
|
if __name__ == "__main__":
|
|
import asyncio
|
|
asyncio.run(test_gemini()) |