diff --git a/APIKey.py b/APIKey.py index 6b36174..2204780 100644 --- a/APIKey.py +++ b/APIKey.py @@ -45,6 +45,9 @@ class APIKey: elif provider == Provider.MISTRAL: self.subbed = False + elif provider == Provider.MAKERSUITE: + self.models = [] + class Provider(Enum): OPENAI = 1, diff --git a/MakerSuite.py b/MakerSuite.py index 10cf580..45cca0c 100644 --- a/MakerSuite.py +++ b/MakerSuite.py @@ -1,16 +1,30 @@ import APIKey +gemini_models = ["gemini-1.0-pro", "gemini-1.5-pro", "gemini-1.0-ultra"] + async def check_makersuite(key: APIKey, session): async with session.get(f"https://generativelanguage.googleapis.com/v1beta/models?key={key.api_key}") as response: if response.status != 200: return + response_json = await response.json() + model_names = [model['name'].replace('models/', '') for model in response_json['models']] + for model in gemini_models: + if model in model_names: + key.models.append(model) return True def pretty_print_makersuite_keys(keys): + model_counts = {model: [] for model in gemini_models} + for key in keys: + for model in key.models: + model_counts[model].append(key.api_key) + print('-' * 90) print(f'Validated {len(keys)} MakerSuite keys:') - for key in keys: - print(f'{key.api_key}') + for model, keys in model_counts.items(): + print(f'\n{len(keys)} keys with model {model}:') + for key in keys: + print(f'{key}') print(f'\n--- Total Valid MakerSuite Keys: {len(keys)} ---\n')