#!/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())