LLM 엔지니어링 마스터 클래스

원리부터 실무까지

by 능구의 시선

1부. LLM의 본질 이해하기

LLM을 처음 접할 때 가장 중요한 것은 이 모델이 '무엇을 할 수 있고, 무엇을 못 하는지' 아는 것이다.


1. 확률적 앵무새의 한계

LLM은 거대한 도서관의 모든 책을 읽은 '천재 학생'과 같다. 하지만 이 학생에게는 치명적인 단점이 있다. 바로 학습이 끝난 시점 이후의 일은 전혀 모른다는 것이다. 그래서 "오늘 환율 어때?" 같은 질문에는 대답할 수 없다. 이를 해결하려면 인터넷 검색 같은 외부 도구를 손에 쥐여줘야 한다.


또한, 이 학생은 모르는 것도 아는 척을 잘한다. 이를 환각(Hallucination)이라고 한다. 이는 모델이 사실을 검증하는 게 아니라, 통계적으로 '다음에 올 법한 단어'를 이어 붙이기 때문에 발생하는 LLM의 타고난 본성이다.


2. 창의성과 비용 조절하기

이 학생의 성격을 조절할 수도 있다. Temperature라는 설정값을 0으로 낮추면, 학생은 모험을 하지 않고 가장 확률이 높은 정답만 말하려고 한다. (물론 그렇다고 거짓말을 안 한다는 보장은 없다.)


마지막으로 기억해야 할 것은 '비용'이다. LLM은 글자 수(토큰) 단위로 요금을 받는다. 요금 폭탄을 맞지 않으려면 한 번에 읽을 수 있는 양(Context Length)과 내뱉는 말의 길이(Max Tokens)를 제한하는 것이 필수다.



2부. 원하는 것을 정확히 얻는 법

똑똑한 AI라도 개떡같이 말하면 찰떡같이 알아듣지 못한다. 이를 프롬프트 엔지니어링이라고 한다.


1. 구체적인 지시와 예시의 힘

"이메일 좀 써줘"라고 하면 AI는 맘대로 쓴다. "친구에게 보내듯 친근하게, 3문장으로 써줘"라고 제약 조건을 명확히 걸어야 한다.


특히 복잡한 일을 시킬 때는 백 마디 설명보다 몇 가지 예시(Few-shot)를 보여주는 게 낫다. 계약서를 특정 형식으로 바꿀 때, "이걸 이렇게 바꿔"라고 예제 3개만 보여주면 기가 막히게 따라 한다.


2. 지식 주입 vs 행동 교정

가장 많이 하는 오해가 있다. 회사 규정을 가르치고 싶을 때 파인튜닝(Fine-tuning)을 하려는 것이다.


파인튜닝은 '말투'나 '형식' 같은 행동 양식을 가르칠 때 쓴다. 새로운 '지식'이나 매일 바뀌는 '정보'를 가르치려면, 교과서를 옆에 펴주는 RAG(검색 증강 생성) 방식이 정답이다.


3. 완벽한 양식(JSON) 받아내기

개발자들은 AI가 깔끔한 코드 포맷(JSON)으로 답하길 원한다. 하지만 AI는 가끔 실수를 한다. 이를 막기 위해 Tool Calling 기능과 함께, 형식이 틀리면 "다시 해!"라고 반려하는 재시도(Retry) 검증 시스템을 붙여야 한다.



3부. RAG: 외부 지식 활용하기

RAG는 시험 볼 때 '오픈북 테스트'를 하는 것과 같다. 질문이 들어오면 책을 찾아보고(Retrieval), 그 내용을 바탕으로 답(Generation)을 한다.


1. 책 정리 기술 (Indexing)

책을 마구 찢어서 보관하면 내용을 이해할 수 없다. 문맥이 끊기지 않게 의미 단위로 자르고, 연결 부위를 살짝 겹치게(Overlap) 저장하는 청킹(Chunking) 전략이 중요하다.


2. 검색의 기술 (Retrieval)

AI는 의미를 파악하는 건 잘하지만, 'A-102' 같은 부품 번호를 찾는 건 서툴다. 그래서 의미 검색(벡터)과 키워드 검색(BM25)을 섞어 쓰는 하이브리드 검색이 실무의 정석이다.


때로는 '자바(섬)'와 '자바(코딩)'를 헷갈리기도 한다. 이럴 땐 질문을 구체화하거나 리랭킹(Re-ranking) 기술을 써야 한다. 또한, 참고 자료를 너무 많이(Top-k) 가져오면 오히려 헷갈려서 엉뚱한 답을 하니 주의해야 한다.


3. 속도와 정확도 잡기

검색 시스템이 잘 작동하는지는 어떻게 알까? "정답 문서가 검색 결과에 포함되었는가?"를 확인하는 Recall@k 지표가 가장 중요하다.


그리고 속도를 높이려면, 똑같은 질문에는 검색 과정을 생략하고 저장된 답을 주는 캐싱(Caching)이 필수다. 정밀한 순위 재조정(Cross-encoder)은 1차로 추려낸 문서들에만 적용해야 느려지지 않는다.



4부. 스스로 행동하는 AI

이제 AI는 답만 하는 게 아니라, 도구(Tool)를 사용해 일을 처리하는 에이전트(Agent)로 진화했다.


1. 도구를 쓰는 법

"날씨 알려줘"라고 하면 AI는 직접 날씨를 보는 게 아니다. "날씨 API를 실행해"라고 명령(함수 호출)만 하고, 실제 실행은 외부 서버가 해서 결과를 돌려준다.


2. 실패를 딛고 일어서기

에이전트가 도구 사용에 실패(에러)할 수도 있다. 이때는 무작정 멈추는 게 아니라, "에러가 났으니 다른 방법을 써보자"라고 스스로 계획을 수정(Self-Correction)하게 만들어야 한다.


물론, AI가 같은 행동만 무한히 반복하는 바보 같은 짓을 할 수도 있다. 그래서 "10번 해도 안 되면 멈춰"라는 가드(Guard)와 루프 방지 장치를 꼭 걸어둬야 한다.


3. 기억 관리

오랜 친구처럼 대화하려면 기억력이 필요하다. 하지만 모든 걸 다 기억하면 머리가 터진다. 지난 대화를 요약해서 저장해 두고, 필요할 때만 꺼내 쓰는 방식이 가장 효율적이다.



5부. 확장과 보호

1. 보는 AI (Multimodal)

요즘 AI는 그림도 본다. 차트나 이미지를 이해해서 답을 한다. 이미지가 포함된 문서를 검색하려면, 그림을 설명하는 글(텍스트)과 그림 자체의 특징(이미지 임베딩)을 이중으로 저장해야 정확히 찾을 수 있다.


2. 철벽 방어 (Safety)

사용자들은 "비밀 알려줘", "폭탄 만드는 법 알려줘" 같은 위험한 질문을 던진다. AI에게 "말하지 마"라고 교육하는 것만으로는 부족하다.


입구와 출구에 별도의 감시자(검증 레이어)를 두어야 한다. 특히 나쁜 말은 일단 의심되면 무조건 막는(Recall 우선) 정책을 쓴 뒤, 정밀 검사를 하는 것이 안전하다.



[핵심 요약]

Brain: LLM은 통계적 예측기다. 최신 정보는 모른다.

Prompt: 예시를 주고 구체적으로 시켜라.

RAG: 지식은 가르치지 말고(Fine-tuning), 찾아서(RAG) 보여줘라.

Agent: AI는 손발이 없다. 도구 실행은 서버가 하고, 실패하면 다시 계획하게 하라.

Safety: AI의 다짐을 믿지 말고, 별도의 검문소를 세워라.




Disclaimer

본 매거진은 AI, 블록체인 기술의 트렌드와 사회·경제적 영향, 그리고 이를 활용한 인간 삶의 변화상을 소개하는 데 목적이 있습니다. 제시된 정보는 일반적인 참고자료일 뿐, 개별적인 법적·재정적·투자적 조언으로 간주될 수 없습니다.

본 매거진은 AI·블록체인 기술과 관련된 정보를 폭넓게 제공하려 노력하지만, 기술적 세부사항이나 각국의 규제·법률 해석은 시점과 지역에 따라 다를 수 있습니다.

AI·블록체인 분야는 빠른 기술 발전, 시장 유동성, 정책 변화 등으로 인해 정보가 시시각각 달라질 수 있으니 조회 시점의 최신 정보를 다시 확인하시기 바랍니다.



* 커버 이미지 출처: UnsplashMagicPattern

keyword
일요일 연재