Skip to main content
Summary

작은 모델에서 큰 모델로 넘어가는 순간

앞에서 우리는 작은 GPT를 직접 만들었다. 문자 단위 데이터셋을 준비하고, 다음 글자를 예측하도록 모델을 학습시켰으며, 학습이 조금씩 진행될수록 생성 결과가 그럴듯해지는 모습도 확인했다. 물론 결과는 완벽하지 않았다. 문장이 중간에 무너지고, 긴 흐름을 유지하지 못하고, 사실을 말한다기보다는 데이터에서 본 듯한 모양을 흉내 내는 수준에 가까웠다.

그런데 여기서 중요한 질문이 생긴다.

우리가 만든 작은 모델과 실제 LLM 사이에는 무엇이 다를까?

가장 먼저 떠오르는 답은 크기다. 실제 LLM은 훨씬 많은 파라미터를 가지고 있고, 훨씬 긴 문맥을 처리하며, 훨씬 많은 데이터를 사용한다. 하지만 더 본질적인 차이는 학습의 규모와 범위에 있다. 우리가 작은 텍스트 파일을 읽고 다음 문자를 예측하게 했다면, 현대 LLM은 웹 문서, 책, 코드, 논문, 대화문, 설명문 등 방대한 텍스트를 읽으며 다음 토큰을 예측한다.

이 거대한 첫 학습 단계를 사전학습, 영어로는 pretraining이라고 부른다.

사전학습은 LLM의 뼈대와 근육이 만들어지는 시기다. 이후에 지도 미세조정, Instruction Tuning, RLHF 같은 단계가 이어질 수 있지만, 모델이 언어를 다루는 기본 감각, 세상에 대한 넓은 배경지식, 문장 구조를 이어 가는 능력의 대부분은 사전학습에서 형성된다. 그래서 LLM을 이해하려면 사전학습을 반드시 이해해야 한다.

사전학습의 의미

사전학습은 무엇을 먼저 배우는가

사전학습이라는 말만 들으면 마치 본격적인 학습 전에 가볍게 예습하는 과정처럼 느껴질 수 있다. 하지만 LLM에서 사전학습은 결코 가벼운 준비 운동이 아니다. 오히려 전체 학습 과정에서 가장 크고 비싼 단계다.

사전학습의 목표는 단순하다.

주어진 토큰들 다음에 올 토큰을 예측한다.

우리가 계속 다뤄 온 그 목표 그대로다. 예를 들어 모델이 다음과 같은 문맥을 받았다고 해 보자.

인공지능은 인간의 언어를

모델은 다음 토큰으로 무엇이 올지 예측한다. 이해, 처리, 분석, 생성 같은 후보가 있을 수 있다. 학습 데이터의 실제 다음 토큰이 처리였다면, 모델은 처리의 확률을 높이고 다른 후보의 확률을 조정하는 방향으로 파라미터를 업데이트한다.

이 과정은 매우 단순해 보인다. 하지만 이 단순한 과제를 엄청난 양의 텍스트에 대해 반복하면 놀라운 일이 일어난다. 모델은 다음 토큰을 더 잘 맞히기 위해 문법을 익혀야 한다. 문장 앞뒤의 의미를 연결해야 한다. 대명사가 무엇을 가리키는지 알아야 한다. 코드에서는 괄호가 어디서 닫히는지 알아야 하고, 논문에서는 용어가 어떤 맥락에서 쓰이는지 알아야 한다.

다시 말해, 다음 토큰 예측은 겉으로는 작은 퍼즐처럼 보이지만, 그 퍼즐을 잘 풀기 위해 필요한 능력은 결코 작지 않다.

라벨이 없어도 학습할 수 있는 이유

전통적인 머신러닝을 떠올려 보자. 고양이와 강아지를 구분하는 모델을 만들려면 이미지마다 고양이, 강아지라는 라벨이 필요하다. 스팸 메일 분류기를 만들려면 메일마다 스팸, 정상이라는 정답이 필요하다. 사람이 데이터를 보고 정답을 붙여야 하므로 비용이 많이 든다.

LLM의 사전학습은 조금 다르다. 대규모 텍스트에는 사람이 별도로 정답을 붙이지 않아도 된다. 문장 자체가 이미 학습 문제와 정답을 동시에 가지고 있기 때문이다.

오늘 날씨가 정말 좋다라는 문장이 있다고 해 보자. 이 문장을 모델에게 다음과 같은 문제로 바꿀 수 있다.

모델에게 오늘을 보여 주고 다음 토큰 날씨가를 맞히게 한다. 그다음 오늘 날씨가를 보여 주고 정말을 맞히게 한다. 다시 오늘 날씨가 정말을 보여 주고 좋다를 맞히게 한다. 텍스트만 있으면 입력과 정답을 자동으로 만들 수 있다.

이런 방식을 자기지도학습이라고 부른다. 이름이 조금 낯설지만 뜻은 간단하다. 사람이 정답 라벨을 하나하나 붙이지 않아도, 데이터 자체에서 정답 신호를 만들어 학습한다는 의미다.

자기지도학습은 LLM이 폭발적으로 발전할 수 있었던 중요한 이유 중 하나다. 인터넷과 디지털 문서에는 이미 엄청난 양의 텍스트가 존재한다. 이 텍스트를 적절히 수집하고 정리하면, 모델은 그 안에서 다음 토큰 예측 문제를 거의 무한히 만들 수 있다.

여기서 중요한 점은 LLM이 처음부터 "이 문장은 요약 문제다", "이 문장은 번역 문제다", "이 문장은 코딩 문제다"처럼 명시적인 과제 라벨을 받는 것이 아니라는 점이다. 사전학습 단계에서 모델이 받는 기본 신호는 대부분 다음 토큰이 맞았는지 틀렸는지다. 그런데 그 과정에서 모델은 다양한 언어 활동의 바탕이 되는 패턴을 넓게 익힌다.

대규모 말뭉치는 모델의 세계다

LLM에게 학습 데이터는 일종의 세계다. 사람이 책, 대화, 경험을 통해 세상을 배워 가듯이, 모델은 학습 말뭉치 속 텍스트 패턴을 통해 언어와 지식을 배운다. 물론 모델이 사람처럼 경험을 한다는 뜻은 아니다. 모델은 냄새를 맡거나, 손으로 만지거나, 실제로 여행을 다녀오지 않는다. 대신 텍스트 안에 기록된 수많은 설명, 주장, 코드, 대화, 문체를 통계적으로 압축한다.

사전학습에 사용되는 말뭉치는 보통 여러 종류의 텍스트를 포함한다.

  • 웹 문서와 블로그 글처럼 일상적인 설명과 의견이 담긴 텍스트

  • 책과 기사처럼 비교적 긴 호흡과 정돈된 문장으로 이루어진 텍스트

  • 코드 저장소와 기술 문서처럼 구조와 규칙이 뚜렷한 텍스트

  • 논문, 위키, 매뉴얼처럼 개념과 사실 설명이 많이 포함된 텍스트

이 다양한 데이터는 모델 능력에 직접적인 영향을 준다. 코드가 많이 포함된 데이터로 학습한 모델은 프로그래밍 문맥에 더 익숙해질 수 있다. 수학과 논리 설명이 풍부한 데이터를 많이 본 모델은 단계적 풀이 형식에 더 능숙해질 가능성이 있다. 반대로 특정 언어의 데이터가 적으면 그 언어에 대한 표현력과 지식이 부족해질 수 있다.

우리가 만든 Mini GPT를 떠올려 보자. 만약 셰익스피어풍 문장만 넣고 학습시키면 모델은 그와 비슷한 문체를 흉내 낸다. 한국어 소설만 넣으면 한국어 소설 같은 리듬을 따라 한다. 파이썬 코드만 넣으면 들여쓰기와 괄호, 함수 이름이 자주 등장하는 결과를 생성한다. 작은 모델에서도 데이터의 성격이 생성 결과를 바꾸는데, 대규모 LLM에서는 이 영향이 훨씬 더 크고 복잡하게 나타난다.

결국 모델이 무엇을 잘하느냐는 모델 구조만으로 결정되지 않는다. 어떤 데이터를 얼마나, 어떤 비율로, 어떤 품질로 학습했는지가 함께 결정한다.

데이터가 많기만 하면 충분할까

LLM 이야기를 하다 보면 "데이터를 많이 넣으면 똑똑해진다"는 말을 자주 듣는다. 어느 정도는 맞다. 많은 데이터는 모델에게 더 많은 표현, 더 다양한 주제, 더 폭넓은 패턴을 제공한다. 하지만 데이터는 양만큼이나 품질이 중요하다.

상상해 보자. 어떤 학생에게 시험 공부를 시키는데, 교재가 수천 권 있다. 그런데 그중 상당수가 중복된 페이지이고, 일부는 오타투성이이며, 어떤 책은 잘못된 정보를 담고 있고, 또 어떤 자료는 광고 문구만 반복한다. 책의 양은 많지만, 공부가 잘될 가능성은 높지 않다.

LLM도 비슷하다. 대규모 텍스트를 그대로 긁어 와서 학습시키면 여러 문제가 생긴다. 중복 문서가 많으면 모델이 특정 표현을 과하게 외울 수 있다. 품질이 낮은 문서가 많으면 문장력이나 추론 패턴이 나빠질 수 있다. 개인정보나 민감한 내용이 포함되면 안전과 법적 문제가 생길 수 있다. 잘못된 정보가 반복되면 모델이 그 패턴을 그럴듯하게 재생산할 위험도 커진다.

그래서 사전학습 데이터 준비 과정에서는 보통 여러 정리 작업이 필요하다.

  • 같은 문서나 거의 같은 문서를 찾아 제거하는 중복 제거

  • 깨진 문자, 무의미한 반복, 스팸성 문서를 걸러 내는 품질 필터링

  • 개인정보, 유해 콘텐츠, 라이선스 문제가 있는 데이터를 줄이는 안전 점검

  • 언어, 주제, 문서 유형의 비율을 조정하는 데이터 구성 관리

이 작업은 화려해 보이지 않는다. 모델 구조나 새로운 알고리즘에 비해 덜 주목받을 수도 있다. 하지만 실제로는 매우 중요하다. 좋은 재료가 있어야 좋은 음식이 나오듯, 좋은 말뭉치가 있어야 좋은 언어 모델이 만들어진다.

특히 중복 제거는 생각보다 중요하다. 같은 문서가 수백 번 들어 있으면 모델은 그것을 일반적인 언어 패턴으로 착각할 수 있다. 또한 평가 데이터와 학습 데이터가 겹치면 모델이 실제로 문제를 푼 것이 아니라 이미 본 답을 재현하는 상황이 생길 수도 있다. 이런 경우 벤치마크 점수는 높아 보이지만, 모델의 진짜 일반화 능력을 제대로 측정했다고 보기 어렵다.

손실을 낮춘다는 말의 진짜 의미

학습 중에 우리는 손실값을 본다. Mini GPT 실습에서도 loss가 낮아지는지 확인했다. 처음에는 손실이 높다가, 학습이 진행될수록 점점 낮아졌다. 사전학습에서도 기본 원리는 같다. 모델은 다음 토큰을 예측하고, 실제 정답과의 차이를 손실로 계산한 뒤, 그 손실을 줄이는 방향으로 파라미터를 조금씩 바꾼다.

그렇다면 손실을 낮춘다는 것은 정확히 무엇을 의미할까?

가장 단순하게 말하면 정답 토큰에 더 높은 확률을 주게 된다는 뜻이다. 하지만 대규모 텍스트에서 이 과정을 반복하면, 손실을 낮추기 위해 모델은 다양한 규칙과 패턴을 내부 표현에 담아야 한다.

예를 들어 나는 밥을 다음에는 먹었다, 먹는다, 먹고 같은 표현이 자연스럽다. 나는 밥을 하늘은 어색하다. 이런 차이를 맞히려면 모델은 한국어의 조사, 동사 활용, 의미 연결을 어느 정도 반영해야 한다.

파이썬에서 리스트의 길이를 구하려면 다음에는 len이라는 함수가 나올 가능성이 높다. 이 예측을 잘하려면 모델은 프로그래밍 문서와 코드 패턴을 학습해야 한다.

대한민국의 수도는 다음에는 서울이 나올 가능성이 높다. 이런 예측을 반복하면 모델은 사실처럼 보이는 지식도 내부에 저장하게 된다. 다만 여기서 조심해야 한다. 모델이 지식을 데이터베이스처럼 정확한 항목으로 보관한다고 생각하면 곤란하다. LLM의 지식은 파라미터 안에 분산된 패턴으로 녹아 있다. 그래서 놀라울 정도로 정확히 답할 때도 있지만, 그럴듯한 오답을 만들기도 한다.

손실을 낮추는 과정은 결국 다음과 같은 능력으로 이어진다.

  • 문법적으로 자연스러운 문장을 만드는 능력

  • 앞뒤 문맥을 보고 의미상 어울리는 표현을 고르는 능력

  • 자주 등장한 사실, 개념, 관계를 재구성하는 능력

  • 특정 장르와 문체를 흉내 내는 능력

  • 코드, 표, 목록, 대화 같은 형식을 이어 가는 능력

이 능력들은 사람이 하나하나 규칙으로 넣어 준 것이 아니다. 다음 토큰을 맞히는 과정에서 모델이 스스로 유용한 내부 표현을 찾은 결과에 가깝다. 그래서 사전학습은 LLM의 가장 신기한 부분이면서도, 동시에 가장 오해하기 쉬운 부분이다.

모델은 외우는가, 이해하는가

사전학습을 설명하다 보면 자연스럽게 "그럼 모델은 텍스트를 외운 것인가?"라는 질문이 나온다. 답은 단순하지 않다.

일부는 외운다. 특히 자주 반복된 문장, 독특한 문구, 정형화된 코드, 유명한 인용문은 모델이 거의 그대로 생성할 가능성이 있다. 이것은 저작권, 개인정보, 보안 측면에서 중요한 문제가 될 수 있다.

하지만 LLM의 작동을 전부 암기로만 설명할 수도 없다. 모델은 학습 데이터에 없던 조합의 문장을 만들고, 새로운 질문에 대해 그럴듯한 구조의 답을 구성하며, 본 적 없는 코드 조각을 작성하기도 한다. 이는 단순한 문장 복사가 아니라 학습된 패턴을 바탕으로 새 출력을 조합하는 능력에 가깝다.

더 정확히 말하면, LLM은 텍스트 세계의 압축 모델이다. 방대한 텍스트를 파라미터라는 제한된 공간에 압축하면서, 자주 반복되는 구조와 관계를 우선적으로 담는다. 문법처럼 강하게 반복되는 규칙은 비교적 잘 배운다. 흔한 사실도 잘 배울 가능성이 높다. 반면 드문 정보, 최신 정보, 모호한 정보는 부정확하게 다룰 수 있다.

이 관점은 뒤에서 다룰 RAG를 이해하는 데도 중요하다. 모델의 파라미터 안에 모든 최신 정보와 세부 문서를 넣으려 하기보다는, 필요한 순간 외부 문서를 검색해 문맥에 넣어 주는 방식이 더 적합할 때가 많다. 사전학습은 넓은 언어 능력과 기본 지식을 제공하지만, 모든 질문에 대한 완벽한 기억 장치는 아니다.

사전학습 모델은 아직 친절한 챗봇이 아니다

여기서 한 가지 중요한 구분을 해야 한다. 사전학습을 마친 모델이 곧바로 우리가 아는 ChatGPT 같은 대화형 비서가 되는 것은 아니다.

사전학습 모델의 기본 목표는 여전히 다음 토큰 예측이다. 사용자가 "이 글을 요약해 줘"라고 입력했을 때, 사전학습 모델은 그것을 명령으로 이해하고 친절하게 요약해 주기보다는, 학습 데이터에서 그 뒤에 이어질 법한 텍스트를 생성하려고 한다. 운이 좋으면 요약을 할 수도 있지만, 항상 사용자의 의도를 따르도록 훈련된 것은 아니다.

예를 들어 사전학습 데이터에 다음과 같은 형식이 많이 있었다면 모델은 그 패턴을 이어 갈 수 있다.

질문: 인공지능이란 무엇인가? 답변:

이 경우 뒤에 답변을 생성할 가능성이 있다. 하지만 이것은 "사용자의 요청을 도와야 한다"는 행동 규칙을 명시적으로 배웠기 때문이라기보다는, 그런 텍스트 패턴을 많이 보았기 때문이다.

우리가 실제로 사용하는 대화형 LLM은 보통 사전학습 이후에 추가 학습을 거친다. 사람의 지시를 따르도록 지도 미세조정을 하고, 더 좋은 답변을 선호하도록 정렬하는 과정을 거친다. 이 부분은 다음 장들에서 자세히 살펴볼 것이다.

지금은 이렇게 이해하면 된다.

사전학습은 모델에게 언어의 넓은 바탕을 만든다. 이후의 미세조정과 정렬은 그 바탕 위에 "어떻게 대답할 것인가"라는 행동 방식을 얹는다.

비용이라는 거대한 장벽

사전학습은 말로는 간단하다. 데이터를 많이 모으고, 다음 토큰을 예측하게 하며, 손실을 낮추면 된다. 하지만 실제로 상용 수준의 LLM을 사전학습하는 일은 극도로 어렵고 비싸다.

이유는 분명하다. 모델이 커질수록 학습해야 할 파라미터가 많아진다. 데이터가 많아질수록 처리해야 할 토큰 수도 늘어난다. 긴 문맥을 다루려면 메모리 사용량이 커지고, 대규모 GPU나 전용 가속기를 오랫동안 안정적으로 운용해야 한다.

사전학습 비용에는 여러 요소가 포함된다.

  • 대규모 데이터를 수집, 저장, 정제하는 비용

  • 수많은 GPU나 가속기를 확보하고 운용하는 비용

  • 학습 중단, 하드웨어 오류, 불안정한 손실을 관리하는 엔지니어링 비용

  • 학습 결과를 평가하고 안전성을 점검하는 비용

  • 실패한 실험과 재학습에 들어가는 시간과 비용

우리가 노트북이나 작은 클라우드 인스턴스에서 Mini GPT를 학습할 때는 몇 분 또는 몇 시간의 문제일 수 있다. 하지만 대형 LLM의 사전학습은 전혀 다른 차원의 프로젝트다. 많은 조직이 이미 학습된 오픈 모델을 활용하거나, 상용 API를 사용하는 이유도 여기에 있다. 직접 거대한 모델을 처음부터 학습시키는 것은 기술적으로도, 경제적으로도 큰 장벽이 있다.

그래서 이 책의 목표도 ChatGPT급 모델을 직접 만드는 것이 아니다. 우리가 만든 Mini GPT는 상용 모델이 아니라, ChatGPT의 핵심 원리를 이해하기 위한 작은 GPT다. 원리를 이해하면 거대한 모델을 직접 학습시키지 않더라도, API를 더 잘 활용하고, RAG 구조를 더 정확히 설계하며, 모델의 한계를 더 현실적으로 판단할 수 있다.

사전학습이 만든 능력과 만들지 못하는 능력

사전학습은 LLM의 핵심 능력을 만든다. 그러나 모든 것을 해결하지는 않는다. 이 구분을 분명히 해야 LLM을 과대평가하지도, 과소평가하지도 않을 수 있다.

사전학습이 잘 만드는 것은 넓은 언어 감각이다. 모델은 다양한 문체를 따라 하고, 질문에 대한 답처럼 보이는 문장을 만들고, 코드의 형태를 이어 가고, 여러 개념 사이의 관계를 어느 정도 반영한다. 그래서 사전학습된 모델은 이미 매우 강력한 기반 모델이 된다.

하지만 사전학습만으로는 부족한 부분도 많다. 최신 정보는 학습 시점 이후에는 반영되지 않는다. 특정 회사의 내부 문서처럼 학습 데이터에 없던 정보는 알 수 없다. 사용자 지시를 항상 안전하고 유용하게 따르도록 보장하기도 어렵다. 또한 다음 토큰 예측이라는 목표만으로는 "정확히 모르면 모른다고 말하기" 같은 행동을 안정적으로 익히기 어렵다.

이 한계 때문에 이후 단계가 필요하다. 지도 미세조정은 모델이 지시와 답변의 형식을 더 잘 따르도록 돕는다. 선호 학습은 여러 답변 중 더 나은 답변을 선택하는 방향으로 모델을 조정한다. RAG는 모델이 외부 문서를 참고해 최신 정보와 사내 지식을 활용하도록 만든다. 도구 사용은 계산기, 검색, 데이터베이스, API 같은 외부 기능과 모델을 연결한다.

즉 사전학습은 끝이 아니라 출발점이다. 하지만 매우 강력한 출발점이다.

왜 다음 토큰 예측이 이렇게 멀리 가는가

처음 LLM을 배울 때 가장 이상하게 느껴지는 부분은 이것이다. "정말 다음 토큰 예측만으로 이렇게 많은 능력이 생긴다고?"

이 질문은 당연하다. 다음 토큰을 맞히는 일은 너무 단순해 보인다. 하지만 언어는 세상의 많은 구조를 담고 있다. 사람들은 텍스트로 사실을 설명하고, 이유를 따지고, 계획을 세우고, 코드를 작성하고, 감정을 표현하고, 문제를 해결한다. 따라서 방대한 텍스트에서 다음 토큰을 잘 예측하려면, 모델은 그 텍스트 안에 담긴 구조를 어느 정도 반영해야 한다.

예를 들어 추리 소설의 다음 문장을 예측하려면 등장인물, 사건, 단서의 관계를 따라가야 한다. 수학 풀이의 다음 줄을 예측하려면 이전 식과 논리적 연결을 고려해야 한다. 코드의 다음 토큰을 예측하려면 변수명, 함수 호출, 스코프, 문법 규칙을 이해한 것처럼 행동해야 한다.

물론 이것이 인간과 같은 이해를 의미한다고 단정할 수는 없다. 모델은 텍스트 패턴을 통해 세계를 간접적으로 배운다. 직접 경험과 의도를 가진 존재는 아니다. 하지만 텍스트 패턴을 아주 큰 규모로 학습하면, 겉으로 보기에는 상당히 지적인 행동이 나타날 수 있다. 이것이 현대 LLM의 놀라움이자, 동시에 조심스럽게 해석해야 할 지점이다.

사전학습을 이해하면 LLM 활용이 달라진다

사전학습을 이해하면 LLM을 사용하는 방식도 달라진다. 모델을 단순한 만능 지식 창고로 보기보다는, 방대한 텍스트에서 학습한 패턴 생성기로 보게 된다. 이 관점은 실전에서 매우 유용하다.

모델이 자주 알려진 일반 지식에는 강하지만, 최신 문서나 사내 규정에는 약할 수 있다는 점을 예상할 수 있다. 모델이 그럴듯한 문체로 답하더라도 실제 근거가 없을 수 있다는 점을 경계할 수 있다. 특정 형식의 답변을 원한다면 프롬프트나 구조화 출력을 통해 형식을 명확히 지정해야 한다는 점도 이해하게 된다.

또한 RAG가 왜 필요한지도 자연스럽게 보인다. 사전학습은 모델 안에 모든 정보를 완벽히 넣는 과정이 아니다. 모델에게 넓은 언어 능력을 주는 과정이다. 제품에서 정확한 문서 기반 답변이 필요하다면, 모델의 사전학습 지식에만 기대기보다 외부 문서를 검색해 문맥으로 제공해야 한다.

Function Calling과 Tool Use도 같은 맥락에서 이해할 수 있다. 모델은 계산을 흉내 낼 수 있지만, 항상 정확한 계산기처럼 동작하지는 않는다. 모델은 데이터베이스에 있는 최신 주문 상태를 알 수 없다. 그래서 필요한 순간 외부 도구를 호출하게 만들어야 한다. 사전학습된 모델은 도구를 사용할 수 있는 언어적 판단 능력을 제공하고, 실제 정보 조회나 행동은 외부 시스템이 맡는 구조가 더 안정적이다.

기반 모델이라는 말의 의미

사전학습을 마친 모델을 흔히 기반 모델이라고 부른다. 기반이라는 말이 잘 어울린다. 건물로 비유하면 사전학습은 넓고 튼튼한 지반을 만드는 일이다. 그 위에 대화형 비서, 코드 작성 도우미, 고객지원 챗봇, 문서 검색 도우미, 글쓰기 도구 같은 다양한 응용을 올릴 수 있다.

기반이 약하면 그 위에 어떤 기능을 얹어도 한계가 있다. 언어를 제대로 다루지 못하는 모델을 프롬프트만으로 훌륭한 비서로 만들기는 어렵다. 반대로 기반이 강하면 비교적 적은 추가 학습이나 프롬프트 설계만으로도 다양한 작업에 적응할 수 있다.

이것이 사전학습의 힘이다. 한 번 거대한 텍스트 세계를 학습한 모델은 여러 작업의 출발점이 된다. 특정 작업마다 처음부터 모델을 새로 만드는 대신, 하나의 강력한 기반 모델을 가져와 지시를 따르게 만들거나, 문서를 연결하거나, 도구를 붙이는 방식으로 확장할 수 있다.

이 책의 뒤쪽에서 우리는 바로 이 관점을 실전으로 옮길 것이다. LLM API를 호출하고, 프롬프트를 설계하고, 구조화 출력을 받고, RAG 챗봇을 만들고, 도구를 호출하는 에이전트를 구성할 것이다. 그 모든 응용의 밑바닥에는 사전학습된 모델이 있다.

이번 장에서 기억할 것

사전학습은 LLM의 가장 중요한 출발점이다. 라벨이 없는 텍스트에서 다음 토큰 예측 문제를 자동으로 만들고, 그 문제를 엄청난 규모로 풀게 하면서 모델은 언어의 규칙과 세계에 대한 패턴을 배운다.

대규모 말뭉치는 모델의 능력을 크게 좌우한다. 웹 문서, 책, 코드, 논문 등 어떤 데이터를 얼마나 잘 구성하느냐에 따라 모델이 잘하는 일과 약한 일이 달라진다. 데이터는 많기만 해서는 충분하지 않다. 중복 제거, 품질 필터링, 안전 점검이 함께 필요하다.

손실을 낮추는 과정은 단순히 숫자를 줄이는 일이 아니다. 다음 토큰을 더 잘 맞히기 위해 모델이 문법, 의미, 사실, 스타일, 코드 구조를 내부 표현으로 압축해 가는 과정이다. 그래서 LLM의 대부분의 지식과 언어 감각은 사전학습에서 형성된다.

하지만 사전학습은 모든 문제를 해결하지 않는다. 사전학습 모델은 아직 사용자의 지시를 안정적으로 따르는 친절한 챗봇이 아닐 수 있다. 또한 최신 정보, 사내 문서, 정확한 계산, 외부 시스템 작업에는 한계가 있다. 그래서 이후에는 지도 미세조정, Instruction Tuning, 선호 최적화, RAG, Tool Use 같은 단계와 기술이 필요하다.

다음 장에서는 이 중에서 먼저 지도 미세조정과 Instruction Tuning을 살펴본다. 사전학습으로 언어의 바탕을 얻은 모델이 어떻게 "사용자의 요청에 답하는 모델"로 바뀌는지 알아볼 차례다.

책 목록

처음 만나는 LLM: 원리부터 Mini GPT 구현, RAG 서비스 개발까지

전체 목차 보기

이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.

틸노트는 사용자가 AI를 활용해 노트를 쉽게 작성하거나 편집할 수 있는 서비스입니다.

AI 스퀘어 단톡방에 함께해요

AI 활용과 틸노트 사용 팁을 나누는 오픈채팅방입니다. 입장 비밀번호는 tilnote입니다.

참여하기