시리즈: 자가 개선 AI 에이전트 — 1/9
강의: Stanford CS329A | Course Overview
현대 대규모 언어모델의 발전사를 가장 단순하게 요약하면 한동안 공식은 명확했다. 더 많은 데이터를 사용하고, 더 많은 연산을 투입하고, 모델을 더 크게 만들면 성능이 좋아졌다. Stanford의 CS329A: Self-Improving AI Agents 첫 강의는 이 역사를 부정하지 않는다. 오히려 그 성공을 출발점으로 삼아 다음 질문을 던진다.
모델을 더 크게 만드는 것이 성능을 높이는 유일한 방법이 아니라면, 우리는 또 어디에 연산과 피드백을 투입할 수 있는가?
이 질문이 첫 강의 전체를 관통한다. 강사진은 사전학습 스케일링 법칙에서 시작해 Chain of Thought, post-training과 RLHF, 추론 시점 연산, reasoning model, agentic workflow, 그리고 generator-verifier gap까지 이동한다.
따라서 이 강의는 단순한 “코스 소개”가 아니다. 이후 8편에서 다룰 자가 개선 에이전트의 기술들이 왜 등장했는지를 설명하는 역사적·기술적 지도에 가깝다.
1. 출발점은 분명하다: 스케일링은 실제로 작동했다
강의는 사전학습 스케일링의 성공부터 복원한다.
대형 언어모델은 크게 세 가지 자원을 함께 늘리며 발전했다. 모델 용량, 학습 데이터, 그리고 학습 연산량이다. Aakanksha Chowdhery 교수가 이 이야기를 설명하는 데에는 특별한 배경이 있다. 그는 2022년 PaLM 논문의 제1저자다.
PaLM 논문은 5,400억 개 파라미터를 가진 dense Transformer를 6,144개의 TPU v4 칩에서 학습했다고 보고했다. 논문은 수백 개의 자연어 과제에서 few-shot 성능 향상을 확인했고, 여러 다단계 추론 과제에서도 규모가 커질수록 큰 성능 개선이 나타났다고 설명했다.
이 시기의 가장 중요한 산업적 교훈은 “규모를 키우면 좋아질 가능성이 있다” 정도가 아니었다. 손실이 일정한 패턴으로 계속 개선된다면, 거대한 학습 투자를 어느 정도 예측 가능한 엔지니어링 전략으로 만들 수 있다는 점이었다.
다만 스케일링 법칙은 추가 비용의 경제성이 영원히 같다는 뜻이 아니다. 첫 강의에서 강사진은 고품질 데이터의 한계, 막대한 학습 비용, 그리고 한계 효율 문제를 이야기한다.
중요한 경계가 있다. 강사진은 사전학습 스케일링이 끝났다고 주장하지 않는다. 프론티어 모델은 여전히 더 큰 사전학습의 혜택을 받는다. 강의의 주장은 더 좁다. 앞으로는 사전학습만이 아니라 다른 축에서도 성능을 끌어올려야 한다는 것이다.
2. 규모는 손실만 낮춘 것이 아니라 ‘추론을 꺼내는 방법’도 바꿨다
다음 주제는 Chain of Thought(CoT)다.
2022년 논문 Chain-of-Thought Prompting Elicits Reasoning in Large Language Models은 중간 추론 단계를 예시로 제공했을 때 산술, 상식, 기호 추론 과제의 성능이 크게 개선될 수 있음을 보여줬다. 대표 결과 중 하나는 PaLM 540B에 8개의 CoT 예시를 제공했을 때 당시 GSM8K에서 매우 높은 성능을 기록한 것이다.
이 지점부터 모델의 성능은 학습이 끝난 순간에 모두 결정된다고 보기 어려워진다. 추론을 어떤 형식으로 조직하는가가 성능에 영향을 주기 시작한다.
강의에서는 이를 ‘창발적 능력(Emergent Ability)’이라는 프레임으로 설명한다. 충분히 큰 모델에서 특정 능력이 갑자기 유용해지는 것처럼 보인다는 것이다.
하지만 이 해석은 현재도 논쟁적이다. 2023년 논문 Are Emergent Abilities of Large Language Models a Mirage?는 일부 불연속적인 ‘창발’ 현상이 실제 모델 행동의 급격한 변화가 아니라 평가 지표를 비선형적으로 선택했기 때문에 나타날 수 있다고 주장했다.
따라서 여기서는 두 층을 분리해야 한다.
- Verified Fact: 해당 연구들에서 큰 모델은 CoT prompting으로 복잡한 추론 과제에서 큰 이득을 얻었다.
- Research Interpretation: 그 능력이 특정 파라미터 임계점에서 질적으로 갑자기 “출현”했다고 볼 것인지는 아직 논쟁 중이다.
이 구분은 이후의 reasoning model 논의를 읽을 때도 중요하다.
3. Post-training은 ‘좋은 모델’의 기준 자체를 바꿨다
강의는 이후 사전학습에서 post-training으로 이동한다.
사전학습 모델의 기본 목적은 다음 토큰을 잘 예측하는 것이다. 하지만 실제 assistant가 해야 하는 일은 다르다. 사용자의 지시를 이해하고, 유용한 답을 만들고, 선호되지 않는 행동을 피하고, 일정한 기준에 맞게 행동해야 한다.
이 차이를 가장 명확하게 보여준 사례 중 하나가 OpenAI의 InstructGPT 연구다.
InstructGPT는 대략 다음 구조를 사용했다.
- 사람이 작성한 demonstration으로 supervised fine-tuning을 수행하고,
- 여러 모델 출력에 대한 인간의 선호 순위를 수집하고,
- 그 순위를 예측하는 reward model을 학습하고,
- reward model의 점수를 최대화하도록 RLHF로 정책 모델을 다시 조정했다.
해당 연구의 인간 평가에서는 13억 파라미터 InstructGPT가 1,750억 파라미터 GPT-3보다 해당 prompt 분포에서 더 선호됐다.
이 결과를 “작은 모델이 큰 모델보다 항상 낫다”로 읽으면 안 된다. 더 정확한 의미는 다음과 같다.
파라미터 수가 훨씬 적어도, 목표와 피드백을 더 잘 설계하면 실제 사용자 행동 지표에서는 큰 모델의 우위를 뒤집을 수 있다.
이것이 self-improvement로 넘어가는 중요한 다리다. 피드백이 모델 행동을 바꿀 수 있다면, 다음 문제는 그 피드백을 어디서 얻고 얼마나 자동화할 수 있는지가 된다.
4. 새로운 축: 학습이 끝난 뒤에도 더 많은 연산을 투입할 수 있다
강의 약 20분 지점에서 Part 2의 핵심 주제가 등장한다. inference-time scaling 또는 test-time compute다.
한 문제에 한 번만 답하게 하지 말고 여러 번 시도하게 한다. 그중 일부라도 정답이 있다면 검증자가 좋은 후보를 골라낼 수 있다는 아이디어다.
Azalia Mirhoseini가 공저한 2024년 논문 Large Language Monkeys는 여러 과제에서 이 방법을 실험했다. 일부 실험에서는 문제당 최대 10,000개의 독립 샘플을 만들었고, 적어도 하나의 정답이 존재하는 비율인 coverage가 샘플 수와 함께 계속 증가했다.
중요한 결과는 “무조건 10,000번 생성하면 프론티어 모델을 이긴다”가 아니다. 실제 논문은 훨씬 더 조건부다.
- 코드나 formal proof처럼 자동 검증이 가능한 영역에서는 coverage 증가가 실제 성능 증가로 직접 연결될 수 있었다.
- MATH에서 Llama-3-8B-Instruct의 coverage는 100개 샘플에서 79.8%, 10,000개에서 95.3%로 증가했다.
- SWE-bench Lite에서는 DeepSeek-Coder-V2-Instruct가 1회 샘플링 15.9%에서 250회 샘플링 56%까지 올라갔다.
- 반면 자동 검증이 어려운 영역에서는 majority voting이나 reward model 선택 성능이 샘플을 늘려도 일정 수준 이후 정체됐다.
여기서 첫 번째 큰 시스템 교훈이 나온다.
생성 능력은 검증 능력보다 더 빠르게 확장될 수 있다.
정답을 한 번이라도 만들어내는 것과, 수많은 후보 중 그 정답을 알아보는 것은 완전히 다른 문제다.
5. Verifier는 지능의 경제성을 바꾼다
강의는 이 문제를 generator-verifier gap이라는 표현으로 반복해서 다룬다.
어떤 분야는 자기 개선에 유리하다. 코드에는 컴파일러와 테스트가 있다. formal proof에는 proof checker가 있다. 일부 수학 문제에는 비교적 명확한 정답 판정 규칙이 있다.
반면 전략 보고서, 정책 분석, 과학적 가설, 장문의 글 같은 영역에서는 ‘정답 판별기’를 싸게 만들기 어렵다. 이 경우 평가자는 또 다른 모델이거나 인간 전문가가 된다.
그래서 현재의 agent 연구에서 수학과 코딩이 반복해서 등장한다. 단순히 연구자들이 그 분야를 좋아해서가 아니다. 환경이 조밀한 피드백을 줄 수 있기 때문이다.
에이전트의 자기 개선은 “좋아 보인다”보다 강한 신호를 받을 수 있을 때 훨씬 쉬워진다.
6. Reasoning model은 추론과 학습을 다시 연결한다
강의는 이후 OpenAI o-series, DeepSeek-R1, Gemini의 thinking 계열과 같은 reasoning model을 설명한다.
여기서는 증거의 경계를 특히 조심해야 한다.
강사진이 제시하는 큰 구조는 이렇다. inference에서 더 많은 연산을 사용해 긴 reasoning trajectory를 만들고, 성공한 trajectory를 가려내고, 그 데이터를 다시 post-training에 사용한다. 이렇게 inference와 training이 순환하면 self-improvement flywheel이 만들어질 수 있다는 설명이다.
이와 유사한 구조는 공개된 RL·synthetic-data 연구에서도 확인된다. 하지만 폐쇄형 상용 모델의 실제 학습 데이터와 내부 파이프라인은 모두 공개돼 있지 않다.
따라서 공개 글에서는 다음 정도까지가 방어 가능한 결론이다.
최근 reasoning 연구는 inference와 training을 완전히 분리된 단계가 아니라 서로 데이터를 주고받을 수 있는 연결된 단계로 다루는 방향으로 발전하고 있다.
추론 중 탐색이 데이터를 만들고, 검증이 그 데이터에 신호를 붙이고, 학습이 다음 추론을 개선한다. 이것이 self-improvement loop의 초기 형태다.
7. Chatbot에서 Agent로: 이제 모델은 ‘답’이 아니라 ‘과업’을 끝내야 한다
강의 약 41분 지점부터 논의의 단위가 다시 바뀐다.
이제 질문은 “모델이 답을 얼마나 잘 쓰는가?”가 아니다. “시스템이 목표를 끝까지 완수할 수 있는가?”다.
강사진은 agent를 설명하면서 다음 요소들을 결합한다.
- 여러 단계에 걸쳐 유지되는 목표,
- 웹·터미널·파일·API 같은 외부 환경,
- 환경을 실제로 바꿀 수 있는 도구,
- 단계 간 상태를 유지하는 메모리,
- 도구 실행 결과에서 오는 피드백,
- 실패 후 계획을 수정하는 능력,
- 목표 달성 여부를 판단하는 종료 조건.
이 기준은 fluent chatbot보다 훨씬 엄격하다. Agent는 언어를 행동으로 바꾼 뒤, 그 행동의 실제 결과를 다시 다음 판단에 사용해야 한다.
강의에서는 prompt chaining, routing, parallelization, orchestrator-worker, evaluator/judge 같은 orchestration pattern도 소개한다. 새로운 foundation model만큼 화려하지는 않지만, 실제 agent system에서는 이런 구조가 모델을 신뢰 가능한 프로세스에 넣는 방법을 결정한다.
8. Coding agent는 ‘생성’과 ‘완료’의 차이를 가장 선명하게 보여준다
소프트웨어 개발이 좋은 사례다.
코딩 모델은 몇 초 만에 패치를 만들 수 있다. 하지만 agent가 과업을 끝냈다고 하려면 훨씬 더 많은 일이 필요하다.
- 저장소 구조를 읽고,
- 사용자 요구를 이해하고,
- 관련 파일을 찾고,
- 코드를 수정하고,
- 테스트를 실행하고,
- 실패 로그를 해석하고,
- 수정안을 다시 만들고,
- 최종적으로 요구사항이 충족됐는지 판정해야 한다.
환경은 이 과정에서 계속 교정 신호를 돌려준다. 실패한 테스트는 단순한 0점이 아니라 다음 수정 방향에 대한 정보가 된다.
그래서 coding agent loop는 첫 강의가 설명한 구조를 매우 구체적으로 보여준다.
목표 → 행동 → 관찰 → 검증 → 수정 → 완료
물론 테스트 자체가 불완전하면 agent는 테스트에만 맞는 잘못된 코드를 만들 수 있다. 요구사항이 모호하면 기술적으로 맞는 패치가 사용자가 원한 문제를 해결하지 못할 수도 있다.
그래서 강사진은 Intent Clarification도 agent capability의 일부로 다룬다. 불완전한 요청을 즉시 실행하는 시스템보다, 어떤 요구가 빠져 있는지를 인식하고 먼저 되묻는 시스템이 현실에서는 더 유용할 수 있다는 것이다.
9. 가장 강한 반론: 결국 여전히 더 좋은 Base Model이 핵심 아닌가?
그렇다. 첫 강의를 “이제 모델 스케일링은 끝났다”로 정리하면 왜곡이다.
test-time scaling, tool use, verifier, orchestration, post-training은 모두 base model의 능력에 의존한다. 생성자가 너무 약하면 sample budget을 늘려도 좋은 해답 자체가 거의 나오지 않는다. 강한 모델일수록 긴 문맥을 더 잘 이해하고, 도구를 더 안정적으로 사용하고, 더 좋은 후보 계획을 만들 가능성이 높다.
또한 측정 문제도 있다. 어떤 reasoning ability가 실제로 새롭게 생긴 것인지, prompting이나 benchmark metric이 그 능력을 더 잘 드러낸 것인지는 항상 명확하지 않다.
따라서 가장 방어 가능한 결론은 다음이다.
사전학습 규모는 여전히 기반이다. 다만 이제는 추가 연산·데이터·피드백을 투입할 장소가 사전학습 바깥으로 확장됐다.
이 변화는 시스템 설계의 질문을 바꾼다. “모델을 얼마나 크게 만들 것인가?”뿐 아니라 “추론에 얼마나 많은 연산을 줄 것인가?”, “후보를 어떻게 검증할 것인가?”, “어떤 도구를 줄 것인가?”, “실행 경험을 무엇으로 저장할 것인가?”, “그 경험 중 무엇을 다음 학습에 넣을 것인가?”를 함께 물어야 한다.
10. 이 글이 주장하지 않는 것
강의 원문을 자세히 읽을 때 중요한 것은, 요약 과정에서 사라지기 쉬운 ‘부정의 경계’를 보존하는 것이다.
- 강사진은 pretraining scaling이 무용해졌다고 말하지 않았다.
- reasoning model이 인간처럼 의식적으로 ‘생각한다’고 주장하지 않았다.
- 현재 agent가 인간의 소프트웨어 업무 전체를 완전 자율적으로 대체할 수 있다고 말하지 않았다.
- 대규모 repeated sampling의 비용과 latency trade-off를 명시적으로 인정했다.
- 정답을 자동 검증하기 어려운 영역에서 verifier가 여전히 핵심 병목이라는 점을 인정했다.
- 사전학습과 post-training/RL이 reasoning 성능에 각각 얼마나 기여하는지는 아직 열린 연구 문제로 남겼다.
이 경계들이 있어야 첫 강의는 과장된 “AI가 스스로 무한히 개선된다”는 서사가 아니라 실제 연구 로드맵으로 읽힌다.
11. Part 1의 실제 결론
첫 강의는 scaling law로 시작하지만 마지막에는 systems engineering에 도착한다.
논리의 흐름을 다시 압축하면 이렇다.
- Pretraining scale로 넓은 기본 능력을 만든다.
- Prompting과 post-training으로 그 능력을 더 잘 꺼내고 사용자 의도에 맞춘다.
- Inference-time compute로 더 넓은 해답 공간을 탐색한다.
- Verifier로 좋은 trajectory와 그럴듯한 오류를 가른다.
- Tool과 environment를 연결해 모델 바깥의 실제 피드백을 얻는다.
- 가능하면 성공한 행동을 다시 학습 데이터로 환류한다.
- 마지막에는 단일 답이 아니라 전체 loop의 신뢰성을 평가한다.
이 구조가 이후 시리즈 전체의 기초다.
Part 2에서는 첫 강의가 짧게 소개한 질문 하나만 깊게 파고든다. 모델 가중치를 고정한 채 test-time compute만 늘리면 성능은 어디까지 확장될 수 있는가?
Claim map
- Speaker / Course Claim: AI 연구의 중심축이 pretraining-only scaling에서 inference-time compute, post-training, verification, tool use와 agentic feedback loop까지 확장되고 있다. robust verifier와 intent clarification은 중요한 병목이다.
- Verified Fact: PaLM은 540B dense model이었다. CoT 연구는 충분히 큰 모델에서 복잡한 reasoning benchmark의 큰 향상을 보고했다. InstructGPT는 인간 demonstration·preference ranking·reward model·RLHF를 사용했다. repeated sampling은 solution coverage를 높이며 자동 검증이 가능한 영역에서 특히 직접적인 성능 향상으로 이어질 수 있다.
- Editorial Interpretation: Part 1을 “model-centric scaling에서 system-level scaling으로의 전환”으로 읽는 것은 이 글의 종합 해석이며 강사의 직접 인용은 아니다.
강의 지도
- 00:02–00:06 — 사전학습 scaling law와 모델 규모의 역사
- 00:06–00:11 — Chain of Thought와 emergence 논쟁
- 00:12–00:19 — instruction tuning, human preference, reward model, RLHF
- 00:19–00:28 — inference-time scaling과 repeated sampling
- 00:28–00:41 — reasoning model과 self-improvement loop
- 00:41–00:53 — chatbot에서 agent로, orchestration pattern
- 00:49–00:53 — generator-verifier gap
- 00:53–00:58 — intent clarification과 실무 응용
주요 1차 출처
- Stanford CS329A — Part 1 | Course Overview
- Stanford CS329A — Self-Improving AI Agents
- PaLM: Scaling Language Modeling with Pathways
- Chain-of-Thought Prompting Elicits Reasoning in Large Language Models
- Training Language Models to Follow Instructions with Human Feedback
- Large Language Monkeys: Scaling Inference Compute with Repeated Sampling
- Are Emergent Abilities of Large Language Models a Mirage?