PromptCraft: Generador IA de Prompts para Spring

Spring Boot es un framework Java muy popular que facilita crear y ejecutar aplicaciones rápidamente, ofreciendo funcionalidades listas para usar para que los desarrolladores se centren en escribir código en lugar de configurar todo desde cero. Spring AI es un proyecto reciente que integra capacidades de inteligencia artificial en aplicaciones Spring, permitiendo trabajar con modelos de IA de forma sencilla dentro de proyectos Java. Combinando Spring Boot, Spring AI y OpenAI se pueden construir aplicaciones potentes que responden de forma natural, como chatbots, herramientas de generación de contenido o asistentes creativos con muy poca configuración.
Paso 1 Crear un nuevo proyecto Spring Boot: visita start.spring.io y genera un proyecto con Maven, lenguaje Java y la version estable de Spring Boot. Incluye la dependencia Spring Web para las APIs REST y abre el proyecto en IntelliJ IDEA o Eclipse. El objetivo es obtener una estructura de proyecto mínima lista para extender.
Paso 2 Añadir la dependencia de Spring AI: en el pom.xml incluye el starter de Spring AI para OpenAI y la gestion de dependencias del BOM de spring ai. Es suficiente añadir spring ai starter para OpenAI y el spring ai bom con la version correspondiente para gestionar las versiones de los artefactos.
Paso 3 Obtener una clave de API de OpenAI: crea o inicia sesion en la plataforma de OpenAI, ve a la seccion de API Keys y genera una nueva clave secreta. Copia la clave y guardala en un lugar seguro, por ejemplo en variables de entorno o en un gestor de secretos. Nunca subas la clave a repositorios publicos.
Paso 4 Configurar application.yml: define el puerto y la clave de OpenAI mediante una variable de entorno, por ejemplo ai.openai.api-key referenciando OPENAI_API_KEY. Tambien puedes definir opciones por defecto como el modelo a usar y la temperatura. Para entornos de produccion utiliza un gestor de secretos o vault para proteger credenciales.
Paso 5 Crear el controlador REST: implementa un controlador que exponga endpoints para gestionar plantillas y generar texto. Un endpoint GET permite listar plantillas, un POST permite crear o actualizar plantillas con campos como name description system y userTemplate, y un POST en generate recibe el nombre de la plantilla o el texto bruto junto a variables y opcionalmente el modelo para generar la respuesta via IA.
Paso 6 Definir DTOs para peticiones y respuestas: crea registros o clases para PromptDefinition con name description system userTemplate; para CreateOrUpdateTemplateRequest con name description system userTemplate; para GenerateRequest con template variables system model; y para GenerateResponse con content. Estas estructuras simplifican la validacion y la transferencia de datos entre cliente y servidor.
Paso 7 Crear un TemplateStore en memoria: implementa un componente que actue como almacen ligero en memoria usando un mapa concurrente. Presemina algunas plantillas utilies como twitter-hooks summarize y rewrite-tone para demostrar el uso. Este almacen facilita pruebas rapidas y permite obtener o actualizar plantillas sin depender de una base de datos en las primeras etapas del proyecto.
Paso 8 Implementar PromptCraftService: este servicio es el nucleo que conecta con ChatClient de Spring AI. Debe incluir un metodo renderTemplate que sustituya variables en plantillas y un metodo generate que arme el prompt con instrucciones system y user y llame al modelo de OpenAI, permitiendo pasar opciones como modelo. Finalmente un metodo generateFromTemplate combina renderizado y generacion para devolver el contenido generado.
Paso 9 Probar los endpoints: usa cualquier cliente HTTP para llamar a POST api/templates enviando los campos name description system userTemplate en el cuerpo JSON, y luego llama a POST api/generate indicando template variables y opcionalmente model para producir texto generado por la IA. Verifica comportamiento con distintos modelos y plantillas.
Buenas practicas y seguridad: no incluyas claves en el codigo, limita accesos, controla costes de uso de la API y en produccion utiliza un gestor de secretos. Documenta las plantillas y ofrece validacion de entradas para evitar solicitudes malformadas.
Sobre PromptCraft: PromptCraft es un generador ligero de prompts impulsado por IA construido con Spring Boot y Spring AI. Permite crear, almacenar y reutilizar plantillas para mantener las interacciones con IA estructuradas y eficientes, ideal para equipos que desean integrar capacidades de lenguaje en sus aplicaciones rapidamente.
Q2BSTUDIO y como podemos ayudarte: en Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en inteligencia artificial ciberseguridad y soluciones cloud. Ofrecemos servicios de software a medida y aplicaciones a medida para transformar ideas en productos reales, y contamos con experiencia en proyectos que integran agentes IA y soluciones de IA para empresas. Si buscas desarrollar aplicaciones a medida visita servicios de desarrollo de aplicaciones a medida y si te interesa potenciar procesos con modelos de lenguaje y soluciones de inteligencia artificial consulta nuestros servicios de inteligencia artificial.
Palabras clave y areas de servicio: aplicaciones a medida software a medida inteligencia artificial ciberseguridad servicios cloud aws y azure servicios inteligencia de negocio ia para empresas agentes IA power bi. Tambien ofrecemos evaluaciones de seguridad y pentesting para proteger tus sistemas y servicios de nube gestionados en AWS y Azure, asi como soluciones de inteligencia de negocio y cuadros de mando con Power BI para tomar decisiones basadas en datos.
Conclusión: PromptCraft es una base practica para crear funcionalidades IA dentro de un ecosistema Spring. Con poca infrastructura puedes ofrecer experiencias conversacionales y de generacion de contenido reutilizando plantillas y gestionando modelos de forma centralizada. Si necesitas llevar esto a produccion o integrar IA con sistemas corporativos, en Q2BSTUDIO te apoyamos desde la arquitectura hasta la implementacion y seguridad.
Autor Ayush Shrivastava. Gracias por formar parte de la comunidad y si quieres que te ayudemos a convertir esta idea en un proyecto productivo contactanos para explorar servicios de desarrollo software integracion de IA y seguridad.
Comentarios