“LLM 이 AI 를 만들었다” 는 이야기는 대체로 틀리다. AI 연구는 1950년대부터 있었고, 신경망도 1980년대에 이미 있었다. LLM 이 실제로 지운 것은 “AI 가 없던 시대” 가 아니라 “NLP 태스크마다 별도의 모델을 훈련시켜야 했던 시대” 다. 이 구분을 세우고 시작한다.

시간축은 대략 이렇다.

  • 2017년 — Google 연구자들이 NeurIPS 에서 트랜스포머 논문 “Attention Is All You Need” 를 발표.1
  • 2018년 — OpenAI 의 GPT-1, Google 의 BERT 등장. “사전학습 + 미세조정(pretrain + finetune)” 패러다임 확립.1
  • 2020년 — GPT-3 발표. 파인튜닝 없이 프롬프트만으로 태스크를 푸는 in-context learning 이 부각됨.
  • 2022년 11월 30일 — ChatGPT 공개. 5일 만에 사용자 100만 명, 2개월 만에 1억 명. LLM 이라는 기술이 대중어가 됨.

이 5년 동안 무엇이 사라졌고, 무엇이 남았는가.


1. LLM 이전 — 태스크마다 모델 하나였다

2015년경의 실무 NLP 파이프라인은 대략 이런 모습이었다.

태스크 대표 접근 학습 데이터
개체명 인식(NER) CRF, BiLSTM+CRF 태그 붙은 문서 수만 문장
감성 분석 로지스틱 회귀, CNN, LSTM 라벨 붙은 문장 수만~수십만
기계번역 Seq2Seq + attention (2014~), 이전엔 통계기반(SMT) 평행 코퍼스 수백만 문장 쌍
문서 요약 추출식(TF-IDF), 초기 신경망 기반 abstractive 요약이 붙은 문서 수만
질의응답(QA) SQuAD 벤치마크용 BiLSTM 기반 리더 문단-질문-답 쌍 10만
챗봇 룰 기반 + 검색기반, 일부 seq2seq 도메인별 대화 로그

공통점: 각 태스크마다 (1) 라벨링된 데이터셋을 별도 구축하고, (2) 아키텍처를 태스크에 맞게 골라, (3) 처음부터 학습시켰다. 회사 하나가 이 다섯 태스크를 다 하려면 다섯 개의 모델과 다섯 개의 데이터 파이프라인이 필요했다.

그 시절의 통증을 열거하면.

  • 라벨링 병목. 딥러닝 모델 하나 학습하려면 수만~수십만 라벨이 필요한데, 라벨은 사람이 만든다. 크라우드소싱(Mechanical Turk) 이 1행 몇 센트 산업이 된 이유다.
  • 도메인 갈아탈 때마다 재학습. 의료용 감성 분석기와 리뷰용 감성 분석기는 다른 모델이다. 도메인 어휘가 달라서.
  • 모델 간 지식 공유 불가. NER 모델이 배운 문법 지식을 QA 모델이 재사용하지 못했다. 각자 처음부터 학습.
  • 긴 문맥 처리 실패. LSTM/GRU 는 시퀀스 길이가 길어지면 앞부분을 잊어버렸다.
  • 병렬화 실패. RNN 계열은 정의상 순차 계산이라 GPU 자원을 다 못 썼다.

이 마지막 두 개가 트랜스포머가 실제로 지운 문제다.


2. Transformer (2017) — attention 하나로 시퀀스를 병렬화

“Attention Is All You Need” 의 핵심 주장은 논문 제목 그대로다 — 재귀(RNN)와 합성곱(CNN) 없이 attention 만으로 시퀀스를 처리할 수 있다.

이게 왜 결정적이었나. RNN 은 h_t = f(h_{t-1}, x_t) 로 정의된다. h_1 을 계산해야 h_2 를 계산할 수 있다 — GPU 를 아무리 많이 붙여도 시퀀스 안에서는 순차. 반면 트랜스포머의 self-attention 은 모든 위치의 관계를 동시에 계산 한다. 시퀀스 길이 $n$ 에 대해 계산량은 $O(n^2)$ 로 늘지만 병렬화가 완전히 가능하다.

결과 — 훨씬 더 큰 모델을, 훨씬 더 많은 데이터로, 실현 가능한 시간 안에 학습할 수 있게 됐다. 이 순간부터 “모델을 크게 만들면 뭐가 되는가” 를 실제로 실험할 수 있는 조건이 만들어졌다.


3. GPT / BERT (2018) — pretrain + finetune 이라는 판을 바꿈

BERT 는 위키피디아와 도서 코퍼스 전체로 마스크된 단어 맞추기 를 학습시킨 뒤, 각 태스크에는 마지막 층 하나만 갈아 끼워 미세조정했다. GPT-1 은 같은 아이디어를 왼쪽→오른쪽 언어 모델(다음 단어 예측)로 구현했다.

이 시점부터 실무 NLP 파이프라인이 이렇게 바뀌었다.

Before (2016)

[각 태스크마다]
데이터 라벨링 → 아키텍처 설계 → 처음부터 학습 → 배포

After (2019)

[누군가가 한 번] 대규모 언어모델 사전학습
[각 태스크마다] 사전학습된 모델 + 태스크별 라벨 몇 천 개 → 미세조정 → 배포

라벨 요구량이 한 자리 이상 줄었다. 학습 시간이 극단적으로 짧아졌다. 그리고 여기서 처음으로, 서로 다른 태스크가 같은 사전학습 모델 을 공유하기 시작했다.


4. GPT-3 (2020) — 파인튜닝조차 없앴다

GPT-3 는 이 흐름을 한 번 더 접었다. 미세조정을 하지 않고, 프롬프트에 예시 몇 개를 넣으면 태스크를 수행한다. 논문 제목이 이걸 압축한다 — “Language Models are Few-Shot Learners”.

실제 프롬프트는 이런 모양이었다.

영어: I love this movie
한국어: 나는 이 영화가 좋다

영어: The service was terrible
한국어: 서비스가 형편없었다

영어: This restaurant is amazing
한국어:

번역기를 훈련시키지 않았다. 번역 데이터셋을 준비하지 않았다. 문제 설명과 예시 2개만 프롬프트에 넣었다. GPT-3 는 마지막 줄을 이어서 썼다.

이 순간에 이르러 “태스크마다 모델 하나” 라는 이전 패러다임의 마지막 조각이 흔들렸다. 모델이 하나, 태스크는 프롬프트로 정의된다.


5. ChatGPT (2022) — 사용성이 규모를 만났다

ChatGPT 자체는 새 아키텍처가 아니다. GPT-3.5 에 RLHF(Reinforcement Learning from Human Feedback) 를 얹어 “대화 인터페이스에 익숙하게” 만든 결과물이다.

기술적 발명 여부와 별개로, 사회적 임팩트는 여기서 폭발했다. 2022년 11월 30일 공개, 5일 만에 100만 유저, 2개월 만에 1억 유저 — 인터넷 서비스 역사에서 가장 빠른 확산이었다. 이 시점 이후 “LLM 을 쓰는 것” 은 개발자만의 이야기가 아니게 됐다.


6. LLM 이 실제로 지운 것

6-1. 태스크별 파이프라인의 폭발적 감소

이전에 5개 모델이 필요했던 파이프라인이 하나로 접힌다.

# Before (2016)
ner_model      = load("bilstm-crf-ner.pkl")
sentiment      = load("cnn-sentiment.pkl")
summarizer     = load("seq2seq-summary.pkl")
qa_model       = load("bidaf-squad.pkl")
translator     = load("transformer-en-ko.pkl")

def process(doc):
    entities = ner_model.predict(doc)
    ...
# After (2023)
client = openai.OpenAI()

def process(doc, task_prompt):
    return client.chat.completions.create(
        model="gpt-4",
        messages=[{"role": "user", "content": f"{task_prompt}\n\n{doc}"}]
    )

“이 문서에서 인명을 추출해” · “이 문서를 3문장으로 요약해” · “이 문서에서 이 질문에 답해” — 모두 같은 API 호출로 다른 프롬프트만 넣으면 된다.

6-2. 라벨링 병목의 대부분

수만 개의 태그 데이터를 만드는 대신, 프롬프트에 예시 5개를 쓴다. 완전히 사라진 건 아니다 — 고정확도 · 도메인 특화 · 규제 대상 태스크는 여전히 파인튜닝과 데이터셋 라벨링이 필요하다. 그러나 “프로토타입을 위한 라벨링” 은 대부분 지워졌다.

6-3. NLP 진입 장벽

2016년에 감성 분석기 하나 만들려면 Python + PyTorch + 데이터 전처리 + 훈련 스크립트 + GPU 서버가 필요했다. 2023년에는 API 호출 세 줄이면 된다. 소프트웨어 엔지니어와 NLP 엔지니어의 경계가 흐려졌다.


7. LLM 이 남긴 것 — 지우지 못한 문제

여기가 이 글의 이유다. LLM 은 지우지 못한 것이 지운 것만큼 많다.

7-1. 환각(hallucination) — 사실이 아닌 것을 사실처럼 말한다

LLM 은 “그럴듯한 다음 토큰” 을 생성한다. 그럴듯함과 사실은 다르다. 존재하지 않는 논문을 인용하고, 있지도 않은 API 를 호출하고, 없는 판례를 만들어낸다. 이 문제는 아키텍처 수준의 해결책이 아직 없다 — 검색 결합(RAG), 도구 사용, 검증 층 등으로 완화 하는 게 현재의 전선이다.

7-2. 결정성(determinism) 없음

같은 입력에 다른 출력이 나온다(temperature=0 로 낮춰도 완전히는 아님). 이전 NLP 파이프라인은 “이 함수는 이 입력에 항상 이 출력” 이 성립했다. LLM 은 아니다. 테스트 · 회귀 · 재현성 이라는 전통 소프트웨어 공학의 기본기가 흔들린다.

7-3. 비용 구조가 반대다

전통 NLP 는 훈련 비용 이 크고 추론 비용 이 작았다. 한 번 학습하면 저렴하게 수십억 건을 처리. LLM 은 반대다 — API 호출마다 토큰당 과금이 붙는다. 하루 백만 건 처리하려면 월 사용료가 4자리 달러를 우습게 넘긴다. “쓰면 쓸수록 비싸진다” 는 이전에 없던 비용 모델.

7-4. 데이터 프라이버시와 저작권

기업 데이터를 외부 API 로 보내는 게 규제상 안 되는 경우가 많다. 자체 호스팅(Llama, Mistral 등 오픈 모델)이 답이지만 그만큼 인프라 비용이 든다. 저작권 이슈는 미해결 — 훈련 데이터에 무엇이 들어갔고, 출력이 그 원본을 얼마나 재현하는지에 대한 법적 지형이 국가마다 다르게 정리되고 있다.

7-5. “설명 불가능성” 은 커졌다

BiLSTM 모델의 attention 가중치는 뜯어볼 수 있었다. 175B 파라미터 모델이 특정 답을 왜 냈는지 우리는 대체로 알지 못한다. 모델이 커지는 방향과 해석 가능해지는 방향은 반비례 하는 것처럼 보인다.


8. 정리 — 두 시대의 경계선

  Before LLM (~2017) After LLM (2020~)
모델 수 태스크당 하나, 도메인당 하나 범용 모델 하나 + 프롬프트
라벨링 수만~수십만 라벨 필수 프롬프트 예시 몇 개
진입 장벽 ML 엔지니어 + GPU + 훈련 파이프라인 API 호출 세 줄
결정성 있음 없음
비용 구조 훈련 무거움, 추론 저렴 훈련 극도로 무거움, 추론도 유의미
사실성 데이터 품질만큼 신뢰 가능 환각 문제 상존
설명 가능성 부분적으로 가능 사실상 불가능

LLM 이 지운 문제 목록은 새 문제 목록과 크기가 비슷하다. 이건 실패라는 뜻이 아니다 — 큰 도약은 원래 새 문제 집합을 만든다. Java 가 C++ 의 세그폴트를 지우고 GC 튜닝이라는 새 세계를 만들었듯, Oracle 이 CODASYL 을 지우고 라이선스 감사라는 새 세계를 만들었듯.

그래서 정확한 질문은 “LLM 이 태스크별 NLP 를 대체하는가” 가 아니라, “새로 생긴 문제들이 이전 문제들보다 다루기 쉬운가” 다. 어떤 조직에게는 답이 예스고 어떤 조직에게는 노다. 규제 산업, 결정성이 요구되는 시스템, 극한의 저비용 대량 처리 — 여기서는 여전히 이전 세대 모델이 살아남는다.

한 문장으로: LLM 은 “NLP 를 하려면 NLP 엔지니어여야 한다” 는 조건을 지웠다. 그 대신 “출력을 어디까지 믿을 것인가” 라는 조건을 새로 얹었다.


  1. Wikipedia, Large language modelhttps://en.wikipedia.org/wiki/Large_language_model. 2017년 NeurIPS 에서 Google 연구자들이 발표한 트랜스포머 논문 “Attention Is All You Need”, 2018년 GPT · BERT 의 등장, 2022년 후반 ChatGPT 공개와 대중적 확산.  2