code
import requests
import json
# 1. Replace with your actual API Key from https://aistudio.google.com/
api_key = "AIzaSyCZhXBp1i15IwTX2BpAZkeoqPNKRvGZ_b8"
print("API Testing for Google AIs - Gemini 1.0 Pro")
url = f"https://generativelanguage.googleapis.com/v1beta/models?key={api_key}"
response = requests.get(url)
if response.status_code == 200:
data = response.json()
print(f"{'Model Name':<30} | {'Methods Supported'}")
print("-" * 60)
for model in data['models']:
# We look for 'generateContent' as that is the method used for AI chat
if "generateContent" in model['supportedGenerationMethods']:
print(f"{model['name']:<30} | {model['version']}...")
else:
print(f"Error: {response.status_code}")
print(response.text)
MODEL_ID = "gemini-2.5-flash-lite"
# 2. The correct endpoint for Gemini 1.0 Pro
api_url = f"https://generativelanguage.googleapis.com/v1beta/models/{MODEL_ID}:generateContent?key={api_key}"
def test_api(prompt_text):
headers = {
"Content-Type": "application/json"
}
# 3. The specific JSON structure Gemini requires
data = {
"contents": [
{
"parts": [
{"text": prompt_text}
]
}
],
"generationConfig": {
"maxOutputTokens": 100,
"temperature": 0.7
}
}
try:
response = requests.post(api_url, headers=headers, json=data)
print(f"Status code: {response.status_code}")
if response.status_code == 200:
result = response.json()
# 4. Extracting the text from the nested response object
answer = result['candidates'][0]['content']['parts'][0]['text']
return answer
else:
print(f"Error Response: {response.text}")
return None
except Exception as e:
print(f"An error occurred: {e}")
return None
# Execute the test
response_text = test_api("What is the capital of France?")
if response_text:
print("-" * 30)
print(f"AI Response: {response_text}")
print("-" * 30)
Comments
Post a Comment