---
title: "스탠퍼드 CS336이 AI 코딩 도우미에 선을 그은 이유"
published: 2026-06-01T16:41:49.000Z
canonical: https://jeff.news/article/3591
---
# 스탠퍼드 CS336이 AI 코딩 도우미에 선을 그은 이유

스탠퍼드 CS336 과제 저장소에 올라온 AI 에이전트 가이드라인은 코딩 도우미를 '과제 해결기'가 아니라 '학습 보조자'로 제한하자는 내용이다. 개념 설명, 디버깅 질문, 코드 리뷰는 허용하지만 토크나이저, 트랜스포머 블록, 학습 루프 같은 핵심 구현을 대신 작성하는 건 금지한다.

- 스탠퍼드 CS336 과제 저장소에 AI 코딩 도우미용 가이드라인이 올라옴 — 핵심은 '학생 대신 풀지 말고, 학생이 풀게 만들어라'임
  - 대상 도구는 ChatGPT, Claude Code, GitHub Copilot, Cursor 같은 AI 코딩 어시스턴트 전반
  - CS336은 파이썬과 파이토치 구현 비중이 큰 강의라, AI가 코드를 완성해버리면 강의 설계 자체가 깨짐

- 허용되는 도움은 꽤 현실적임 — 설명, 방향 제시, 코드 리뷰, 디버깅 질문은 가능함
  - 학생이 개념을 헷갈리면 바로 정답을 던지는 대신 강의 자료, 핸드아웃, 공식 문서, 프로파일링 도구로 유도하라고 함
  - 이미 학생이 쓴 코드는 리뷰해도 되지만, 완성된 수정 코드를 주는 게 아니라 엣지 케이스, 불변조건, 확인해야 할 지점을 짚는 방식이어야 함
  - 파이썬, 파이토치, 쿠다, 트라이턴, 분산 학습 도구의 에러 메시지를 설명하는 건 괜찮음

- 금지 목록은 꽤 빡셈 — 과제 핵심 구현을 대신하는 순간 선 넘은 걸로 봄
  - 토크나이저, 트랜스포머 블록, 옵티마이저, 학습 루프, 트라이턴 커널, 분산 학습 로직, 스케일링 법칙 파이프라인, 데이터 필터링·중복 제거, 정렬·강화학습 메서드 구현은 직접 해주면 안 됨
  - 학생 저장소를 직접 수정하거나, TODO를 채우거나, 과제 요구사항을 작동하는 코드로 바꾸는 것도 금지
  - 서드파티 구현을 알려주는 것도 막음. 강의 자료가 self-contained로 설계됐기 때문임

- 좋은 예시가 딱 교육용 AI의 방향을 보여줌 — '틀린 곳은 여기'가 아니라 '이걸 확인해봐'임
  - causal mask가 이상하다는 질문에는 mask가 softmax 전에 적용됐는지, score 텐서 shape에 브로드캐스트되는지, 마스킹 값이 0이 아니라 매우 작은 값인지 확인하라고 유도함
  - BPE 토크나이저가 느리다는 질문에도 완성 코드를 주는 대신 병목 위치를 먼저 찾으라고 묻는 흐름이 맞음
  - 분산 학습 성능 문제도 step time, GPU utilization, all-reduce, 데이터 로딩 시간을 분리해서 보라고 안내하는 식임

> [!NOTE]
> 이 가이드라인의 포인트는 AI 사용 금지가 아님. 저수준 프로그래밍 도움과 고수준 개념 설명은 허용하되, 과제의 핵심 사고와 구현은 학생 몫으로 남기자는 쪽에 가까움.

---

## 기술 맥락

- CS336이 이렇게 선을 긋는 이유는 강의 자체가 구현 경험을 학습 목표로 삼기 때문이에요. 트랜스포머나 토크나이저를 눈으로 이해하는 것과, 직접 짜다가 shape 오류와 성능 병목을 밟아보는 건 완전히 다르거든요.

- 여기서 AI Agent는 단순 검색 도우미가 아니라 저장소를 고치고 코드를 실행할 수 있는 도구라서 더 조심스러워요. 같은 설명이라도 '이런 검사를 해봐'와 '이 코드 붙여넣어'는 학습 효과가 확 갈려요.

- 가이드라인이 테스트와 불변조건을 강조하는 것도 실무적으로 의미가 있어요. causal mask, 분산 학습, 토크나이저 성능 같은 문제는 정답 코드를 외우는 것보다 작은 입력과 프로파일러로 원인을 좁히는 습관이 훨씬 오래 가거든요.

- 한국 개발자 입장에서도 이건 교육만의 얘기가 아니에요. 사내 온보딩, 코드 리뷰, 주니어 멘토링에 AI를 붙일 때도 '대신 구현'보다 '판단력을 키우는 피드백'을 어떻게 설계할지가 점점 중요해질 거예요.

## 핵심 포인트

- AI 도구는 학생이 직접 구현하도록 돕는 역할에 머물러야 함
- 파이썬, 파이토치, 쿠다, 트라이턴 오류 설명과 디버깅 방향 제시는 허용됨
- 과제의 핵심 컴포넌트를 코드로 구현하거나 외부 정답 구현을 알려주는 건 금지됨
- 좋은 지원 방식은 답을 주는 게 아니라 테스트, 불변조건, 작은 예제로 사고를 유도하는 것

## 인사이트

AI 코딩 도구가 교육 현장에 들어오면 생산성보다 '학습 경험을 얼마나 망치지 않느냐'가 더 중요해짐. 특히 구현-heavy 강의에서는 에이전트의 능력보다 에이전트의 절제가 핵심이 됨.
