Aplicaciones infundidas con LLM y IA con Java y Spring AI
Muestras que muestran cómo construir aplicaciones Java alimentadas por IA generativa y modelos de lenguaje grande (LLMS) utilizando AI Spring.
Requisitos previos
Casos de uso
? Chatbot chatbot usando LLM a través de Ollama.
❓ Pregunta respondiendo a la pregunta respondiendo con documentos (RAG) utilizando LLM a través de Ollama y PGVector.
? Búsqueda semántica Búsqueda semántica utilizando LLM a través de Ollama y PGVector.
Extracción de datos estructurados
Extracción de datos estructurados utilizando LLM a través de Ollama.
? ️ Clasificación de texto Clasificación de texto usando LLM a través de Ollama.
? Modelos
Modelos de chat
Finalización de chat con LLM a través de diferentes proveedores de modelos:
- AI Mistral
- Ollama
- Opadai
- Múltiples proveedores
? Incrustación de modelos
Transformación vectorial (incrustaciones) con LLM a través de diferentes proveedores de modelos:
- AI Mistral
- Ollama
- Opadai
- Onnx Transformers
? Modelos de imágenes
Generación de imágenes con LLM a través de diferentes proveedores de modelos:
? Modelos de audio
Generación del habla con LLM a través de diferentes proveedores de modelos:
Transcripción del habla con LLM a través de diferentes proveedores de modelos:
? ️ Modelos de moderación
Muy pronto
? Patrones
Indicaciones, mensajes y plantillas
Significando el uso de texto simple:
Solicitar el uso de mensajes y roles estructurados:
Significando el uso de plantillas:
Salida estructurada
Convertir la salida LLM a objetos JSON y Java estructurados:
Multimodalidad
Incluyendo varios medios en indicaciones con LLM:
Funciones llamadas/herramientas
Llamada de función con LLM a través de diferentes proveedores de modelos:
? Memoria
Muy pronto
? Ingestión de datos
Lectores de documentos
Documentos de lectura y vectorización con LLM a través de Ollama:
- Json
- Reducción
- Pdf
- Texto
- Tika
Transformadores de documentos
Transformación de documentos con LLM a través de Ollama:
- Metadatos
Enriquecer documentos con palabras clave y metadatos de resumen para una recuperación mejorada. - Divisores
Divide los documentos en trozos para adaptarse a la ventana de contexto LLM.
? Tiendas de vectores
Muy pronto
Recuperación de generación aumentada (trapo)
Pregunta respondiendo con documentos que usan diferentes flujos de trapo (con ollama y pgvector):
➡️ trapo secuencial
❔ trapo condicional
? Trapo de ramificación
Observabilidad
? Observabilidad de LLM
Observabilidad de LLM para diferentes proveedores de modelos:
? Observabilidad de la tienda vectorial
Observabilidad de la tienda vectorial para diferentes tiendas vectoriales:
? Evaluación
Muy pronto
? Agentes
Muy pronto
Referencias y recursos adicionales
- Documentación de referencia de Spring AI
? Conferencias
- Presentamos Spring AI de Christian Tzolov y Mark Pollack (Spring I/O 2024)
- Spring Ai es todo lo que necesitas de Christian Tzolov (Goto Amsterdam 2024)
- Concierto para Java y AI - Aplicaciones LLM listas para la producción de edificios por Thomas Vitale (primavera de E/S 2024)
? Videos
- Construyendo aplicaciones inteligentes con Spring AI de Dan Vega (JetBrains Live Stream)
- Serie Spring AI de Dan Vega
- Serie Spring AI de Craig Walls
- Serie de IA de primavera de Josh Long
? Población
- Atención al cliente de la aerolínea (Marcus Hellberg)
- Asistente de compositor (Thomas Vitale)
- Asistente de documentos (Marcus Hellberg)
- Reserva de vuelo (Christian Tzolov)
Talleres
- Spring Ai - Zero to Hero (Adib Saikali, Christian Tzolov)
- Aplicaciones AI con Java y Spring AI (Thomas Vitale)