[AI/LLM] LLM의 텍스트 생성 과정 (Encoding, Decoding, 그리고 속도의 한계)
·
AI Study/[LLM]
1. 들어가며우리가 챗봇에게 "오늘 날씨 어때?"라고 입력하면 AI는 바로 알아듣는 것 같지만, 사실 내부에서는 엄청난 번역 작업이 일어납니다. AI는 '날씨'라는 단어의 의미를 이해하는 것이 아니라, 수많은 숫자 계산 끝에 '맑음'이라는 숫자를 뱉어내는 확률 계산기이기 때문입니다.LLM(Large Language Model)이 텍스트를 생성하는 과정을 이해하려면 먼저 **Encoding(입력)**과 Decoding(출력), 그리고 그 사이에서 발생하는 구조적 병목 현상을 알아야 합니다. 오늘은 Speculative Decoding이라는 고급 기술을 이해하기 위한 필수 기초 체력을 길러보겠습니다.2. Encoding: 인간의 언어를 기계의 언어(숫자)로컴퓨터는 0과 1밖에 모릅니다. 그래서 우리는 텍스트..
[AI/RAG] RAG를 위한 Embedding Model 선정, Vector DB 구축
·
AI Study/[LLM]
1. 들어가며: 컴퓨터가 '의미'를 이해하는 방법2편에서 우리는 데이터를 잘게 쪼갰습니다(Chunking). 이제 이 텍스트 조각들을 컴퓨터가 이해할 수 있는 **'숫자(벡터)'**로 바꿔야 합니다.사람: "배가 고프다" $\leftrightarrow$ "맛집을 찾는다" (의미 연결)컴퓨터 (임베딩 전): "배가 고프다" $\neq$ "맛집을 찾는다" (글자 다름)컴퓨터 (임베딩 후): [0.1, 0.5, ...] $\approx$ [0.12, 0.48, ...] (유사함!)임베딩은 텍스트를 N차원 공간의 좌표로 변환하여, 의미적 거리를 계산할 수 있게 해주는 마법입니다. 2. 임베딩 모델 선정 (MTEB 리더보드 활용법)"아무 모델이나 쓰면 안 되나요?" $\rightarrow$ 안 됩니다.임베딩 모델..
[AI/NLP] Embedding 실습 및 Vector DB 맛보기 (OpenAI, ChromaDB)
·
AI Study/[LLM]
1. 들어가며1편에서 단어를 좌표로 바꾸는 개념을 배웠고, 2편에서 BERT와 최신 모델들을 알아봤습니다.이제 남은 건 "그래서 이거 어떻게 코드로 짜는데?"입니다.백문이 불여일견. 실제로 텍스트를 넣었을 때 어떤 숫자들이 튀어나오는지, 그리고 그 숫자들이 어떻게 "배고파"라는 질문에 "김치찌개"를 찾아내는지, Python 코드로 직접 확인해 보겠습니다.2. 환경 세팅: 요즘 대세 uv로 3초 만에 준비하기현업 Python 프로젝트 관리의 신흥 강자, **uv**를 사용해 환경을 구축합니다. (pip보다 압도적으로 빠르고, 가상환경 관리도 알아서 해줍니다.) 2-1. 프로젝트 생성 및 라이브러리 설치터미널을 열고 다음 명령어들을 입력하세요.# 1. 프로젝트 폴더 생성 및 초기화uv init embeddi..
[AI/NLP] 최신 임베딩 모델과 원리 (BERT, OpenAI, MTEB, 거리 계산)
·
AI Study/[LLM]
1. 들어가며: "배(Ship)와 배(Pear)를 구분하라"1편의 Word2Vec은 단어를 벡터로 바꾸는 혁명을 일으켰지만, 한계가 명확했습니다."나는 배를 탔다"와 "나는 배를 먹었다"에서, Word2Vec은 두 '배'를 똑같은 벡터 [0.1, 0.5]로 변환합니다. 문맥을 전혀 고려하지 못하기 때문이죠.하지만 검색(RAG)이나 챗봇에서 이런 일이 벌어지면 큰일 납니다. "맛있는 과일"을 검색했는데 "조선소 건조 선박" 문서가 튀어나올 테니까요.이 문제를 해결하기 위해 등장한 것이 바로 Transformer 기반의 **문맥적 임베딩(Contextualized Embedding)**입니다.2. 문맥을 이해하는 혁명: BERT와 SBERT2.1 BERT (Bidirectional Encoder Repres..
[AI/NLP] 임베딩(Embedding)이란? (정의, 발전 과정, 최신 트랜드)
·
AI Study/[LLM]
1. 들어가며: RAG를 하려면 '임베딩'부터 알아야 한다요즘 AI 업계의 가장 뜨거운 감자는 단연 RAG (검색 증강 생성)입니다. LLM에게 우리 회사의 데이터를 참고해서 답변하게 만드는 기술이죠.그런데 RAG를 공부하다 보면 첫 단계부터 막힙니다."데이터를 벡터화(Vectorization)해서 임베딩(Embedding) 하세요."도대체 임베딩이 뭘까요? 왜 텍스트를 숫자로 바꿔야 할까요?임베딩은 AI가 인간의 언어를 이해하고, 검색하고, 추천하는 모든 기술의 뿌리이자 핵심 엔진입니다. 이 개념을 확실히 잡지 못하면, 아무리 비싼 LLM을 써도 엉뚱한 문서를 찾아오는 '멍청한 검색'만 하게 됩니다.오늘부터 3편에 걸쳐, 이 '임베딩'의 모든 것을 완벽하게 파헤쳐 보겠습니다. 1편은 그 시작점인 임베딩..