Skip to content

APIs Gratuitas para IA

APIs Gratuitas para IA

La mejor forma de aprender IA es programar con ella. Estas APIs ofrecen tiers gratuitos generosos.

Comparativa de APIs gratuitas

APITier GratisRate LimitCapacidadRegistro
Google AI StudioGratis15 RPM / 1500 RPDGemini 2.0 Flashaistudio.google.com
OpenRouterModelos free20 RPM50+ modelos freeopenrouter.ai
GroqGratis30 RPMLlama, Mixtralconsole.groq.com
CerebrasGratis30 RPMLlama 3.3cerebras.ai
Hugging FaceGratisLimitadoMiles de modeloshuggingface.co
Together AI$5 créditoVariable200+ modelostogether.ai
DeepSeekCréditos inicialesVariableV3, R1platform.deepseek.com
CohereGratis20 RPMCommand R+dashboard.cohere.com
MistralGratis4 RPMMistral Largeconsole.mistral.ai
FireworksFree tierVariableOpen source modelsfireworks.ai

Google AI Studio (La mejor API gratuita)

El tier más generoso para desarrollo:

import google.generativeai as genai
# 1. Obtén tu API key en aistudio.google.com
genai.configure(api_key="TU_API_KEY")
# 2. Crea el modelo
model = genai.GenerativeModel('gemini-2.0-flash-exp')
# 3. Genera contenido
response = model.generate_content(
"Explica la fotosíntesis en español, en 3 bullets"
)
print(response.text)
# 4. Chat multi-turno
chat = model.start_chat(history=[])
chat.send_message("Hola, ¿qué sabes sobre Python?")
chat.send_message("¿Y sobre FastAPI?")
print(chat.last.text)

Rate limits

ModeloRequests/minRequests/díaTokens/min
Gemini 2.0 Flash151,5001M
Gemini 2.5 Pro550250K

OpenRouter (El agregador)

from openai import OpenAI
client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="TU_OPENROUTER_API_KEY"
)
# Usar modelo gratuito
response = client.chat.completions.create(
model="google/gemini-2.0-flash-exp:free",
messages=[{"role": "user", "content": "Hola"}]
)
# Usar modelo de pago (más potente)
response = client.chat.completions.create(
model="openai/gpt-4o-mini",
messages=[{"role": "user", "content": "Hola"}]
)

Groq (La más rápida)

from openai import OpenAI
client = OpenAI(
base_url="https://api.groq.com/openai/v1",
api_key="TU_GROQ_API_KEY"
)
# Inferencia ultra-rápida (800+ tokens/segundo)
response = client.chat.completions.create(
model="llama-3.3-70b-versatile",
messages=[{"role": "user", "content": "Hola"}]
)

Hugging Face Inference API

from huggingface_hub import InferenceClient
client = InferenceClient(token="TU_HF_TOKEN")
# Text generation
response = client.chat_completion(
model="meta-llama/Llama-3.3-70B-Instruct",
messages=[{"role": "user", "content": "Hola"}]
)
# Image classification
result = client.image_classification("photo.jpg")
# Speech to text
transcript = client.automatic_speech_recognition("audio.mp3")

Proyecto: API rapide

Crea un proyecto que use múltiples APIs gratuitas como fallback:

import os
from openai import OpenAI
# Configuración con fallbacks
PROVIDERS = [
{
"name": "Google AI Studio",
"base_url": "https://generativelanguage.googleapis.com/v1beta/openai",
"api_key": os.getenv("GOOGLE_API_KEY"),
"model": "gemini-2.0-flash-exp"
},
{
"name": "Groq",
"base_url": "https://api.groq.com/openai/v1",
"api_key": os.getenv("GROQ_API_KEY"),
"model": "llama-3.3-70b-versatile"
},
{
"name": "OpenRouter Free",
"base_url": "https://openrouter.ai/api/v1",
"api_key": os.getenv("OPENROUTER_API_KEY"),
"model": "google/gemini-2.0-flash-exp:free"
}
]
def chat_with_fallback(message: str) -> str:
"""Intenta múltiples proveedores hasta que uno funcione."""
for provider in PROVIDERS:
try:
client = OpenAI(
base_url=provider["base_url"],
api_key=provider["api_key"]
)
response = client.chat.completions.create(
model=provider["model"],
messages=[{"role": "user", "content": message}]
)
return response.choices[0].message.content
except Exception as e:
print(f"⚠️ {provider['name']} falló: {e}")
continue
raise Exception("Todos los proveedores fallaron")

[!TIP] Regístrate en TODAS las APIs gratuitas. No cuestan nada y te dan opciones. Guarda las API keys en un archivo .env y NUNCA las subas a git.