LLM (51) 썸네일형 리스트형 KV Cache 완전 정리 — PagedAttention vs RadixAttention, SGLang이 빠른 이유 LLM이 토큰을 생성할 때마다 이전 토큰들의 중간 연산 결과를 저장해 두는 게 KV 캐시예요. 없으면 매 토큰마다 처음부터 다시 계산해야 해요.근데 이 KV 캐시를 어떻게 관리하느냐에 따라 성능이 완전히 달라져요. vLLM과 SGLang은 서로 다른 방식으로 이 문제를 풀어요.KV 캐시가 뭔가트랜스포머의 어텐션 레이어는 매 스텝마다 이전 토큰들의 Key/Value 벡터를 참조해요.1번째 토큰 생성: [토큰1] KV 계산2번째 토큰 생성: [토큰1, 토큰2] — 토큰1 KV 재계산하면 낭비!KV 캐시:1번째 토큰 생성: [토큰1] KV 계산 → 저장2번째 토큰 생성: 저장된 토큰1 KV 재사용 + 토큰2 KV만 계산→ 계산량 대폭 감소문제는 KV 캐시가 메모리를 많이 먹는다는 거예요.Llama-3.1-8B.. LLM 지식 증류(Knowledge Distillation) 완전 정리 — 큰 모델의 지식을 작은 모델에 이식하는 법 GPT-4급 성능을 원하지만 H100 서버 비용은 감당 못해요. 이 모순을 해결하는 게 지식 증류예요."큰 모델(선생)이 배운 걸 작은 모델(학생)한테 가르친다."DeepSeek-R1-Distill-Llama-8B가 이 방식으로 만들어졌어요. DeepSeek R1(671B)의 추론 능력을 8B 모델에 이식한 거예요.핵심 개념 — 소프트 레이블이 왜 강력한가일반 학습은 정답만 알려줘요.하드 레이블: "답은 A야" (0 또는 1)소프트 레이블: "A가 70%, B가 20%, C가 10%"→ A가 맞지만 B와도 가까움을 알 수 있음→ 클래스 간 관계 정보가 담겨 있음큰 모델의 소프트 레이블(로짓 분포)에는 단순 정답보다 훨씬 풍부한 정보가 있어요. 학생 모델은 이걸 배워서 실제보다 훨씬 강해져요.증류의 3가지.. LoRA / QLoRA 완전 가이드 — LLM 파인튜닝을 저렴하게 하는 법 70B 모델을 처음부터 파인튜닝하면 H100 4~8개, 수십만 달러가 필요해요.LoRA/QLoRA를 쓰면 RTX 4090 한 장으로, 몇 시간 안에, $10 정도 비용으로 동일한 작업이 가능해요.왜 풀 파인튜닝 대신 LoRA인가LLM을 풀 파인튜닝하면 수십억 개의 파라미터를 전부 업데이트해요. 메모리와 연산이 엄청나게 필요하죠.LoRA의 핵심 아이디어는 이래요."모델을 업데이트할 때 변화량 자체가 저랭크(low-rank)다."즉, 수십억 개 파라미터를 다 바꾸는 게 아니라 변화량을 표현하는 작은 행렬 2개만 학습해요.풀 파인튜닝:W (d×d 행렬 전체) 업데이트 → 수백만 GBLoRA:W' = W + BAA: (r×d), B: (d×r) — r은 보통 8~64→ 학습 파라미터가 0.1~1%로 줄어듦기존 .. LLM 양자화 완전 정리 — FP8, AWQ, GPTQ, GGUF 차이와 선택법 70B 파라미터 모델을 FP16으로 그냥 올리면 GPU 메모리가 140GB 필요해요. H100 두 개가 있어야 겨우 올라가요.양자화(Quantization)는 이 문제를 해결해요.FP16 (기본): 70B 모델 = 140GB VRAM → H100 2개 필요INT8: 70B 모델 = 70GB VRAM → H100 1개로 가능INT4 (4비트): 70B 모델 = 35GB VRAM → A100 1개로 가능근데 양자화 방식이 너무 많아요. FP8, AWQ, GPTQ, GGUF, BitsAndBytes, MXFP4... 뭐가 뭔지 헷갈려요.이번 글에서 각 방식이 어떻게 다르고 언제 써야 하는지 완전 정리해 드릴게요.양자화란 무엇인가LLM의 가중치는 수천억 개의 숫자예요. 기본적.. SGLang PD 분리 배포 완전 가이드 — Prefill/Decode 분리로 처리량 5배 올리기 LLM 추론에는 두 단계가 있어요.Prefill (프리필):- 입력 프롬프트 전체를 처리- 연산 집약적 (Compute-bound)- KV 캐시 생성- 보통 수백~수천 토큰을 한 번에 처리Decode (디코드):- 토큰을 하나씩 생성- 메모리 집약적 (Memory-bound)- KV 캐시를 매 스텝마다 읽음- 요청당 수십~수백 번 반복전통적인 통합 엔진에서는 이 두 단계가 같은 GPU에서 경쟁해요. 그래서 두 가지 심각한 문제가 생겨요.문제 1: Prefill 방해(Prefill Interruption)기존 통합 엔진:[디코딩 중...토큰 생성 중...] ↑ 새 요청 들어옴! ↓[프리필 처리... (디코딩 멈춤)][디코딩 재개...][프리필 처리... (또 멈춤)].. SGLang launch_server 파라미터 완전 정리 python -m sglang.launch_server --help이 명령어 치면 100개 넘는 파라미터가 쏟아져요. 뭐가 뭔지 몰라서 그냥 기본값으로 쓰는 경우가 많은데, 파라미터를 제대로 알면 성능이 2~3배 차이 나요.전체 파라미터를 카테고리별로 완전 정리해 드릴게요.1. 모델 및 토크나이저--model-path (필수)모델 가중치 경로예요. 로컬 폴더 또는 HuggingFace repo ID를 받아요.# HuggingFace에서 다운로드python -m sglang.launch_server \ --model-path meta-llama/Llama-3.1-8B-Instruct# 로컬 폴더python -m sglang.launch_server \ --model-path /data/models/ll.. SGLang 서빙에 대한 모든 것 — 설치부터 프로덕션까지 완전 가이드 2026년 현재 오픈소스 LLM 추론 엔진 중 실질적인 업계 표준은 SGLang이에요.xAI(Grok), NVIDIA, AMD, LinkedIn, Cursor, Oracle Cloud, Google Cloud, AWS가 프로덕션에 사용 중이고, 전 세계 40만 개 이상의 GPU에서 매일 수조 개의 토큰을 처리하고 있어요.근데 왜 vLLM을 놔두고 SGLang인가? 핵심은 하나예요."vLLM은 요청을 독립된 단위로 처리한다. SGLang은 요청을 프로그램으로 처리한다."이 철학 하나가 성능을 완전히 갈라요.SGLang이 빠른 이유 — 핵심 원리 3가지1. RadixAttention — KV 캐시 자동 재사용기존 추론 엔진의 문제를 먼저 이해해야 해요.일반 추론 엔진 (vLLM 포함):요청 A: [시스템 프.. 스마트폰에서 AI를 돌리는 법 — 온디바이스 LLM 개발 입문 가이드 앱에 AI 기능을 붙이려면 항상 클라우드 API를 써야 할까요?아니에요. 2026년 지금은 스마트폰 자체에서 LLM을 돌릴 수 있어요. 인터넷 없이, API 비용 없이, 사용자 데이터가 서버로 나가지 않게요.이번 글에서는 온디바이스 AI가 뭔지, 왜 필요한지, 그리고 Android·iOS·Flutter로 실제로 어떻게 구현하는지 코드와 함께 정리해 드릴게요.왜 온디바이스 AI인가클라우드 AI의 문제점이 네 가지예요.레이턴시 — 클라우드 API를 호출하면 네트워크 왕복 시간이 수백 밀리초 추가돼요. 실시간 느낌이 깨져요.프라이버시 — 사용자 데이터가 서버로 전송돼요. 의료, 금융, 개인 메모 같은 민감한 데이터를 다루는 앱은 이게 치명적이에요.비용 — API 호출마다 돈이 나가요. 사용자가 많아질수록 서버.. 이전 1 2 3 4 5 6 7 다음