스프링 AI 2.0.0-M2 출시! 널 안전성 강화 및 신규 기능 대거 탑재
스프링 AI 2.0.0-M2 버전이 출시되었으며, Maven Central에서 다운로드 가능
널(Null) 안전성(Null Safety)을 위해 JSpecify 기반의 코드베이스로 전환하여 컴파일 타임(Compile Time)에 널 관련 오류를 방지
벡터 스토어(Vector Store), 구조화된 출력(Structured Output), 도구 호출(Tool Calling) 등 다양한 기능 개선 및 새로운 기능 추가
널(Null) 안전성(Null Safety) 도입 배경 및 영향
스프링 AI 2.0은 스프링 포트폴리오(Spring Portfolio)의 일환으로 널(Null) 안전성(Null Safety)을 제공하며, 이는 코드 품질 향상에 기여한다.
JSpecify(JSpecify)를 사용하여 코드베이스 전체를 검토하고 변환, 컴파일 타임(Compile Time)에 널 관련 오류를 방지
Kotlin(Kotlin) 사용자에게는 널 가능성(Nullable) 및 널 불가능(Non-nullable) 타입 지원
2.0 GA(General Availability) 버전까지 널 안전성 적용 범위를 확대할 예정이며, 핵심 API(Application Programming Interface)에 적용 완료
새롭게 추가된 기능 상세
이번 릴리스에서는 다양한 기능이 추가되었으며, 특히 벡터 스토어(Vector Store), 구조화된 출력(Structured Output), 도구 호출(Tool Calling) 관련 기능이 눈에 띈다.
벡터 스토어(Vector Store): Amazon S3, Infinispan, Amazon Bedrock Knowledge Base 지원
구조화된 출력(Structured Output): Mistral AI(Mistral AI)의 JSON 스키마(JSON Schema) 기반 유효성 검사 지원
도구 호출(Tool Calling): 런타임(Runtime) 시 인자 정의 수정 위한 동적 도구 스키마(Dynamic Tool Schema) 개선
향후 개발 방향 및 기여 방법
스프링 AI 2.0 GA(General Availability) 버전을 목표로 개발이 진행 중이며, 깃허브(GitHub)에서 진행 상황을 확인할 수 있다.
2.0 GA(General Availability) 버전 출시를 위해 지속적인 개발 진행
커뮤니티 기여(Community Contribution)를 장려하며, 널 안전성(Null Safety)을 고려한 코드 작성을 권장
사용자 가이드(User Guide)를 통해 널 안전성 관련 정보 확인 가능