카르파티의 "미친 짓": 100달러와 4시간으로 나만의 "작은 GPT"를 훈련하세요

이 기사는 기계로 번역되었습니다
원문 표시

AI계의 전설이자 전 테슬라 AI 디렉터였던 카르파티가 새로운 오픈소스 프로젝트 "나노챗(nanochat)"을 출시했습니다. 이 프로젝트는 8,000줄도 안 되는 코드로 전체 ChatGPT 프로세스를 복제하며, 단일 GPU와 약 4시간, 그리고 단 100달러의 비용으로 구현됩니다. 이 프로젝트는 12시간도 채 되지 않아 GitHub에서 4,200개의 별을 받았습니다!

AI의 전설이자 전 테슬라 AI 책임자인 카르파티가 새로운 프로젝트인 나노챗의 출시를 발표했습니다!

최소한이지만 완벽한 "처음부터 시작하는 ChatGPT" 교육 프레임.

카르파티는 이 프로젝트가 그가 쓴 것 중 가장 미친 프로젝트 중 하나라고 말했습니다!

이는 모든 사람이 자신만의 전용 ChatGPT를 갖는 것과 같습니다.

프로젝트가 출시된 지 12시간도 채 되지 않아 GitHub 별점이 4,200개를 돌파했습니다! (그리고 계속 증가하고 있습니다!)

GitHub 프로젝트: https://github.com/karpathy/nanochat

지역 사회의 수돗물 교통이 전부입니다. 이것이 바로 AI 분야에서 카르파티가 호소하는 것입니다!

이전의 nanoGPT와는 달리, nanochat은 사전 학습만을 다루는 것이 아니라 데이터 준비, 사전 학습, 중간 학습(대화, 객관식 질문, 도구 사용), SFT, RL 미세 조정에서 추론 배포까지 전체 프로세스를 포괄합니다.

전체 시스템은 약 8,000줄의 깔끔한 코드로 구성되어 있습니다. GPU 머신을 시작하고 스크립트를 실행하면 4시간 후 웹 인터페이스에서 훈련된 "Little ChatGPT"와 대화할 수 있습니다.

카르파티는 이를 LLM101n의 "피날레" 라고 부르며, 오픈 소스 커뮤니티를 위한 미래 연구 기준과 실험 플랫폼이 될 수도 있습니다.

단 8,000줄로 ChatGPT를 "복제"하는 방법을 자세히 살펴보겠습니다.

새로운 Rust 구현을 사용하여 토크나이저 학습

FineWeb에서 TransformerLLM을 사전 훈련 하고 여러 지표에서 CORE 점수를 평가합니다.

SmolTalk의 사용자 지원 대화, 객관식 질문 및 도구 사용 데이터에 대한 중간 교육

세계 지식(ARC-E/C, MMLU), 수학(GSM8K) 및 코드(HumanEval)에 대한 객관식 문제에 대한 채팅 모델을 평가하기 위해 SFT를 수행합니다.

GRPO를 사용하여 GSM8K에서 모델을 미세 조정합니다.

KV 캐싱, 간단한 사전 채우기/디코딩, 툴링(가벼운 샌드박스의 Python 인터프리터)을 사용하여 엔진에서 효율적인 추론을 구현하고, CLI나 ChatGPT와 같은 웹 인터페이스를 통해 상호 작용합니다.

전체 과정을 요약하고 게임화하는 단일 마크다운 대본을 작성하세요.

전체 프로젝트 비용은 약 100달러(8XH100 노드에서 약 4시간의 교육) 에 불과했습니다.

스토리/시를 생성하고 간단한 질문에 답할 수 있는 작은 대화형 ChatGPT를 훈련하고 복제할 수 있습니다.

GPT-2의 핵심 지표를 뛰어넘는 데는 약 12시간의 훈련 만 필요합니다.

규모가 1,000달러(약 41.6시간의 훈련)로 확대되면 모델은 빠르게 일관성을 갖춰 간단한 수학/코딩 문제를 풀고 롱(Long) 수 있게 됩니다.

24시간 동안 학습된 모델(FLOP가 GPT-3Small125M과 거의 동일하며 GPT-3의 약 1/1000)은 MMLU에서 40번째 세그먼트, ARC-Easy에서 70번째 세그먼트, GSM8K에서 20번째 세그먼트에 진입할 수 있습니다.

요약하자면:

$100 → OpenAI와 유사한 "미니 ChatGPT"를 훈련시켜 시를 쓰고 기본적인 질문에 답할 수 있습니다.

1,000 → GPT-2와 비슷하거나 더 나은 성능을 달성하며, 기본적인 추론과 코드 생성을 수행할 수 있습니다.

이 프로젝트는 그의 핵심 철학을 구현합니다.

"LLM 연구 및 재현에 대한 진입 장벽을 낮추어 모든 사람이 자신의 모델을 학습할 수 있도록 합니다."

이러한 민주화 접근 방식은 그가 nanoGPT 기간 동안 주창했던 "Transformer를 처음부터 구현하는 것"과 정확히 같습니다.

프로젝트 주소: https://github.com/karpathy/nanoGPT

카르파티는 자신의 목표가 "강력한 기준선" 스택 전체를 일관되고, 최소화되고, 읽기 쉽고, 수정 가능하고, 최대한 포크 가능한 저장소 통합하는 것이라고 말했습니다.

nanochat은 LLM101n의 마지막 프로젝트가 될 것입니다(아직 개발 중입니다).

카르파티는 나노챗도 이전의 나노GPT와 마찬가지로 연구 도구나 벤치마크로 발전할 가능성이 있다고 생각합니다.

nanoGPT는 두뇌를 만드는 방법을 알려주고, nanochat은 ChatGPT를 만드는 방법을 알려줍니다.

nanoGPT가 "트랜스포머 소스 코드 교육 프로젝트"라면.

그러면 나노챗은 OpenAI와 마찬가지로 "LLM 생태계의 축소판"이며, 여러분만의 AI입니다.

두 가지의 관계는 신경망 기반에서 제품 수준 대화 시스템까지 이어지는 2단계 폐쇄 루프로 이해할 수 있습니다.

Vibe Coding 에서 nanoGPT , 그리고 이제는 nanochat 까지, Karpathy는 "AI 교육자" 의 최고 대변인이 될 자격이 있습니다.

이 "미친 짓"은 환상이 아니라 카르파티의 이상인 개방적이고 학습 가능하며 재생산 가능한 AI를 실천하는 또 다른 사례입니다.

작은 ChatGPT 효과 표시

Karpathy는 WebUI에서 nanochat 프로젝트를 배포했습니다.

그는 또한 비용이 100달러이고 4시간 동안 진행되는 나노챗을 통한 대화의 예를 보여주었습니다.

매우...흥미롭네요!

아래 그림은 Karpathy가 nanochat "$100 속도 실행" 실험 (즉, GPU만을 사용하여 약 4시간 동안 학습한 작은 ChatGPT 모델)에서 생성한 "성적표"의 일부를 보여줍니다. 여기에는 모델 크기, 학습 시간, 다양한 표준 평가 측정 항목에 대한 성능이 표시됩니다.

문자: 333989 —— 코드의 총 문자 수.

줄 수: 8304 — 약 8300줄의 깔끔하고 주석이 잘 달린 코드입니다.

파일: 44 —— 프로젝트 파일 수.

토큰: 약 83,497개 - 코드에 있는 토큰의 수(약 80,000개의 단어에 해당).

종속성: uv.lock 종속성 목록은 2004줄로, 종속성이 매우 적고 프로젝트 구조가 가볍다는 것을 나타냅니다.

이러한 수치는 nanochat의 미니멀리즘 정신을 보여줍니다. nanochat은 ChatGPT의 학습, 미세 조정 및 추론을 완벽하게 구현하면서도 코드 줄 수를 8,000줄 이내로 유지합니다.

참고문헌:

https://x.com/karpathy/status/1977755427569111362

https://github.com/karpathy/nanochat

본 기사는 위챗 공개 계정 "신지위안" 에서 발췌하였으며, 저자는 신지위안이고, 편집자는 딩후이이며, 36Kr.의 허가를 받아 게재되었습니다.

출처
면책조항: 상기 내용은 작자의 개인적인 의견입니다. 따라서 이는 Followin의 입장과 무관하며 Followin과 관련된 어떠한 투자 제안도 구성하지 않습니다.
라이크
즐겨찾기에 추가
코멘트