[00:00]
바이브 코딩이 무엇일까요? 이것은 새로운 코딩
[00:03]
방식인데, 기본적으로 코드를
[00:05]
전혀 작성하지 않고 AI가 대신 코딩하도록 하는 것입니다
[00:08]
여러분이 손을 들며
[00:10]
'말도 안 된다'고 하기 전에
[00:12]
인공지능 분야의 선구자인 안드레이 카파시가
[00:15]
최근 이것에 대해 포스팅하면서
[00:17]
매우 좋아한다고 했습니다. 제가 이게 무엇인지
[00:19]
보여드리고 직접 테스트해보겠습니다
[00:21]
간단한 프로젝트도 만들어보고
[00:23]
더 복잡한 프로젝트도 만들어볼 건데요
[00:25]
테트리스 게임을 만들고 기능을 추가하고
[00:28]
그 다음에는 전체 머신러닝 프레임워크를
[00:30]
구축해서
[00:33]
AI가 테트리스를 플레이하도록 할 겁니다
[00:37]
이 모든 것을 단 한 줄의 코드도 작성하지 않고 만들죠
[00:40]
얼마나 멋진지 한번 보세요. 안드레이
[00:43]
카파시의 포스트가 380만 뷰를 기록했는데
[00:46]
많은 사람들이 동의하는 것 같네요
[00:48]
이 새로운 코딩 방식을 제가 바이브 코딩이라고 부르는데
[00:50]
여기서는 완전히 분위기에 몸을 맡기고
[00:52]
지수적 발전을 받아들이며 코드의 존재를
[00:53]
잊어버리는 거죠. 이게 가능한 이유는
[00:55]
LLM들, Cursor, Copilot이 소네트와 함께
[00:58]
너무나 뛰어워졌기 때문입니다. 그리고 저는 방금
[01:01]
Copilot을 Super Whisper와 함께 써봤는데
[01:03]
키보드조차 거의 안 건드렸어요
[01:05]
사이드바의 패딩을 절반으로 줄여달라는
[01:07]
정말 사소한 것도 요청했는데
[01:09]
직접 찾기 귀찮아서죠. 저는 항상 모든 제안을 수락하고
[01:13]
에러 메시지가 나오면 차이점을 읽지도 않고
[01:15]
그냥 복사해서 붙여넣기만 합니다
[01:16]
보통 그러면 해결되더라고요
[01:19]
코드가 제가 이해할 수 있는 수준을 넘어서게 되는데
[01:22]
자세히 읽으려면 시간이 꽤 걸릴 것 같아요
[01:24]
가끔 LLM이 버그를 고치지 못할 때는
[01:26]
그냥 우회해서 해결하고
[01:28]
없어질 때까지 무작위로 변경을 요청해요
[01:30]
주말 프로젝트 정도는 이 정도면 나쁘지 않죠
[01:32]
꽤 재미있기도 하고요
[01:35]
오늘 우리가 테스트해볼 건데
[01:37]
저는 약간 다른 기술 스택을 사용할 거예요
[01:38]
Cursor 대신 Warp를 사용하고
[01:41]
안드레이 카파시처럼 Super Whisper를 사용할 겁니다
[01:43]
Super Whisper를 모르시는 분들을 위해 설명하자면
[01:45]
이것은 음성 인식 AI 도구인데
[01:47]
정말 잘 작동합니다
[01:49]
자, 이제 테스트를 시작해볼까요
[01:51]
우리는 GPT-3를 중간 정도의 추론 능력으로 사용할 건데
[01:53]
자, 이제 시작해보죠
[01:56]
Super Whisper를 열고
[01:58]
시작해보도록 하겠습니다
[02:00]
로그인 인증 페이지를 만들어줘
[02:04]
자, 여기 있네요. 로그인 인증 페이지를 만들어달라고 했죠
[02:07]
엔터를 눌러보겠습니다
[02:09]
지금 생성하고 있네요
[02:11]
정말 빠르네요. 작은 Flask 프로젝트를
[02:13]
로그인 인증 페이지와 함께 만들어줄 거예요
[02:15]
이렇게 설정할 겁니다
[02:16]
좋아요, README와 app.py 파일이 모두 준비됐네요
[02:22]
이제 이 파일들을 만들어드리겠습니다
[02:24]
네, 만들어주세요
[02:27]
워크스페이스 상위 폴더에서 Git 저장소를 찾았네요
[02:31]
자, 이제 시작해보죠
[02:32]
저장소를 열어보시겠습니까?
[02:34]
네, 그리고 추천하는 파이썬 확장 프로그램을
[02:37]
설치하시겠습니까? 네, 진행하죠
[02:39]
제가 Warp를 처음 사용하는 거라
[02:40]
이런 과정이 필요합니다
[02:42]
카파시처럼 모든 변경사항을 수락하고
[02:45]
생각조차 하지 않을 거예요. 보세요
[02:47]
이미 이렇게 많은 코드가 작성됐네요
[02:49]
이제 서버를 실행해달라고
[02:50]
요청해보죠. 과연 할 수 있을까요?
[02:53]
서버를 구동해서 이 앱을 실행해보죠
[02:56]
터미널을 열라고 하니 그렇게 해보겠습니다
[02:59]
지시하는 대로 따라해 보죠
[03:01]
CD 명령어로 이동하고 VMV를 활성화합니다
[03:05]
좋아요, 이제 필요한 패키지를
[03:07]
설치할 건데, 그냥 복사 붙여넣기만 할거에요
[03:09]
전혀 생각할 필요도 없이요
[03:11]
자 됐네요
[03:12]
좋아요, 첫 번째 문제가 발생했네요
[03:16]
그래서 저는 그냥 이걸 복사해서
[03:18]
여기에 붙여넣고 엔터를 누를 겁니다
[03:21]
한 파일을 검토해야 하는데
[03:23]
검토도 안 하고 전부 수락할게요
[03:25]
이제 requirements를
[03:28]
다시 한 번 설치할 건데 지시하는 대로
[03:30]
정확히 따라하고 pip install 하면 됩니다
[03:34]
잘 됐네요. 이제 열어보겠습니다
[03:38]
보이시나요? 사용자명과
[03:41]
비밀번호 로그인 페이지가 있네요. 하지만 여기서 멈추지 말고
[03:43]
계속 진행해서 Google 인증을
[03:46]
이 페이지에 추가해보죠
[03:49]
Windsurfer를 사용하면 좋은 점은
[03:52]
Cascade로 프로젝트 전체를
[03:55]
한 번에 수정할 수 있다는 겁니다
[03:56]
한 번에 한 파일씩만 되는
[03:58]
Cursor와는 조금 다르죠
[04:01]
에러가 발생했지만 아직 편집 중이니
[04:03]
그냥 기다려보겠습니다
[04:05]
변경사항은 보지도 않을 거예요
[04:08]
차이점도 보지 않고
[04:09]
결과만 보면서
[04:11]
잘 작동하는지 확인할게요
[04:13]
설정을 완료하려면 flask를 추가해서
[04:15]
의존성을 업데이트하라네요
[04:18]
폴더를 열었더니 windsurfer가 재시작되어서
[04:21]
지금 좀 이상한 상태에 있어요
[04:22]
변경사항이 일부만 적용됐거든요
[04:24]
어떻게 되는지 보고
[04:25]
AI가 고쳐주길 기다려보죠
[04:28]
flask 모듈을 찾을 수 없다고 하네요
[04:30]
에러 메시지를 복사 붙여넣기 할게요
[04:31]
이미 문제가 뭔지 알아요
[04:33]
conda 환경이 안 맞는 건데
[04:35]
AI가 올바른 방법을 알려주나 봅시다
[04:37]
안 알려주네요, 그럼
[04:39]
여기서 VM을 활성화하면 됩니다
[04:41]
자 다시 돌아왔고, Python app.py 실행하는데
[04:45]
flask-dance가 없네요
[04:48]
같은 문제가 계속되는데 복사 붙여넣기로
[04:50]
해결해보죠. 파이썬 환경 관리가
[04:53]
여기서도 문제가 되네요
[04:54]
당연히 그렇죠
[04:57]
flask-dance를 설치해보죠, 됐습니다
[05:00]
다시 실행해볼게요. 거의 생각 없이
[05:02]
복사 붙여넣기만 하면서 살펴보는 중인데
[05:05]
작동하네요. 다시
[05:07]
여기로 와서 페이지를 새로고침 하면
[05:09]
아직 구글 버튼이 없네요. 이 세그먼트의
[05:12]
스폰서인 Lang Trace 덕분에
[05:14]
훌륭한 파트너십을 맺었습니다
[05:16]
오늘도 소개하게 되어 기쁩니다
[05:17]
Lang Trace는 선도적인 AI
[05:19]
소프트웨어 개발 컨설팅 회사로
[05:21]
비즈니스 발전을 위한 AI 제품을
[05:23]
구축합니다. 제품에는
[05:24]
오픈소스와 오픈 텔레메트리 기반
[05:27]
관찰 가능성 및 평가 플랫폼이 포함되어
[05:29]
애플리케이션의 LLM 사용을
[05:31]
평가하고 개선하는데 도움을 줍니다
[05:34]
초기 스타트업부터
[05:36]
포춘 500대 기업까지
[05:37]
수천 명의 개발자들이 신뢰합니다
[05:39]
Lang Trace는 개발자들이 추적을 수집하고 분석하며
[05:42]
데이터셋을 수집하고 평가를 실행하여
[05:44]
높은 신뢰성과 보안성을 제공합니다
[05:46]
AI 시스템에 대해 다시 말씀드리자면, Lang Trace는 오픈소스이며
[05:48]
오픈 텔레메트리를 지원하고
[05:51]
OpenAI, MrAw, DeepSeek와 쉽게 연동됩니다.
[05:54]
Gemini, Weaviate, Pinecone 등과도 통합되며
[05:57]
Lang Trace는 엔드투엔드 관측성을 제공하여
[06:00]
LLM부터 벡터 데이터베이스까지
[06:03]
Crew AI, LlamaIndex, DSPy,
[06:05]
LangChain과 같은 프레임워크 수준의 호출도 추적합니다.
[06:09]
제가 좋아하는 Crew AI를 기본 지원하며,
[06:11]
Lang Trace는
[06:13]
Crew AI 세션을 추적하기 위한 맞춤형 대시보드를
[06:15]
제공하여 에이전트, 작업, 도구, 메모리를 모니터링합니다.
[06:19]
에이전트들의 모든 활동을 추적할 수 있어
[06:21]
데모에서 안정적인 AI 제품으로
[06:24]
쉽게 전환할 수 있습니다.
[06:27]
Lang Trace는 오픈소스이며,
[06:29]
호스팅 버전을 사용하고 싶다면
[06:31]
제 설명란의 링크를 통해 20% 할인받을 수 있습니다.
[06:33]
더 자세히 알고 싶다면
[06:35]
곧 있을 웨비나에 참여하세요.
[06:37]
모든 내용을 자세히 다룰 예정입니다.
[06:40]
훌륭한 파트너십을 맺고 있으니
[06:41]
GitHub에서 시작해보시고,
[06:43]
Lang Trace에 다시 한 번 감사드립니다.
[06:44]
자, 이제 영상으로 돌아가서,
[06:46]
구글 인증 버튼이 보이지 않는다고
[06:49]
말씀드리겠습니다. 코드는
[06:51]
있는데 말이죠.
[06:53]
참고로 코딩을 처음 하시는 분들도
[06:57]
할 수 있습니다. 아주 쉽죠.
[06:59]
몇 가지 가능성을 살펴봅시다.
[07:01]
먼저 구글 블루프린트가
[07:03]
애플리케이션에 제대로 등록되어 있는지
[07:05]
확인해보죠.
[07:06]
구글 블루프린트를 어떻게 제대로 등록하나요?
[07:09]
구글 등록을
[07:12]
대신 해주세요.
[07:15]
실제로 할 수 있는지
[07:18]
봅시다.
[07:19]
좋네요, 코드를 많이 추가했군요.
[07:22]
모두 수락하겠습니다.
[07:24]
login_google 엔드포인트가 보여야 하는데
[07:27]
입력해보니 확인됩니다.
[07:31]
하지만 버튼이 보이지 않네요.
[07:35]
뭔가 잘못하고 있지만
[07:36]
너무 깊이 생각하지 않으려고 합니다.
[07:38]
대신에
[07:39]
스크린샷을 찍어보겠습니다.
[07:41]
이 모델은 이미지를 지원하지 않으니
[07:43]
다른 방법을 써보죠.
[07:45]
이렇게 해보겠습니다.
[07:46]
모델을 바꿔보죠.
[07:47]
Claude 3.5로 전환해보겠습니다.
[07:51]
이 페이지에서 구글 인증 버튼이 안 보인다고
[07:55]
말씀드리겠습니다.
[07:56]
여기에 추가해주세요라고 하면 되겠네요.
[08:00]
말로 해도 됐었는데,
[08:01]
괜찮습니다. 아, 문제가 보이네요.
[08:04]
로그인 페이지용 템플릿을 사용중이군요.
[08:06]
템플릿을 확인해보죠.
[08:07]
다른 모델을 사용하니
[08:08]
이 모델이 더 나을 것 같네요.
[08:10]
확실히 좀 더
[08:12]
느린 것 같지만, 모두 수락하고
[08:15]
자, 여기 있네요.
[08:18]
보기 좋진 않고 이미지가 깨져있지만 괜찮습니다.
[08:22]
충분하네요. 다음으로
[08:24]
테트리스 게임을 만들고
[08:26]
머신러닝을 사용해서
[08:29]
게임을 스스로 플레이하도록
[08:31]
해보겠습니다.
[08:33]
파이썬으로 테트리스 게임을 만들어주세요.
[08:38]
추천하는 백그라운드 터미널 명령이군요.
[08:40]
수락하겠습니다.
[08:43]
모두 수락하고
[08:45]
네, 코드가 많이 있네요.
[08:47]
실행해보겠습니다.
[08:51]
이 코드를 실행하기 위해 해야 할 일이
[08:53]
좋아요, 이렇게 해보죠.
[08:56]
먼저 디렉토리로 이동하고
[08:58]
가상환경을 활성화하고
[09:00]
모든 필요한 패키지들을
[09:02]
설치한 다음에
[09:04]
파일을 실행할 건데, 사실 이 부분은
[09:07]
그냥 복사 붙여넣기 했네요
[09:09]
아무 키나 눌러서 시작하면 됩니다
[09:13]
잘 되네요, 제대로
[09:15]
작동하는지 확인해 보죠
[09:18]
라인이 사라지네요, 좋아요
[09:20]
자, 이제 멈추고
[09:22]
몇 가지 추가하고 싶은 게 있어요. 다음 블록을
[09:26]
미리 보여주는 창이 필요해요
[09:27]
어떤 조각이 다음에 나올지 보여주는
[09:32]
이게 다예요, 한번 보죠
[09:33]
파일을 작성하고 있네요. 전 그냥
[09:36]
모두 수락하고 실행만 할 거예요
[09:38]
다른 건 건드리지 않고
[09:41]
다시 실행해서
[09:42]
잘 되는지 볼게요. 음, 다음 블록 미리보기가
[09:47]
안 보이네요. 괜찮아요
[09:49]
종료하고 다시 시도했는데, 여전히
[09:53]
다음 블록 미리보기가 안 보여요. 수정해주세요
[09:58]
아마도 Cloud 3.5를
[10:01]
써봐야 할 것 같네요. 그게
[10:04]
코딩 어시스턴트의 황금 표준이죠
[10:07]
하지만 일단 이걸로 해보죠
[10:09]
좋아요, 확실히
[10:11]
화면 너비가 늘어났네요
[10:12]
사실 진정한 바이브 코딩이라면
[10:14]
차이점을 보면 안 되는데, 뭐 어때요
[10:16]
살짝 봤네요. 좋아요
[10:19]
전부 수락하고
[10:21]
실행해서 어떻게 되는지 보죠
[10:24]
와, 다음 모양이 보이네요
[10:27]
멋져요, 정말 대단해요. 게다가
[10:30]
점수도 추가됐네요. 제가 요청하진 않았지만
[10:32]
좋아요. 한번 더 확인해 볼게요
[10:34]
이 줄을 지우면
[10:36]
점수가 10점이 되어야 해요
[10:38]
10점 됐네요, 좋아요. 이제 일시정지와 게임 종료
[10:43]
버튼을 추가해주세요
[10:45]
모두 수락하고 다시 실행해보죠
[10:48]
아무 키나 눌러서 시작... 어? 일시정지와
[10:50]
게임 종료 버튼이 이상한 위치에 있네요
[10:53]
자, 이걸 수정해달라고 하죠
[10:54]
일시정지와 게임 종료 버튼이
[10:58]
테트리스 게임 한가운데 있어요
[11:00]
이걸 전부 왼쪽으로
[11:02]
옮겨주세요
[11:05]
모두 수락하고 게임을 시작해보죠
[11:09]
완벽해요, 이제
[11:11]
일시정지와 게임 종료가 잘 되는지 확인해볼게요
[11:15]
음, 작동이 안 되네요
[11:18]
일시정지는 되는데 그 후에 아무것도 안 돼요
[11:20]
수정해달라고 하죠. 일시정지는
[11:22]
되는데 재개가 안 되네요
[11:25]
그것도 추가하고, 게임 종료도
[11:27]
언제든 되게 해주세요
[11:29]
왜인지 모르겠지만
[11:31]
변경사항이 적용이 안 됐네요
[11:34]
다시 요청해보죠
[11:36]
왜인지 모르겠는데
[11:39]
자동으로 변경이 안 되네요
[11:40]
괜찮아요, 직접 수정하죠
[11:43]
코드를 복사할 건데
[11:45]
좀 이상하네요, 직접 해야 하다니
[11:46]
일시정지 부분을 찾아서
[11:49]
지금 가지고 있는 코드로
[11:51]
교체할 거예요
[11:53]
좋아요, 이제 이 부분을
[11:56]
업데이트하고 들여쓰기도 제대로 하고
[12:00]
이제 괜찮을 것 같아요. 저장하고
[12:03]
수동으로 해야 했다니 이상하지만
[12:05]
괜찮아요, 이제 됐네요
[12:07]
게임을 일시 정지했다가 다시 시작하고
[12:10]
완벽해요. 정말 놀랍네요.
[12:13]
이제 AI가 이 게임을 학습하도록
[12:16]
만들어보겠습니다. 한번 해볼까요?
[12:18]
그게 가능한지 보죠.
[12:19]
좋아요, 모든 게 잘 작동하네요.
[12:22]
이제 AI가 이 게임을 학습하고
[12:26]
스스로 플레이하게 만들고 싶은데
[12:29]
어떻게 구현할지 아직 모르겠네요.
[12:31]
자, 기본적인 AI 에이전트를 추가했고
[12:34]
향후 학습을 위한 자리표시자로
[12:36]
무작위 동작을 선택하도록 했어요. AI 모드죠.
[12:39]
좋은데, 실제로 뭔가 추가됐나요?
[12:42]
알겠어요, 이렇게 해보죠.
[12:44]
GPT-3.5 Turbo로 전환해볼게요.
[12:46]
어쩌면 더 나은 결과를 얻을 수 있을 거예요.
[12:47]
매번 변경사항을 일일이
[12:49]
지시하지 않아도 될 것 같아요.
[12:50]
반복적이고 불필요해 보이거든요.
[12:53]
잘 작동하네요. 이제 AI가
[12:55]
테트리스를 학습하고 스스로 플레이하도록
[12:58]
만들어보죠. 좋습니다.
[13:01]
stable-baselines3라는 유명한 라이브러리를 사용할 거예요.
[13:03]
GPT-3.5 Turbo가 여전히
[13:06]
AI 코딩의 황금 표준인 것 같네요.
[13:09]
보세요, DQN(Deep Q Network) 에이전트를
[13:11]
stable-baselines3를 사용해 구현하고
[13:14]
학습 및 평가 코드를 추가하네요.
[13:17]
정말 멋져요. 많은 코드가 작성되고 있어요.
[13:19]
그래서 이걸 실행할까요?
[13:22]
수락할게요. 설치가 시작되네요.
[13:24]
터미널에서 할 필요도 없이
[13:26]
여기서 바로 되는군요. 좋아요.
[13:27]
모두 수락하겠습니다.
[13:29]
학습 프로세스를 시작할까요?
[13:34]
네, 좋습니다. 자, 시작되네요.
[13:37]
어떻게 될지 보죠. train.py를 실행하는데
[13:39]
이 명령을 실행할까요? 수락하고 보죠.
[13:42]
무슨 일이 일어나나. 백그라운드에서 실행 중이고
[13:45]
실제로 어디서 볼 수 있을까요?
[13:48]
아, 여기 있네요. 문제가 있어요.
[13:51]
이걸 복사해서 여기에 붙여넣고
[13:55]
수정할 수 있는지 보죠. 메인 파일에서
[13:57]
shapes를 임포트해야 해요.
[13:59]
수정해보죠. 좋아요.
[14:02]
다시 실행해보겠습니다. 여전히 문제가 있네요.
[14:05]
좋아요, 모두 수락하고
[14:07]
오류를 복사해서
[14:09]
다시 붙여넣고 엔터를 누르죠. 형태가
[14:12]
일치하지 않는 문제네요.
[14:13]
조각 정보 인코딩 방식에서요.
[14:16]
수정해주세요. 좋아요.
[14:19]
다시 시도해보죠. 오,
[14:23]
보세요!
[14:26]
실제로 실행되고 있어요. 메시지들이
[14:29]
나오고 있네요. 오,
[14:32]
여기 보세요!
[14:33]
보상이... 와, 이거 정말 멋지네요!
[14:37]
언제 끝날까요?
[14:39]
모든 변경사항이 코드에
[14:40]
반영되도록 모두 수락할게요.
[14:44]
아직도 실행 중이네요.
[14:46]
얼마나 걸릴지 모르겠어요.
[14:48]
학습은 얼마나 걸릴까요?
[14:50]
지금 실행 중인데요.
[14:52]
실행 중에도 계속 작업할 수 있어요.
[14:55]
AI가 약 151,000 타임스텝을
[14:58]
백만 스텝 중에서 완료했어요.
[15:01]
15% 완료됐네요. 좋아요.
[15:05]
약 4분 42초 정도 걸릴 것 같아요.
[15:07]
앞으로 건너뛰어서 보여드릴게요.
[15:10]
자, 여기 있습니다. 게임 오버,
[15:12]
총 보상이
[15:14]
8.89네요. 좋아요, 끝난 것 같아요.
[15:18]
이제 어떻게 플레이하게 할까요?
[15:19]
AI를 포함하도록 메인 게임을 수정해보죠.
[15:22]
플레이어 모드에서 모든 제안을 수락했어요
[15:26]
문제가 발생했네요. 한번
[15:29]
순환 임포트 이슈를 붙여넣어 볼게요
[15:31]
좋아요, 수정해주세요
[15:33]
제안된 백그라운드는 실행하지 않을 거예요
[15:36]
모두 수락하고
[15:39]
수동으로 실행해보겠습니다
[15:42]
자, 작동할 것 같네요
[15:45]
아무 키나 눌러서 플레이... 어, 잠깐
[15:49]
또 다른 문제가
[15:51]
발생했네요. 게임이 시작됐다가 종료됐어요
[15:54]
이 에러가 떴는데
[15:56]
에러를 붙여넣고 수정하도록 할게요
[15:59]
그건 원하지 않으니까
[16:00]
모든 변경사항을 수락하고
[16:02]
직접 실행해보죠. 어디 보자...
[16:06]
음, AI가
[16:08]
실제로 게임을 플레이하지 않는 것 같네요
[16:10]
게임을 종료해볼게요
[16:13]
게임은 실행되지만 AI가
[16:15]
플레이를 안 하네요. 어떻게 하면 될까요?
[16:18]
아니, 학습은 시켰는데...
[16:19]
다시 학습시켜야 한다고 하네요. 아니요, 이미 했는데요
[16:23]
학습 파일이 이미 있어야 하는데
[16:26]
확인해보죠, 아마도
[16:27]
저장이 안 됐나? 잠깐... 아, 여기 있네요
[16:29]
네, 찾았어요. 수정해볼게요
[16:31]
파일 구조를 보면서
[16:32]
필요한 파일을 찾을 수 있다는 게
[16:34]
정말 멋지네요
[16:36]
이제 게임을 다시 실행하고
[16:38]
a를 눌러서 AI 플레이를 보죠
[16:40]
거절하고 모두 수락한 다음
[16:43]
a를 누르면... 보세요!
[16:46]
AI가 플레이하고 있어요! 그렇게 잘하진 않지만
[16:51]
확실히 플레이는 하고 있네요. 게임 오버됐어요
[16:56]
흠... 더 개선할 수는 있겠지만
[16:58]
지금은 여기까지 하겠습니다
[17:00]
이게 바로 바이브 코딩이에요
[17:02]
정말 놀라운 것 같아요
[17:04]
코드 한 줄도 직접 작성하지 않고도
[17:06]
테트리스 게임을 작동시키고
[17:09]
AI를 학습시켰어요
[17:11]
사실 이런 걸 해본 경험이
[17:13]
거의 없었는데도 말이죠
[17:15]
이 영상이 마음에 드셨다면
[17:16]
좋아요와 구독 부탁드립니다
[17:18]
다음 영상에서 만나요