Spring AI
Spring AI is an application framework for AI engineering. Its goal is to apply to the AI domain Spring ecosystem design principles such as portability and modular design and promote using POJOs as the building blocks of an application to the AI domain.
Spring AI는 AI 엔지니어링을 위한 어플리케이션 프레임워크다. 이 프레임워크 목표는 이식성, 모듈러 설계와 같은 스프링 생태계 설계 원칙을 AI에 적용하고, POJO를 어플리케이션 구성요소로 사용하는것을 권장합니다.
스프링 AI의 공식 도큐먼트를 들어가면 제일 먼저 볼 수 있는 문구로 어떤 철학을 가지고 만들었는지 알 수 있다.
결과적으로 스프링 생태계를 적극 사용하는 AI 도메인 애플리케이션의 구성을 돕고자 하는 도구라고 볼 수 있다.
At its core, Spring AI addresses the fundamental challenge of AI integration: Connecting your enterprise Data and APIs with the AI Models.
Spring AI의 핵심은 AI 통합의 근본적인 과제를 해결하는 것입니다. 즉, 기업의 데이터와 API를 AI 모델과 연결하는 것입니다.
추구하고자 하는 바는 결국 엔터프라이즈 시스템의 API, Data를 통합하여 AI와 연결하는 것이라고 말할 수 있다.
기능
현재 Spring AI는 1.0.1이라는 상당히 초기 버전으로 런칭되어있다.
•
대다수 유명한 LLM 모델(Antrhropic, OpenAI, Microsoft, Amazon, Google, Ollama)을 지원하며 지원 모델의 기능은 다음과 같다.
◦
Chat Completion
◦
Embedding
◦
Text to Image
◦
Audio Transctiption
◦
Text to Speech
◦
Moderation
•
Structured Outputs - Mapping of AI Model output to POJOs.
•
Support for all major Vector Database providers such as Apache Cassandra, Azure Cosmos DB, Azure Vector Search, Chroma, Elasticsearch, GemFire, MariaDB, Milvus, MongoDB Atlas, Neo4j, OpenSearch, Oracle, PostgreSQL/PGVector, PineCone, Qdrant, Redis, SAP Hana, Typesense and Weaviate.
•
Portable API across Vector Store providers, including a novel SQL-like metadata filter API.
•
Tools/Function Calling - Permits the model to request the execution of client-side tools and functions, thereby accessing necessary real-time information as required and taking action.
•
Observability - Provides insights into AI-related operations.
•
•
AI Model Evaluation - Utilities to help evaluate generated content and protect against hallucinated response.
•
Spring Boot Auto Configuration and Starters for AI Models and Vector Stores.
•
ChatClient API - Fluent API for communicating with AI Chat Models, idiomatically similar to the WebClient and RestClient APIs.
•
Advisors API - Encapsulates recurring Generative AI patterns, transforms data sent to and from Language Models (LLMs), and provides portability across various models and use cases.
•
