""" API entegrasyonlarını test etmek için script. Bu script, dinamik model keşfi özelliğini test eder. """ import os import time from api_integrations import ( api_manager, openai_handler, gemini_handler, openrouter_handler, MODEL_CACHE, load_model_cache, save_model_cache ) def test_dynamic_model_discovery(): """ Dinamik model keşfi özelliğini test eder. """ print("Dinamik Model Keşfi Testi\n" + "="*30) # Mevcut önbellek durumunu göster print("\nMevcut Önbellek Durumu:") for provider in MODEL_CACHE: model_count = len(MODEL_CACHE[provider]["models"]) last_updated = MODEL_CACHE[provider]["last_updated"] last_updated_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(last_updated)) if last_updated > 0 else "Hiç güncellenmemiş" print(f"{provider.capitalize()}: {model_count} model, Son güncelleme: {last_updated_str}") # OpenAI modellerini test et print("\nOpenAI Modelleri Testi:") if openai_handler.api_key: print("API anahtarı mevcut, API'den modelleri çekme...") models = openai_handler.get_available_models(force_refresh=True) print(f"Toplam {len(models)} model bulundu.") print(f"İlk 10 model: {models[:10]}") else: print("API anahtarı mevcut değil, varsayılan modeller kullanılacak.") models = openai_handler.get_available_models() print(f"Toplam {len(models)} model bulundu.") print(f"Modeller: {models}") # Gemini modellerini test et print("\nGemini Modelleri Testi:") if gemini_handler.api_key: print("API anahtarı mevcut, API'den modelleri çekme...") models = gemini_handler.get_available_models(force_refresh=True) print(f"Toplam {len(models)} model bulundu.") print(f"Modeller: {models}") else: print("API anahtarı mevcut değil, varsayılan modeller kullanılacak.") models = gemini_handler.get_available_models() print(f"Toplam {len(models)} model bulundu.") print(f"Modeller: {models}") # OpenRouter modellerini test et print("\nOpenRouter Modelleri Testi:") if openrouter_handler.api_key: print("API anahtarı mevcut, API'den modelleri çekme...") models = openrouter_handler.get_available_models(force_refresh=True) print(f"Toplam {len(models)} model bulundu.") print(f"İlk 10 model: {models[:10]}") else: print("API anahtarı mevcut değil, varsayılan modeller kullanılacak.") models = openrouter_handler.get_available_models() print(f"Toplam {len(models)} model bulundu.") print(f"İlk 10 model: {models[:10]}") # Önbellek dosyasını kontrol et cache_file_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "model_cache.json") if os.path.exists(cache_file_path): print(f"\nÖnbellek dosyası mevcut: {cache_file_path}") print(f"Dosya boyutu: {os.path.getsize(cache_file_path)} byte") else: print(f"\nÖnbellek dosyası henüz oluşturulmamış: {cache_file_path}") # Önbellek yeniden yükleme testi print("\nÖnbellek Yeniden Yükleme Testi:") load_model_cache() for provider in MODEL_CACHE: model_count = len(MODEL_CACHE[provider]["models"]) last_updated = MODEL_CACHE[provider]["last_updated"] last_updated_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(last_updated)) if last_updated > 0 else "Hiç güncellenmemiş" print(f"{provider.capitalize()}: {model_count} model, Son güncelleme: {last_updated_str}") print("\nTest tamamlandı!") if __name__ == "__main__": test_dynamic_model_discovery()