현재 온디바이스(On-Device) 환경에서 사용할 RAG 솔루션을 개발 중에 있다. 매번 하드웨어의 제약이 사실상 없는 클라우드 환경에서만 개발하다가, 리소스 제약이 심한 온디바이스 환경으로 넘어와 초기 RAG 시스템을 개선하려다 보니 고민해야 할 부분들이 정말 많았다. 전체 구조를 도식화하면 다음과 같다. 이 그림이 대부분의 RAG 시스템을 설명해준다. 그림을 보고 다시 생각해보니 사실 안 중요한 부분이 없긴 한데...그래도 그 중에서 조금 더 중요하다고 생각하는 부분부터 하나씩 정리해보자. 1. 임베딩을 하기 위한 데이터 정제현재는 사내에서 자체 개발한 문서 분석 툴을 사용하고 있다. 데이터 정제 과정이 중요한 이유는, 이 전처리를 얼마나 잘하느냐에 따라 표나 이미지에 포함된 정보에 대한 질문을 ..
나는 임베딩 벡터를 이용한 검색 시스템을 사전 이해 없이 통으로 만들어본 적이 있다. 그때의 지식이 크게 변하지 않은 채로 시간이 지나면서, 최근 다시 임베딩 벡터 기반 검색 기술을 공부하던 중 의미 기반 검색(Semantic Search) 과 키워드 기반 검색(Keyword Search) 의 개념을 명확히 알게 되었다. 그리고 이 두 접근 방식을 비교하다 보니, Sparse Vector(희소 벡터) 라는 개념이 그 중심에 있다는 걸 알게 됐다. 이번 글에서는 Sparse Vector가 무엇이고, Dense Vector와 어떤 차이가 있으며, 임베딩 기반 검색에서 어떤 역할을 하는지를 정리해보려 한다. 거기다 이전 글이 Embedding에 사용되는 벡터가 dense만 있다는 듯이 사용해서 자세히 알아봤다..
앞서 RAG 검색의 개괄적인 내용을 정리해봤고, 이번엔 세부 기술들을 정리해보려고 한다.2025.10.20 - [개발/AI] - RAG 이해하기: Embedding부터 평가 지표까지 RAG는 Retrieval(검색)과 Generation(생성)으로 나뉘는데, 검색의 핵심은 ‘어떻게 의미적으로 비슷한 문서를 찾느냐’이다. 여기서 임베딩이 그 열쇠가 된다. 임베딩 기술이 뭔지, 임베딩이 어떻게 구성되는지는 나보다 더 잘알고 잘 설명해주는 글이 많아 짧게 정리해보면 다음과 같다.임베딩은 텍스트(문장, 단어, 문서 등)를 고차원 벡터 형태로 변환하는 과정이다. 이렇게 하면 문장 간의 의미적 유사도를 수치적으로 비교하기 위한 기법입니다. 최근 가장 보편적으로 사용되는 건 openai의 text-embedding..
RAG란? RAG(Retrieval-Augmented Generation)의 약자로, 대규모 언어 모델(LLM)이 답변을 생성할 때 외부의 신뢰할 수 있는 지식 소스에서 관련 정보를 검색하고 활용하여 답변의 정확성과 최신성을 높이는 기술이다. 위 그림은 AWS에서 제공하는 구성도이다. LLM에게 질문을 할때 답변을 바로 생성하지 않고, Knowledge Sources를 갔다오게끔하는 방식으로 LLM이 어떤 분야에 특화되게끔 만드는데 용이하다. 구성은 간단해보이지만, 몇 가지 기술적인 부분들이 접목된다. 1. 데이터를 어떻게 표현할까?2. 데이터를 어떻게 저장할까?3. 어떻게 평가할 것인가? 요즘 이 과정들을 공부하고 있으니 하나씩 알아보자 1. Embedding Model세상에는 수많은 언어들이 있고, ..
- Total
- Today
- Yesterday
- EKS
- AWS
- lambda
- 후쿠오카
- Log
- S3
- rag
- 스프링부트
- 람다
- terraform
- GIT
- OpenAI
- ChatGPT
- docker
- 오블완
- Redis
- 인프런
- JWT
- CloudFront
- cache
- ecs
- serverless
- 티스토리챌린지
- elasticsearch
- Kotlin
- AWS EC2
- CORS
- springboot
- Spring
- java
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |

