dev.to

I Wrote the Code This Time. Does It Count If the Answer Was Wrong?

이번엔 직접 코드를 썼습니다. 답이 틀려도 배운 걸까요?

AI 에이전트로 26개 넘는 프로젝트를 만든 저자가 Stanford의 초급 Python 과정에 지원하며 처음 직접 코드를 작성합니다. 프로그램은 작동했지만 GPT가 틀린 NBA 기록을 자신 있게 답하면서, 코드 작성과 답 검증이 서로 다른 기술임을 보여줍니다.

AI 요약

AI 에이전트를 지휘해 26개 넘는 프로젝트를 출시한 저자는 정작 1부터 10까지 출력하는 Python 프로그램도 직접 작성하지 못했습니다. 이번에는 Stanford의 무료 6주 입문 과정 Code in Place X에 지원하며, 코드 한 줄씩 직접 입력해 보기로 합니다. 초보자 자격을 확인하는 다섯 문제에서 모두 막혔지만, 그 덕분에 지원 조건을 충족합니다.

직접 입력하며 익힌 Python 기초

지원 과제는 사용자에게 색상과 형용사, 목표를 입력받아 문장을 만드는 일이었습니다. 첫 시도에서는 질문 문구와 사용자가 입력할 답을 뒤바꿨고, 다음에는 등호 대신 빼기 기호를 썼습니다. 문장 안의 공백을 빠뜨리거나 마침표를 따옴표 밖에 두기도 했습니다. 테스트는 질문 문구의 철자 하나가 다른 점까지 찾아냈습니다. 코드에서는 화면에 표시하는 문구도 정확히 맞춰야 했습니다.

두 번째 과제는 이름과 주제를 받아 GPT로 하이쿠를 만드는 프로그램이었습니다. 저자는 입력값 두 개와 GPT 호출까지는 구성했지만, 프롬프트에 이름과 주제를 넣지 않았습니다. 값을 연결할 때도 더하기 기호 대신 등호를 넣었습니다. 튜터 역할을 맡은 Claude는 코드를 대신 쓰지 않고, 프롬프트가 텍스트와 변수의 연결로 이뤄진다고 설명했습니다. 저자는 그 설명에 맞춰 기호 하나를 바꾸고 프로그램을 실행했습니다.

프로그램이 작동해도 답은 틀릴 수 있습니다

마지막 과제에서 저자는 자신이 응원하는 LA 레이커스의 역대 최다 득점자를 묻는 프로그램을 만들었습니다. GPT는 Kareem Abdul-Jabbar라고 답했지만, NBA.com 기록에 따르면 1위는 Kobe Bryant로 33,643점입니다. Jerry West가 25,192점으로 2위, Kareem은 24,176점으로 3위입니다. 저자는 프로그램을 네 번 실행했고, GPT는 매번 표현만 달리한 같은 오답을 냈습니다.

프롬프트 앞에 “Research and”를 붙여도 결과는 달라지지 않았습니다. 사용한 GPT에는 인터넷 접속이 없어 실제 조사를 할 수 없었기 때문입니다. Claude도 처음에는 Kareem을 2위라고 잘못 말했고, NBA.com을 확인한 뒤에야 기록을 바로잡았습니다. 저자는 프로그램을 그대로 두었습니다. 코드는 작성한 대로 작동했지만, 답은 GPT가 냈습니다.

저자는 이전 글에서 코드를 직접 타이핑하는 일이 학습의 본질은 아니라고 봤습니다. 이번 경험 뒤에도 그 생각을 대체로 유지하지만, 네 줄을 직접 쓰며 따옴표 안의 공백은 텍스트이고 등호는 값을 변수에 넣을 때 한 번 쓴다는 점을 익혔습니다. 무엇보다 전부터 하던 검증이 여전히 중요하다는 점을 확인했습니다. 저자는 9월 21일 지원서를 제출했고, 합격하면 10월 12일 과정이 시작됩니다.

dev.to 반응

  • @mansio — 정확한 지적입니다. 여기서 아이러니한 점은 Python은 제 역할을 했지만 프롬프트 형식이 엉성했고, LLM이 빈틈을 자신감 넘치는 환각으로 채웠다는 것입니다. 직접 타이핑하면 디버깅에 필요한 문법의 지도가 머릿속에 생깁니다. 하지만 정답을 확인할 기준 데이터가 없다면 프롬프트를 아무리 다듬어도 출력은 구할 수 없습니다.
    • @earlgreyhot1701d — 안녕하세요, @mansio. 동의합니다. 아직 배울 게 많지만, 그래서 이 여정이 재미있다고 생각합니다. 배우고 발견하고 시도하고 실패하면서도 계속 나아가니까요.

원문: dev.to / 번역·요약: Trawling