Obtener API KEY de OpenAI
Para utilizar los modelos de OpenAI en LangChain, es necesario obtener una clave de API que permita autenticar las peticiones a sus servicios. Esta clave actúa como una credencial de acceso única y personal que debe mantenerse protegida en todo momento para evitar usos no autorizados.
El primer paso consiste en crear una cuenta en la plataforma de desarrolladores de OpenAI. Accede a platform.openai.com y completa el registro. Una vez dentro del panel de control, localiza la sección "API Keys" en el menú lateral, donde podrás gestionar tus credenciales.
- 1. Generación de la clave:
Haz clic en "Create new secret key". Se generará una cadena de caracteres que comienza habitualmente por sk-proj-....
sk-proj-123456789abcdef...
- 2. Configuración segura:
Crea un archivo .env en la raíz de tu proyecto para almacenar la clave como variable de entorno, evitando así exponerla en el código fuente.
OPENAI_API_KEY=tu_clave_api_aquí
- 3. Carga en Python:
Utiliza la librería python-dotenv para cargar estas variables al inicio de tu aplicación.
from dotenv import load_dotenv
import os
load_dotenv()
if os.getenv("OPENAI_API_KEY"):
print("API KEY cargada correctamente")
Es fundamental añadir el archivo .env a tu .gitignore para prevenir que se suba accidentalmente a repositorios públicos. Además, ten en cuenta que el uso de la API conlleva costes por token, por lo que es recomendable configurar límites de facturación en el panel de OpenAI.
Invocar modelos de OpenAI en LangChain
LangChain ofrece una integración robusta con OpenAI a través del paquete langchain-openai. Esta librería permite interactuar tanto con modelos de chat (GPT-5, GPT-5.1, GPT-4.1) como con modelos de razonamiento avanzado (serie o3, o4-mini).
Instalación de dependencias
Antes de comenzar, instala el paquete oficial de integración:
pip install langchain-openai
Opción 1: Inicialización unificada (Recomendada)
La función init_chat_model es la forma más moderna de instanciar modelos en LangChain 1.x. Ofrece una interfaz estandarizada que facilita el cambio entre diferentes proveedores sin modificar la lógica base del código.
- 1. Configuración básica:
from langchain.chat_models import init_chat_model
# Inicialización agnóstica del modelo
llm = init_chat_model(
"gpt-5",
temperature=0.7
)
response = llm.invoke("Explica la computación cuántica en una frase")
print(response.content)
El identificador de modelo se infiere automáticamente (por ejemplo, "gpt-5" se interpreta como "openai:gpt-5"). Esta aproximación es ideal para aplicaciones que requieren flexibilidad para alternar entre modelos o proveedores mediante configuración.
Opción 2: Clase ChatOpenAI (Control total)
Para un control más detallado sobre los parámetros específicos de OpenAI, utiliza la clase ChatOpenAI. Esta es la opción preferida cuando se desarrollan funcionalidades exclusivas de este proveedor.
- 1. Instanciación directa:
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(
model="gpt-5",
temperature=0.5,
max_tokens=1000,
timeout=30
)
response = llm.invoke("¿Qué ventajas ofrece Python?")
print(response.content)
Configuración de modelos y parámetros
OpenAI ofrece una variedad de modelos optimizados para diferentes escenarios. La elección correcta depende del equilibrio necesario entre inteligencia, velocidad y coste.
- 1. Modelos insignia y eficientes:
Utiliza gpt-5 o gpt-5.1 para tareas de alta complejidad y gpt-4.1-mini para operaciones rápidas y económicas.
# Modelo insignia: GPT-5
gpt5 = ChatOpenAI(model="gpt-5", temperature=0.7)
# Modelo eficiente: GPT-4.1 mini
gpt4_mini = ChatOpenAI(model="gpt-4.1-mini", temperature=0.7)
- 2. Modelos de razonamiento (Serie o3/o4):
Para problemas complejos que requieren planificación o razonamiento profundo (matemáticas, programación avanzada), utiliza la serie o3 u o4-mini. Ten en cuenta que estos modelos gestionan su propio proceso de pensamiento interno.
# Modelo de razonamiento
o4_mini = ChatOpenAI(model="o4-mini")
- 3. Ajuste de hiperparámetros:
Puedes configurar parámetros avanzados para controlar la creatividad y consistencia de las respuestas.
llm_creativo = ChatOpenAI(
model="gpt-5",
temperature=0.9, # Alta creatividad
presence_penalty=0.6, # Fomenta nuevos temas
frequency_penalty=0.2 # Evita repeticiones literales
)
Manejo de respuestas y metadatos
Las respuestas devueltas por LangChain son objetos AIMessage que contienen no solo el texto generado, sino también información valiosa sobre el uso de recursos.
response = gpt5.invoke("Resume la historia de Internet")
# Contenido principal
print(f"Respuesta: {response.content}")
# Metadatos de uso (tokens)
usage = response.response_metadata.get('token_usage', {})
print(f"Tokens totales: {usage.get('total_tokens')}")
Alternativa empresarial: Azure OpenAI
Para entornos corporativos que requieren cumplimiento normativo específico o integración con la nube de Microsoft, LangChain soporta Azure OpenAI mediante la clase AzureChatOpenAI.
- 1. Configuración de Azure:
Requiere variables de entorno adicionales (AZURE_OPENAI_API_KEY, AZURE_OPENAI_ENDPOINT) y el nombre del despliegue.
from langchain_openai import AzureChatOpenAI
azure_llm = AzureChatOpenAI(
azure_deployment="gpt-5-deployment", # Nombre del despliegue en Azure
api_version="2025-01-01-preview",
temperature=0.7
)
Esta integración mantiene la misma interfaz de métodos (invoke, stream) que la versión estándar, facilitando la migración entre la API directa de OpenAI y Azure.
Fuentes y referencias
Documentación oficial y recursos externos para profundizar en LangChain
Documentación oficial de LangChain
Alan Sastre
Ingeniero de Software y formador, CEO en CertiDevs
Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, LangChain es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.
Más tutoriales de LangChain
Explora más contenido relacionado con LangChain y continúa aprendiendo con nuestros tutoriales gratuitos.
Aprendizajes de esta lección
Configurar la API key de OpenAI de forma segura, inicializar modelos usando init_chat_model y ChatOpenAI, seleccionar el modelo adecuado según el caso de uso, configurar parámetros como temperature y max_tokens, y trabajar con Azure OpenAI para entornos empresariales.
Cursos que incluyen esta lección
Esta lección forma parte de los siguientes cursos estructurados con rutas de aprendizaje