- 스프링 AI는 자바 진영에서 AI 에이전트 개발을 위한 프레임워크로, 랭체인 기반 파이썬 생태계의 한계를 극복하고 기존 자바 자원 활용을 가능하게 함 💡
- 스프링 AI 프로젝트는 인텔리제이에서 그레이들 프로젝트로 열어 JDK 21로 설정하고, 오픈AI API 키를 시스템 환경변수에 등록해야 함 🔑
- 오픈AI API 사용은 유료이며, 제미나이 API를 사용할 경우 무료이지만 데이터가 구글에 저장될 수 있음을 유의해야 함 💰
- 스프링 AI의 모든 모듈은 봄(Bom) 버전을 통해 관리되며,
spring-ai-starter
로 시작하는 모듈만 사용해야 함 📚
- 스프링 AI는 다양한 공급자(오픈AI, 엔트로픽, 구글 등)를 지원하며, 여러 공급사 사용 시 오토 컨피규레이션 충돌을 방지하기 위해 익스클루드 설정을 해야 함 💥
- 실무에서는 여러 공급사를 동시에 사용하는 경우가 많으므로, 오토 컨피규레이션을 제외하고 수동 빈으로 설정하는 것이 일반적임 ⚙️
- OpenAI 호환 API를 제공하는 서비스들을 활용할 수 있으며, 시스템 변수를 통해 API 키를 관리할 수 있음 🌐
- 여러 공급사 사용 시, 타입은 같지만 애노테이션을 사용하여 네임으로 빈을 구분하여 Autowired 할 수 있음 🏷️
- 스프링 AI의 모듈 구조와 버전 관리를 이해하는 것이 중요하며, Chat Completion 기능을 활용할 수 있음 💬