Configuración del Entorno de Desarrollo para Generative AI para Java
July 2, 2026 · View on GitHub
Inicio Rápido: Provisión tus modelos de IA en Azure AI Foundry como código con Bicep +
azden unos minutos — consulta la Guía de Configuración de Azure AI Foundry. La autenticación es sin claves (Microsoft Entra ID), así que no hay claves API que gestionar.
Lo Que Aprenderás
- Configurar un entorno de desarrollo Java para aplicaciones de IA
- Elegir y configurar tu entorno de desarrollo preferido (primero en la nube con Codespaces, contenedor de desarrollo local o configuración local completa)
- Probar tu configuración conectándote a un modelo de Azure AI Foundry
Tabla de Contenidos
- Lo Que Aprenderás
- Introducción
- Paso 1: Configura Tu Entorno de Desarrollo
- Paso 2: Provisiona Azure AI Foundry
- Paso 3: Prueba Tu Configuración
- Solución de Problemas
- Resumen
- Próximos Pasos
Introducción
Este capítulo te guiará a través de la configuración de un entorno de desarrollo. Usaremos Azure AI Foundry para los modelos durante todo este curso. Provisión los modelos como código con Bicep y la CLI de desarrollador de Azure (azd), luego te conectas con autenticación sin claves (Microsoft Entra ID) — sin claves API que copiar o filtrar.
¡No se requiere configuración local! Puedes usar GitHub Codespaces, que proporciona un entorno completo de desarrollo en tu navegador, y desde ahí provisionar Foundry.
Usamos Azure AI Foundry para este curso porque es:
- Provisionado como código — un solo
azd updespliega la cuenta y los despliegues del modelo - Sin claves — autentícate con tu inicio de sesión Azure o una identidad administrada
- Listo para producción — el mismo código se ejecuta localmente y en Azure
- Flexible — cambia modelos cambiando un nombre de despliegue, no tu código
Nota: Los despliegues de Azure AI Foundry se facturan por token (pago por uso). Consulta la guía de configuración de Azure AI Foundry para detalles sobre provisión, región y costes.
Paso 1: Configura Tu Entorno de Desarrollo
Hemos creado un contenedor de desarrollo preconfigurado para minimizar el tiempo de configuración y asegurar que tengas todas las herramientas necesarias para este curso de Generative AI para Java. Elige tu enfoque de desarrollo preferido:
Opciones de Configuración del Entorno:
Opción A: GitHub Codespaces (Recomendado)
Comienza a programar en 2 minutos - ¡no se requiere configuración local!
- Haz fork de este repositorio en tu cuenta de GitHub
Nota: Si deseas editar la configuración básica, consulta la Configuración del Contenedor de Desarrollo
- Haz clic en Code → pestaña Codespaces → ... → Nuevo con opciones...
- Usa las opciones por defecto – esto seleccionará la Configuración del contenedor de desarrollo: Entorno de Desarrollo de Generative AI Java contenedor personalizado creado para este curso
- Haz clic en Crear codespace
- Espera aproximadamente 2 minutos a que el entorno esté listo
- Continúa al Paso 2: Provisiona Azure AI Foundry
Beneficios de Codespaces:
- No se requiere instalación local
- Funciona en cualquier dispositivo con un navegador
- Preconfigurado con todas las herramientas y dependencias
- 60 horas gratuitas al mes para cuentas personales
- Entorno consistente para todos los aprendices
Opción B: Contenedor de Desarrollo Local
Para desarrolladores que prefieren desarrollo local con Docker
- Haz fork y clona este repositorio a tu máquina local
Nota: Si deseas editar la configuración básica, consulta la Configuración del Contenedor de Desarrollo
- Instala Docker Desktop y VS Code
- Instala la extensión de Dev Containers en VS Code
- Abre la carpeta del repositorio en VS Code
- Cuando se te solicite, haz clic en Reabrir en Contenedor (o usa
Ctrl+Shift+P→ "Dev Containers: Reopen in Container") - Espera a que el contenedor se construya y arranque
- Continúa al Paso 2: Provisiona Azure AI Foundry
Opción C: Usa Tu Instalación Local Existente
Para desarrolladores con entornos Java existentes
Requisitos previos:
- Java 21+
- Maven 3.9+
- VS Code o tu IDE preferido
Pasos:
- Clona este repositorio a tu máquina local
- Abre el proyecto en tu IDE
- Continúa al Paso 2: Provisiona Azure AI Foundry
Consejo Profesional: Si tienes una máquina con bajas especificaciones pero quieres usar VS Code localmente, ¡usa GitHub Codespaces! Puedes conectar tu VS Code local a un Codespace alojado en la nube para tener lo mejor de ambos mundos.
Paso 2: Provisiona Azure AI Foundry
Despliega los modelos de IA del curso en Azure AI Foundry como código. Desde la raíz del repositorio:
cd 02-SetupDevEnvironment
azd auth login
az login
azd up
azd solicita un nombre de entorno y región, provisiona una cuenta Azure AI Foundry con despliegues gpt-4o-mini y text-embedding-3-small, y escribe el endpoint en el .env del ejemplo — todo con autenticación sin claves (sin claves API).
Guía completa: Consulta la Guía de Configuración de Azure AI Foundry para requisitos previos, alternativa manual (portal), recomendaciones de región y notas sobre costes y limpieza.
Paso 3: Prueba Tu Configuración
Una vez que tus modelos Foundry estén provisionados, prueba la conexión con la app de ejemplo en 02-SetupDevEnvironment/examples/basic-chat-azure.
- Abre la terminal en tu entorno de desarrollo.
- Navega al ejemplo:
cd 02-SetupDevEnvironment/examples/basic-chat-azure - Asegúrate de estar conectado (la autenticación sin claves requiere un token):
az loginSi ejecutaste
azd up, el archivo.envcon tu endpoint ya fue escrito para ti. - Ejecuta la aplicación:
mvn clean spring-boot:run
Deberías ver una respuesta del modelo gpt-4o-mini.
Entendiendo el Código de Ejemplo
El ejemplo en examples/basic-chat-azure es una app Spring Boot que usa Spring AI para conectarse a Azure AI Foundry con autenticación sin claves.
Qué hace este código:
- Se conecta a Azure AI Foundry usando tu inicio de sesión Azure (Microsoft Entra ID) — sin clave API
- Envía un prompt al modelo
gpt-4o-mini - Recibe y muestra la respuesta de la IA
- Valida que tu configuración funciona correctamente
Dependencia clave (en pom.xml):
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-starter-model-azure-openai</artifactId>
</dependency>
Configuración (application.yml):
spring:
ai:
azure:
openai:
# Endpoint only - no api-key. Spring AI uses DefaultAzureCredential (keyless).
endpoint: ${AZURE_OPENAI_ENDPOINT}
chat:
options:
deployment-name: ${AZURE_OPENAI_DEPLOYMENT:gpt-4o-mini}
Resumen
¡Genial! Ahora tienes todo configurado:
- Modelos de Azure AI Foundry provisionados como código con Bicep +
azd - Tu entorno de desarrollo Java funcionando (ya sea Codespaces, contenedores de desarrollo o local)
- Conexión a Azure AI Foundry con autenticación sin claves (Microsoft Entra ID) — sin claves API
- Lo probaste todo con un ejemplo simple que se comunica con tu modelo
Próximos Pasos
Capítulo 3: Técnicas Básicas de Generative AI
Solución de Problemas
¿Tienes problemas? Aquí los problemas y soluciones comunes:
-
¿Falla la autenticación (401/403)?
- Ejecuta
az login— la autenticación es sin claves, debes estar firmado - Verifica que tu cuenta tenga el rol Cognitive Services OpenAI User sobre el recurso
- Si acabas de provisionar, espera un minuto para que se propague la asignación del rol
- Ejecuta
-
¿Maven no encontrado?
- Si usas contenedores de desarrollo/Codespaces, Maven debe venir preinstalado
- Para configuración local, asegúrate de tener Java 21+ y Maven 3.9+ instalados
- Intenta
mvn --versionpara verificar la instalación
-
¿
azdno encontrado o falla la provisión?- Instala la Azure Developer CLI y ejecuta
azd auth login - Elige una región donde
gpt-4o-miniesté disponible (e.g.eastus2) - Consulta la guía de Azure AI Foundry para detalles
- Instala la Azure Developer CLI y ejecuta
-
¿El contenedor de desarrollo no inicia?
- Asegúrate que Docker Desktop está corriendo (para desarrollo local)
- Intenta reconstruir el contenedor:
Ctrl+Shift+P→ "Dev Containers: Rebuild Container"
-
¿Errores al compilar la aplicación?
- Asegúrate de estar en el directorio correcto:
02-SetupDevEnvironment/examples/basic-chat-azure - Intenta limpiar y recompilar:
mvn clean compile
- Asegúrate de estar en el directorio correcto:
¿Necesitas ayuda?: ¿Sigues teniendo problemas? Abre un issue en el repositorio y te ayudaremos.
Descargo de responsabilidad: Este documento ha sido traducido utilizando el servicio de traducción automática Co-op Translator. Aunque nos esforzamos por la precisión, tenga en cuenta que las traducciones automatizadas pueden contener errores o inexactitudes. El documento original en su idioma nativo debe considerarse la fuente autorizada. Para información crítica, se recomienda una traducción profesional humana. No somos responsables de cualquier malentendido o interpretación errónea que surja del uso de esta traducción.