Bldev's Blog

기술 블로그

검색 증강 생성 · 인공지능

[RAG, AI] 벡터 유사도 검색과 RAG

2026. 3. 12.

벡터 유사도 검색 벡터 유사도 검색(vector similarity search)(또는 벡터 검색)이란 벡터로 표현되는 데이터를 검색하는 데이터 검색 방법이다. 벡터란 단어, 문장, 문서, 이미지, 영상 데이터의 숫자 표현이다. 머신러닝 모델과 인공지능 응용 애플리케이션에서 주로 사용되는 개념이다. 벡터는 데이터 간의 의

스프링 · 인공지능

[스프링] 스프링 AI

2026. 3. 12.

스프링 AI 스프링 AI란 자바/스프링 생태계에서 생성형 AI 기반 애플리케이션을 손쉽게 개발할 수 있도록 지원하는 추상화 프레임워크이다. 초기 생성형 AI 애플리케이션 개발은 한동안 랭체인(LangChain), 라마인덱스(LlamaIndex), Neo4j 파이썬 라이브러리, 다양한 LLM 프로바이더의 파이썬 라이브러리

코틀린 · 스프링

[코틀린/스프링] 트랜잭션 관리

2025. 7. 30.

트랜잭션 관리 트랜잭션 관리란 데이터베이스의 상태를 변경하는 작업을 수행하는 과정인 트랜잭션을 관리하는 것을 의미한다. 데이터베이스의 상태 변경 작업에는 쓰기, 수정, 삭제가 있다. 일련의 작업을 수행하는 메서드 내에서 여러 작업 실행을 하나의 트랜잭션으로 실행할지 결정하여 작업 실행이 하나라도 실패하면 전체 작업 실행이

아키텍처 · 소프트웨어 · 캐싱

[아키텍처/소프트웨어] 캐싱

2025. 7. 29.

캐싱(caching)이란 데이터 원본을 별도의 저장소에 복제하여 빠르게 제공하는 것이다. 캐싱은 데이터의 응답 지연 시간을 단축시키고 데이터를 제공하는 서버와 데이터를 제공받는 클라이언트 모두의 성능을 향상시킬 수 있는 중요한 방법이다. 원본 데이터를 복제하여 저장하는 저장소를 캐시 저장소(cache store)라고 한다

자료 구조 · 알고리즘

[자료 구조/알고리즘] 문자열

2025. 7. 25.

문자열은 연속된 문자들이 그룹화되어 구성된 자료 구조이다. 따라서 데이터를 그룹화한 추상 자료형인 컬렉션(collection)의 다양한 자료 구조로 문자열을 구조화할 수 있으며 다양한 자료 구조 탐색 알고리즘을 사용하여 부분 문자열들을 탐색 및 비교하는 등의 문제를 해결할 수 있다. <br 선형 컬렉션 <br 그래프 문자

자료 구조 · 알고리즘

[자료 구조/알고리즘] 백트래킹

2025. 7. 25.

백트래킹(backtracking)(또는 역추적) 알고리즘이란 최적의 해결책을 찾기 위해 모든 가능한 방법을 후보(candidate)로 구성한 후, 점진적으로 후보들을 시도하면서 유효한 후보가 아닐 경우(문제의 정답 조건을 만족하지 않을 경우) 문제 해결 과정에서 제외하고 되돌아가 다른 후보를 시도(백트랙)하는 과정을 반복

게시글을 더 불러오는 중...