AI 입문분석
AI 에이전트와 대화로 사이트 만들기: HackerTube 사례
Karpathy의 HackerTube가 어떻게 네 단계로 나뉘었는지, 에이전트가 대신할 수 없는 세 단계는 무엇인지, 대량 필터 단계의 비용을 추정하는 방법.

AI 에이전트가 세 가지를 빼고 사이트 전체를 만들어 줄 수 있습니다: API 키, 서버, 도메인입니다. 이것이 HackerTube의 구도입니다. Andrej Karpathy가 Claude와 대화만으로 약 두 시간 만에 만들었다고 말한 YouTube 스타일 사이트입니다. 아래에는 프로젝트가 거친 네 단계, 직접 준비해야 하는 것, 그리고 반복적인 중간 단계가 자신의 데이터에서 얼마나 들지 추정하는 방법이 있습니다.
네 단계, 이 순서대로#
Karpathy(AI 연구자, OpenAI 공동 창립자, 전 Tesla AI 디렉터, Eureka Labs 창립자)는 2026년 10월 31일에 글을 올렸습니다: HackerTube on his blog. 이 사이트는 YouTube 영상을 추천하는 Hacker News 댓글을 모아 탐색할 수 있게 합니다. 그 뒤에는 거의 모든 '에이전트와 대화만 하기' 프로젝트가 공유하는 골격이 있습니다. 직접 순서를 맞춰 보세요:
순서대로 배열하기
데이터에서 웹사이트로 가는 프로젝트의 단계를 순서대로 배열하세요
항목을 드래그하거나 화살표를 사용하세요
- 원본 데이터셋 다운로드
- 각 항목에 더 작은 모델 실행: 유지 또는 제거
- 남은 것으로 인터페이스 구축
- 서버에 올리기
두 번째 단계가 이질적입니다. 다운로드, 구축, 배포는 각각 한 번씩 일어납니다. 유지 또는 제거 질문은 항목마다 한 번씩, 수만 번 이루어집니다. 이 점을 기억해 두세요. 비용 이야기로 돌아올 때 다시 나옵니다.

에이전트가 한 일, 숫자로#
Karpathy가 설명한 실행은 이렇습니다. 그는 Claude Code 데스크톱 앱에서 작업했습니다. 그의 기본 설정인 medium effort의 Opus 5.5가 Hugging Face에서 Hacker News 댓글 데이터셋을 다운로드하고 필터링했습니다. Sonnet은 Claude Code Workflow 안에서 댓글을 검토했습니다. 결과: YouTube 영상을 추천하는 약 40K 댓글, 2007년부터 2026년까지의 6,454개 영상, 150개 주제로 분류되었습니다. 그다음 Opus가 인터페이스를 구축하고 VPS에 배포했습니다. 이 사이트에는 계정 없이 동작하는 'ForYou' 추천(상태는 브라우저 세션에 저장됨), 키보드 단축키, 데이터 내보내기가 있어 다른 사람이 자기 에이전트에 데이터를 넘길 수 있습니다.

글에서 알 수 없는 것: 비용이나 토큰 수, 그리고 어떤 단계가 순수 코드였고 어떤 단계가 모델 호출이었는지입니다. 따라서 '두 시간'은 시간이지 가격이 아닙니다. 이 구분이 왜 중요한지는 do agents need the model at every step?에서 다룹니다.
직접 남는 세 가지#
Karpathy는 세 단계를 직접 했습니다: Google Cloud API 키 생성(YouTube 메타데이터용), VPS 부팅, 도메인 구매. 이들이 공유하는 것을 보세요. 각각은 당신의 계정과 연결되어 있습니다: 로그인, 결제 프로필, 당신의 신원입니다. 에이전트는 모든 명령을 작성할 수 있지만 계산대에 당신 대신 설 수는 없습니다. 건축업자를 고용하는 것과 같습니다: 집은 지어 주지만 땅에는 당신이 서명합니다.
짝 맞추기
각 단계를 왜 직접 남는지와 연결하세요
왼쪽 항목을 탭한 다음 짝을 탭하세요
- YouTube 메타데이터 API 키 생성당신의 Google Cloud 계정에 있음
- 서버 부팅당신의 호스팅 계정으로 청구됨
- 도메인 구매당신의 이름으로 등록됨
- 필터 스크립트와 인터페이스 작성에이전트가 하는 부분
실제로 에이전트는 멈추고 물어볼 것입니다. 키는 직접 만들고 환경 변수에 넣은 뒤, 에이전트에는 변수 이름만 주고 키 자체는 절대 주지 마세요. 키가 처음이라면 what an API key is and how to store it safely가 5분이면 됩니다.
자신의 데이터에 같은 형태를 적용해 보기#
40,000개의 제품 리뷰가 담긴 reviews.csv이 있고 배터리 수명에 관한 리뷰만 있는 작은 검색 가능 페이지를 원한다고 해봅시다. HackerTube 정신의 프롬프트:
I have reviews.csv (40000 rows, column: text). Goal: a small searchable web page with only the reviews about battery life.
1. Look at the file and tell me what is in it. Change nothing yet.
2. Write a script that sends each review to a model and gets back keep or drop. Use an OpenAI-compatible API: base URL https://api.cheaptokens.dev/v1, key from the environment variable CHEAPTOKENS_API_KEY, model deepseek-ai/DeepSeek-V4-Flash-0731.
3. Run it on the first 100 reviews, show me the results and the tokens used. Wait for my OK before the full run.
4. Build the page from the kept reviews.
Whenever you need an account, a key or a payment from me, stop and tell me what to do.3단계는 훔칠 만한 습관입니다. 100개 행은 거의 비용이 들지 않고, 모델이 4만 개에 돈을 쓰기 전에 실수를 볼 수 있습니다. 마지막 줄은 이전 섹션의 인계 사항을 적어 둔 것입니다. base URL과 모델 id는 CheapTokens docs에서 가져옵니다. 키는 거기서 직접 만듭니다.
대량 단계의 비용#
반복되는 단계로 돌아갑니다. 각 리뷰와 한 줄 지시가 약 150토큰이고 답('keep' 또는 'drop')이 약 10토큰이라고 합시다. 40,000개 리뷰면 40000 × 150 = 6000000 입력 토큰, 40000 × 10 = 400000 출력 토큰입니다. DeepSeek-V4-Flash에서는 전체 패스가 $0.13, GLM-5.3-Flash에서는 $0.136입니다. 입력과 출력을 합쳐 계산하면 둘 다 OpenRouter보다 저렴합니다. 각 요청이 작기 때문에 380K와 390K 컨텍스트 윈도는 전혀 쓰이지 않습니다. 중요한 것은 토큰당 가격 곱하기 매우 큰 호출 수입니다.
숫자를 자신의 데이터로 바꿔 보세요:
비용 계산기
대량 필터 1회: 40,000개 항목
요청당 입력 토큰: 150 · 요청당 출력 토큰: 10 · 일일 요청 수: 40,000
| 모델 | 일일 | 월간 |
|---|---|---|
| GLM-5.3-Flash$0.02$0.04 | $0.136 | $4.08 |
| DeepSeek-V4-Flash$0.015$0.10 | $0.13 | $3.90 |
| MiniMax-M2.7$0.05$0.15 | $0.36 | $10.80 |
이것은 한 단계일 뿐입니다. 구축과 배포는 에이전트와의 별도 세션이고, 실제 필터 프롬프트는 한 줄보다 길 것입니다. Filter 40K comments with an LLM은 전체 keep/drop 프롬프트를 보여 주고, model routing은 쉬운 항목을 먼저 저렴한 모델로 보내는 방법을 설명합니다. 모든 모델의 현재 가격은 pricing page에 있습니다.
빠른 확인
이런 프로젝트에서 가장 많이 실행되는 단계는?
정답 보기
정답: 각 항목 판정: 유지 또는 제거
keep-or-drop 호출은 항목마다 한 번씩 실행되므로 40,000개 항목이면 40,000번 호출입니다. 그래서 호출당 가격이 가장 먼저 확인할 숫자입니다.
첫 행동: 그 100개 행을 first-request setup으로 보내고 답을 읽은 다음에야 에이전트가 나머지를 실행하게 하세요.



