AI VIDEO BRIEFING
스탠퍼드 CS329A: 알파코드와 Search-o1로 본 AI 에이전트의 탐색 전략 완전 정리
스탠퍼드 CS329A 7강 정리. 알파코드의 100만 개 대량 샘플링과 군집 선별, 알파코드2의 채점 모델, 그리고 추론 도중 스스로 검색을 호출하는 딥리서치 에이전트의 작동 원리와 한계를 함께 짚는다.

핵심 메시지
쉽게 이해하기
스탠퍼드 온라인이 공개한 CS329A '스스로 개선하는 AI 에이전트' 강좌의 7번째 강의는 '탐색(search)으로 모델을 더 잘 쓰는 법'을 다룬다. 강연자는 정답이 이미 모델의 출력 공간 안에 존재한다고 전제한 뒤, 문제는 그 공간에서 답을 어떻게 건져 올리느냐라고 정리한다. 강의는 이 질문을 두 갈래로 나눠 살핀다. 하나는 코드 모델에서 대량으로 답을 뽑아 추리는 방식이고, 다른 하나는 검색을 곁들인 딥리서치 방식이다.
첫 사례는 딥마인드의 알파코드다. 코딩 도구가 한 줄을 자동완성하는 일은 이미 잘하지만, 문제 설명을 읽고 접근법까지 스스로 정해 끝까지 푸는 일은 훨씬 어렵다. 알파코드는 깃허브 코드 약 700GB와 대회 문제·풀이 데이터로 모델을 학습시킨 뒤, 문제 하나당 100만 개의 서로 다른 프로그램을 생성했다. 그다음 문제에 딸린 예제 테스트를 통과한 것만 남기고, 문법은 달라도 의미가 같은 답끼리 묶는 군집화를 거쳐 최종 10개만 실제 대회 플랫폼에 제출했다.
결과는 10개 대회에서 참가자 대비 평균 54.3% 순위였고, 최근 6개월 참가자 기준 28%와 견줄 만한 수준이었다. 흥미로운 건 대회마다 편차가 컸다는 점인데, 강연자는 문제 분포가 학습 데이터와 얼마나 가까운지와 함께 '선별 단계가 병목일 수 있다'는 가설을 제시한다. 실제로 제출 제한 없이 채점하면 40%를 넘던 정답률이, 10개 제출로 묶으면 30% 수준으로 내려앉았다. 답이 이미 만들어져 있어도 골라내지 못하면 소용이 없다는 뜻이다.
이듬해 나온 알파코드2는 접근을 바꿨다. 모델을 새로 사전학습하는 대신 제미나이 프로를 미세조정하고, 난이도·태그별로 조금씩 다르게 조정한 모델 여러 개를 두어 출력의 다양성을 확보했다. 또 군집화 같은 어림짐작 대신, 코드의 정답 가능성을 0에서 1 사이 값으로 추정하는 별도의 채점 모델을 학습시켜 후보를 재정렬했다. 생성물의 95%를 컴파일 실패·오답으로 걸러내 5만 개 수준으로 줄이고, 가장 큰 군집 10개에서 대표를 뽑는 구조다. 그 결과 샘플 100개만으로 알파코드가 100만 개를 써서 낸 성적에 도달했고, 같은 100만 개 조건에서는 25%였던 정답률이 43%로 올랐다.
강의 후반부는 딥리서치 에이전트로 옮겨간다. 추론 모델은 학습 시점 이후의 지식을 모르기 때문에 '아마도', '혹은', '잠깐' 같은 표현으로 불확실성을 드러내는데, 이 빈틈이 이후 추론 전체로 번진다는 것이다. 검색을 한 번만 붙이는 기존 RAG는 단계마다 다른 정보가 필요한 복잡한 문제에서 힘을 잃는다. 강의가 소개한 Search-o1은 추론 도중 필요할 때마다 검색을 호출하고, 받아온 문서를 그대로 프롬프트에 붓는 대신 관련 대목만 추려 넣는다. 사람이 참고문헌을 모으는 데서 그치지 않고 메모를 남기는 것과 같은 방식이다. 덕분에 문서를 많이 가져올수록 성능이 떨어지던 흐름이 반대로 뒤집혔고, 여러 문서를 넘나드는 다단계 질의응답에서도 기존 방식의 한계를 넘어섰다.
주요 인사이트
- '좋은 답을 만드는 능력'과 '좋은 답을 골라내는 능력'은 별개다. 알파코드 사례는 후자가 부족하면 전자의 성과가 그대로 날아간다는 것을 수치로 보여준다.
- 샘플 수를 늘리면 정답률이 로그 선형으로 오르지만, 더 뽑은 답이 실제로 더 다양하지 않으면 그 효과는 사라진다. 양보다 다양성이 실질적인 변수라는 이야기다.
- 알파코드2의 교훈은 '더 많이 뽑기'보다 '더 나은 기반 모델과 더 나은 채점기'가 비용 대비 효율이 크다는 것이다. 실무에서 규모를 키우기 전에 점검할 지점이다.
- 검색을 붙이는 것만으로는 부족하다. 문서를 그대로 밀어 넣으면 오히려 추론이 흐트러지고, 필요한 부분만 추려 넣을 때 비로소 문서 수가 성능으로 연결된다.
- 모델은 틀린 답에도 높은 확신을 보이는 경향이 있어, 출력 확률을 정답 신호로 그대로 쓰기 어렵다. 신뢰도 보정은 여전히 열린 연구 주제로 남아 있다.
자주 묻는 질문
알파코드는 왜 100만 개나 되는 코드를 생성했나요?
대회 문제는 한 번에 맞히기 어렵기 때문에, 정답이 포함될 가능성을 높이려고 파이썬과 C++로 절반씩, 높은 샘플링 온도로 서로 다른 풀이를 대량 생성했습니다. 다만 이 방식은 계산 비용이 커서 실용성이 떨어진다는 한계도 함께 지적됐습니다.
알파코드2는 무엇이 달라졌나요?
모델을 새로 사전학습하지 않고 제미나이 프로를 미세조정했고, 하이퍼파라미터를 달리한 모델 여러 개로 다양성을 확보했으며, 코드의 정답 가능성을 점수로 매기는 채점 모델을 도입했습니다. 그 결과 샘플 100개로 알파코드의 100만 개 수준에 도달했습니다.
일반적인 RAG와 Search-o1 방식의 차이는 무엇인가요?
일반 RAG는 처음에 한 번 검색해 문서를 프롬프트에 넣습니다. Search-o1은 추론 도중 모르는 지점이 생길 때마다 검색을 호출하고, 가져온 문서를 분석해 관련 부분만 추출한 뒤 이어서 추론합니다. 단계마다 다른 정보가 필요한 문제에서 차이가 큽니다.
모델 출력 확률이 높으면 정답일 가능성도 높은가요?
강의에 따르면 모델은 대체로 과신하는 편입니다. 실제 정확도가 50% 수준인 상황에서도 80%가량의 확신을 보이는 식이라, 확률값만으로 정답 여부를 판단하기는 어렵습니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗