← posts/b.log()

blog92@web:~$ cat posts/ai-03-how-models-are-made.md

AI5 min read

AI 완전 정복 3편 — 모델은 어떻게 만들어지나

오늘날의 코딩 모델은 "인터넷 전체를 읽힌 뒤(사전학습), 대화하는 법을 가르치고(파인튜닝), 테스트를 통과하는 코드를 쓸 때마다 보상한(강화학습)" 결과물이다. 각 단계를 알면 모델의 강점과 버릇이 설명된다.

한 줄 요약: 오늘날의 코딩 모델은 "인터넷 전체를 읽힌 뒤(사전학습), 대화하는 법을 가르치고(파인튜닝), 테스트를 통과하는 코드를 쓸 때마다 보상한(강화학습)" 결과물이다. 각 단계를 알면 모델의 강점과 버릇이 설명된다.

1단계: 사전학습(Pre-training) — 세상을 압축하기

수조 토큰 규모의 텍스트(웹 문서, 책, 논문, 공개 코드)로 "다음 토큰 맞히기"를 학습합니다. 이 단계가 끝난 모델을 베이스 모델(base model)이라고 부릅니다.

베이스 모델은 지식은 많지만 "대답"을 하지 않습니다. "파이썬으로 파일 읽는 법은?"이라고 입력하면 답 대신 "파이썬으로 파일 쓰는 법은?" 같은 비슷한 질문 목록을 이어서 쓸 수도 있습니다. 인터넷에는 그런 FAQ 페이지가 많으니까요.

코딩 관점의 포인트: 학습 데이터에 많이 나온 것을 잘한다. React, Python, SQL처럼 공개 코드가 많은 스택은 잘하고, 사내 프레임워크나 더 드문 언어, 최신 메이저 버전에는 약합니다. 폐쇄망 환경의 사내 라이브러리를 다룰 때 문서를 직접 넣어 줘야 하는 이유입니다.

2단계: 지시 튜닝(SFT) — 대화하는 법 가르치기

사람이 작성한 "질문 → 좋은 답변" 예시로 추가 학습시킵니다(Supervised Fine-Tuning). 이제 모델은 질문에 답하고, 지시를 따르고, 코드 블록을 마크다운으로 감싸는 등 "도우미다운" 형식을 익힙니다.

이 단계에서 시스템 프롬프트와 대화 형식(사용자/어시스턴트 턴)도 배웁니다. API에서 system, messages 필드를 따로 두는 것은 모델이 이 형식으로 훈련되었기 때문입니다.

3단계: 강화학습(RL) — 더 나은 답을 보상하기

예시를 보여 주는 것만으로는 한계가 있어서, 모델이 쓴 여러 답을 평가하고 좋은 쪽을 강화합니다. 평가 방식에 따라 세 가지로 나뉩니다.

방식누가 채점하나효과
RLHF사람이 두 답 중 더 나은 쪽을 고름도움이 되고 자연스러운 답변
RLAIF / Constitutional AI원칙(헌법) 문서를 바탕으로 AI가 채점대규모로 안전·정직함 학습 (Anthropic이 제안)
검증 가능한 보상 (RLVR)테스트 통과 여부, 수학 정답 일치코딩·수학 능력의 비약적 향상

마지막 항목이 최근 코딩 모델이 급격히 좋아진 핵심 이유입니다. 코드는 "테스트를 돌려 보면" 정답을 자동으로 판별할 수 있어, 사람의 채점 없이 엄청난 양의 연습이 가능합니다. 실제 저장소 환경에서 파일을 읽고, 명령을 실행하고, 테스트를 통과시키는 연습까지 하기 때문에 에이전트형 코딩(8편)이 가능해졌습니다.

반대로 주의할 점도 있습니다. 보상이 "테스트 통과"이면, 모델이 때때로 테스트를 고치거나 특수 케이스를 하드코딩해서 통과시키려는 경향(reward hacking)을 보일 수 있습니다. AI가 만든 diff에서 테스트 파일 변경을 특히 꼼꼼히 봐야 하는 이유입니다.

추론 모델과 "생각하는 시간"

최근 모델들은 답하기 전에 긴 생각 과정(thinking, reasoning)을 토큰으로 생성합니다. 1편에서 본 것처럼 모델은 토큰을 만들면서 "생각"하므로, 중간 단계를 글로 쓰게 하면 복잡한 문제의 정답률이 올라갑니다. 강화학습으로 "어떻게 생각해야 정답에 이르는지"까지 훈련된 것이 추론 모델입니다.

  • 도움이 되는 작업: 알고리즘 설계, 여러 파일에 걸친 버그 추적, 아키텍처 결정.
  • 낭비인 작업: 변수 이름 바꾸기, 정규식 하나, 포맷 변환.
  • 비용: 생각 토큰도 출력 토큰으로 과금됩니다(4편). 쉬운 일에 길게 생각하게 하면 돈과 시간만 듭니다.

모델 크기와 등급: 무엇을 언제 쓸까

대부분의 회사는 크기별로 모델 라인을 둡니다. Anthropic의 경우 2026년 10월 기준 Haiku(빠르고 저렴) → Sonnet(균형) → Opus(강력) 순이고, 그 위에 가장 강력한 Fable 등급이 있습니다. 같은 급의 Mythos는 검증된 조직에만 제한 공개됩니다. 일반적인 선택 기준은 이렇습니다.

작업추천 등급이유
대량 분류, 로그 요약, 간단한 변환작은 모델빠르고 단가가 낮아 반복 호출에 유리
일상적인 기능 구현, 리팩터링중간 모델대부분의 코딩에 충분한 성능 대비 비용
어려운 디버깅, 설계, 장시간 에이전트 작업큰 모델실수 하나의 비용이 토큰 비용보다 크다

할루시네이션은 왜 없어지지 않나

학습 과정 전체가 "그럴듯한 다음 토큰"과 "사람이 좋아하는 답"을 향해 최적화되기 때문입니다. 모른다고 말하는 것도 학습시키지만, 모델은 자신이 무엇을 모르는지 완벽하게 알지 못합니다. 실무적인 대응은 세 가지입니다.

  1. 근거 자료(문서, 코드, 타입 정의)를 입력에 넣는다.
  2. 모르면 모른다고 말하라고 명시적으로 허용한다.
  3. 컴파일러, 타입 체커, 테스트처럼 기계적으로 검증하는 장치를 둔다.

코딩 실습 (20분)

같은 버그 리포트 하나를 작은 모델과 큰 모델에 각각 주고, (1) 원인을 맞혔는지 (2) 응답 시간 (3) 수정안 품질을 비교하세요. 채팅 앱에서 추론(생각) 기능을 켜고 끈 버전도 비교하면 더 좋습니다. API에서는 현행 모델 상당수가 생각을 끌 수 없으므로 effort 수준을 바꿔 비교합니다. 결과를 "이 정도 난이도면 이 모델"이라는 나만의 기준표로 정리해 두면, 10편의 비용 최적화에서 그대로 쓸 수 있습니다.

정리

  • 사전학습 = 지식, SFT = 대화 형식, RL = 더 나은 행동.
  • 코딩은 테스트로 자동 채점되므로 RL 효과가 크다. 단, 테스트를 속이는 경향도 있다.
  • 추론 모델은 어려운 문제에 쓰고, 모델 등급은 난이도에 맞춘다.

다음 편: 지금까지 계속 나온 "토큰"을 본격적으로 해부합니다. 한국어는 왜 더 비싼지, 요금은 어떻게 매겨지는지 봅니다.

COMMENTS (…)

댓글을 불러오는 중이에요.

NEW COMMENT0 / 1000
⌘↵ 전송

blog92@web:~$ cd ..