Se puede acceder a los modelos de Gemini con las bibliotecas de OpenAI (Python y TypeScript / JavaScript) junto con la API de REST. Para ello, actualiza tres líneas de código y usa tu clave de API de Gemini. Si todavía no usas las bibliotecas de OpenAI, te recomendamos que llames a la API de Gemini directamente.
Python
from openai import OpenAI
client = OpenAI(
api_key="GEMINI_API_KEY",
base_url="https://generativelanguage.googleapis.com/v1beta/openai/"
)
response = client.chat.completions.create(
model="gemini-3.6-flash",
messages=[
{ "role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Explain to me how AI works"
}
]
)
print(response.choices[0].message)
JavaScript
import OpenAI from "openai";
const openai = new OpenAI({
apiKey: "GEMINI_API_KEY",
baseURL: "https://generativelanguage.googleapis.com/v1beta/openai/"
});
const response = await openai.chat.completions.create({
model: "gemini-3.6-flash",
messages: [
{ role: "system",
content: "You are a helpful assistant."
},
{
role: "user",
content: "Explain to me how AI works",
},
],
});
console.log(response.choices[0].message);
REST
curl "https://generativelanguage.googleapis.com/v1beta/openai/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $GEMINI_API_KEY" \
-d '{
"model": "gemini-3.6-flash",
"messages": [
{
"role": "user",
"content": "Explain to me how AI works"
}
]
}'
¿Qué cambió? Solo tres líneas.
api_key="GEMINI_API_KEY": Reemplaza "GEMINI_API_KEY" por tu clave de API de Gemini real, que puedes obtener en Google AI Studio.base_url="https://generativelanguage.googleapis.com/v1beta/openai/": Esto le indica a la biblioteca de OpenAI que envíe solicitudes al endpoint de API de Gemini en lugar de la URL predeterminada.model="gemini-3.6-flash": Elige un modelo de Gemini compatible.
Pensar
Los modelos de Gemini están entrenados para analizar problemas complejos, lo que lleva a un razonamiento significativamente mejorado. La API de Gemini incluye parámetros de razonamiento que brindan un control detallado sobre cuánto pensará el modelo.
Los diferentes modelos de Gemini tienen diferentes configuraciones de razonamiento. Puedes ver cómo se asignan a los esfuerzos de razonamiento de OpenAI de la siguiente manera:
reasoning_effort (OpenAI) |
thinking_level (Gemini 3.1 Pro) |
thinking_level (Gemini 3.1 Flash-Lite) |
thinking_level (Gemini 3 Flash) |
thinking_budget (Gemini 2.5) |
|---|---|---|---|---|
minimal |
low |
minimal |
minimal |
1,024 |
low |
low |
low |
low |
1,024 |
medium |
medium |
medium |
medium |
8,192 |
high |
high |
high |
high |
24,576 |
Si no se especifica reasoning_effort, Gemini usa el
nivel predeterminado o el presupuesto del modelo.
Si quieres inhabilitar el razonamiento, puedes establecer reasoning_effort en "none" para
los modelos 2.5. El razonamiento no se puede desactivar para los modelos Gemini 2.5 Pro o 3.
Python
from openai import OpenAI
client = OpenAI(
api_key="GEMINI_API_KEY",
base_url="https://generativelanguage.googleapis.com/v1beta/openai/"
)
response = client.chat.completions.create(
model="gemini-3.6-flash",
reasoning_effort="low",
messages=[
{ "role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Explain to me how AI works"
}
]
)
print(response.choices[0].message)
JavaScript
import OpenAI from "openai";
const openai = new OpenAI({
apiKey: "GEMINI_API_KEY",
baseURL: "https://generativelanguage.googleapis.com/v1beta/openai/"
});
const response = await openai.chat.completions.create({
model: "gemini-3.6-flash",
reasoning_effort: "low",
messages: [
{ role: "system",
content: "You are a helpful assistant."
},
{
role: "user",
content: "Explain to me how AI works",
},
],
});
console.log(response.choices[0].message);
REST
curl "https://generativelanguage.googleapis.com/v1beta/openai/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $GEMINI_API_KEY" \
-d '{
"model": "gemini-3.6-flash",
"reasoning_effort": "low",
"messages": [
{
"role": "user",
"content": "Explain to me how AI works"
}
]
}'
Los modelos de razonamiento de Gemini también producen resúmenes de razonamiento.
Puedes usar el campo extra_body para incluir campos de Gemini
en tu solicitud.
Ten en cuenta que reasoning_effort y thinking_level/thinking_budget superponen la funcionalidad, por lo que no se pueden usar al mismo tiempo.