[Spring] DeepL API를 이용한 번역 기능 추가하기
·
Spring
DeepL 번역대표적인 번역 API로는 Google Translate API, Microsoft Azure Translator, 그리고 최근 많이 사용되는 DeepL API가 있다.솔직히, 아직까지는 DeepL이 다른 번역 API들보다 더 우수한 번역 결과를 보여주는 것 같다. 이번 시간에는 DeepL API를 스프링 부트에 적용하여 번역 기능을 추가해보자.  DeepL API Key 발급우선 아래 사이트로 접속한다.  DeepL Pro | 텍스트, Word 및 기타 문서를 안전하게 번역하세요빠르고 정확하며 안전한 번역. 개인 및 팀 사용자용 DeepL Pro.www.deepl.com  회원가입을 한 후에, 위 화면에서 DeepL API Free 플랜을 신청한다.위와 같은 화면이 나오는데, 요금이 발생..
[Spring AI] Vector Store와 RAG를 이용한 할루시네이션 방지
·
Spring
스프링 AI 시리즈[Spring AI] 준비 (기본 개념, OpenAI API Key, 크레딧 충전)[Spring AI] 챗봇 만들기 (Kotlin)[Spring AI] Vector Store와 RAG를 이용한 할루시네이션 방지[Spring AI] OpenAI 비용을 절감하는 방법 주의: 해당 포스팅 진행시, embedding된 데이터에 대한 질문을 OpenAI의 GPT-4 모델을 사용하여 처리할 때마다 약 0.01달러의 비용이 발생합니다. AI 할루시네이션(Hallucination)지난 포스팅에서 AI가 `이수재`라는 사람에 대한 정보를 보유하고 있지 않음에도 불구하고, 존재하지 않는 정보를 생성했다. 이는 할루시네이션이라고 불리며, AI가 학습한 데이터 내에서 명확한 답을 찾지 못하거나 관련 정보가 ..
[Spring AI] 챗봇 만들기 (Kotlin)
·
Spring
스프링 AI 시리즈[Spring AI] 준비 (기본 개념, OpenAI API Key, 크레딧 충전) [Spring AI] 챗봇 만들기 (Kotlin)[Spring AI] Vector Store와 RAG를 이용한 할루시네이션 방지[Spring AI] OpenAI 비용을 절감하는 방법이제 본격적으로 OpenAI과 Spring AI를 활용한 챗봇을 만들어보자. 전체 파일 구조build.gradle.ktsplugins { kotlin("jvm") version "1.9.25" kotlin("plugin.spring") version "1.9.25" id("org.springframework.boot") version "3.3.3" id("io.spring.dependency-managem..
[Spring AI] 준비 (기본 개념, OpenAI API Key, 크레딧 충전)
·
Spring
스프링 AI 시리즈[Spring AI] 준비 (기본 개념, OpenAI API Key, 크레딧 충전)[Spring AI] 챗봇 만들기 (Kotlin)[Spring AI] Vector Store와 RAG를 이용한 할루시네이션 방지 [Spring AI] OpenAI 비용을 절감하는 방법 스프링 AI란?Spring AI는 인공지능(AI) 기능을 Spring 애플리케이션에 통합하기 위한 라이브러리이다. 기존에는 거의 파이썬으로만 AI를 활용했지만, 이제 Spring AI를 통해 Java에서도 AI를 활용할 수 있다. 기본 개념 (더보기를 눌러주세요)더보기모델AI 모델은 텍스트, 이미지, 오디오 등 다양한 입력을 처리하여 결과를 생성하는 알고리즘이다. Spring AI는 언어, 이미지, 오디오 입력과 출력을 지원..
[스프링 시큐리티] WebSecurityConfigurerAdapter deprecated 대응
·
Spring
WebSecurityConfigurerAdapter is deprecatedSpring Security 6.0 버전 기준으로 WebSecurityConfigurerAdapter를 완전 사용할 수 없게 됐다.기존 WebSecurityConfigurerAdapter를 상속 후에, configure 메소드를 오버라이딩 하는 방식은 deprecated 됐다. 대신 개발자가 직접 component-based security 설정을 할 수 있도록 변경되었다. 즉 커스텀 할 설정들을 @Bean으로 등록하여 사용한다.HttpSecurity 설정// 변경된 방식 (filterChain을 사용)@Configurationpublic class SecurityConfiguration { @Bean public Se..
[스프링 시큐리티] AuthenticationManager, AuthenticationProvider
·
Spring
※ 이 글은 정수원님의 스프링 시큐리티 - Spring Boot 기반으로 개발하는 Spring Security 강의를 수강하면서 학습한 내용을 정리한 글입니다. 일부 강의 내용을 인용하였으며, 문제가 될 시 인용 부분을 수정 또는 삭제하겠습니다. AuthenticationManager인증 처리하는 filter로부터 인증처리를 지시받는 첫번째 클래스.ID와 Password를 Authentication 인증 객체에 저장하고 이 객체를 AuthenticationManager에게 전달한다. 이 인증에 대해 관리를 하게 된다.AuthenticationManager 인터페이스를 실제로 구현한 것이 ProviderManager. 이 AuthenticationManager 인터페이스를 구현하면 커스텀 ProviderM..