본문 바로가기
AI

코딩 AI 최강자전: Gemini 2.5 Pro, Claude 3.7 Sonnet, ChatGPT 중 실제 승자는? (EPUB to TXT 변환기 제작 후기)

by J. Herbert 2025. 4. 9.

안녕하세요! 요즘 AI 모델들이 코딩도 엄청 잘한다고 하죠? 특히 Google Gemini나 Claude AI가 코딩 벤치마크에서 높은 점수를 받았다는 소식도 들리고요. 그런데 벤치마크 점수랑 실제 사용 경험은 또 다를 수 있잖아요? "과연 진짜 실력은 어떨까?" 궁금증이 생겼습니다.

마침 제가 개인적으로 필요했던 프로그램이 있어서, 이 참에 주요 AI 모델들에게 코딩 실력 테스트를 한번 해봤습니다. 이름하여 'EPUB to TXT 변환기 제작' 챌린지! 과연 Gemini 2.5 Pro, Claude 3.7 Sonnet, 그리고 ChatGPT 중 누가 이 어려운(?) 미션을 성공했을까요?

코딩 챌린지: 까다로운 요구사항의 EPUB to TXT 변환기

제가 AI에게 요청한 프로그램은 단순히 EPUB 파일을 TXT로 바꾸는 것 이상이었습니다. 나름대로 구체적인 요구사항들을 넣었죠.

핵심 요구사항은 다음과 같았습니다:

  1. 깔끔한 GUI (탭 인터페이스: 파일 선택 탭, 추출/출력 탭)
  2. 단일 파일 & 다중 파일(배치) 변환 지원
  3. 추출 진행 상태를 보여주는 프로그레스 바
  4. 문제 파일 발생 시 에러 처리 기능
  5. 오디오 포함 EPUB에서 MP3 추출 기능(가능하다면)
  6. EPUB 파일 내 특정 중복 콘텐츠 자동 제거 (추출 과정에서)

특히 마지막 6번 요구사항이 핵심이었는데요. 제가 가진 몇몇 EPUB 파일(주로 킨들용)들이 특정 구조 때문에 동일한 텍스트 내용이 두 번씩 반복되는 문제가 있었습니다. (<div class="spread...item"> 내부와 <div class="mag" id="mag..."> 내부에 같은 내용이 중복되는 현상) 이걸 후처리 방식이 아니라, 텍스트 추출 단계에서 AI가 알아서 식별하고 제거해주길 바랐습니다.

실제로 AI에게 전달한 프롬프트는 다음과 같습니다 (영어로 작성했어요):

I need a Python GUI application that can convert EPUB files to TXT files. The application should have these features:
1. A clean interface with tabs: one for selecting files and one for extraction/output
2. Support for both single-file and batch conversion (multiple files at once)
3. A progress bar that shows extraction status
4. Error handling for problematic files
5. If possible, audio extraction for EPUB files with audio and export to MP3 feature
6. Automatic handling of duplicated content in EPUB files - many EPUBs have duplicate text in magnification divs that causes the same content to appear twice in extracted text

For point #6, the duplication happens because some EPUB files (especially those for Kindle) have this structure:
- Content appears once in <div class="spread...item"> elements containing "mag-trigger" divs
- The same content is duplicated again in <div class="mag" id="mag..."> elements

I specifically need the application to identify and remove these duplications during extraction, not as a post-processing step. Multiple EPUB files I've tried have this issue.

The application should export TXT files to the same location as the source files when batch converting, and let me choose the export location for single files.

Please provide the complete Python code that I can copy and paste to run the application right away.

자, 이제 이 까다로운(?) 요구사항을 들고 각 AI 모델들을 찾아갔습니다.

AI 코딩 능력 테스트 결과:

테스트에는 당시 제가 접근 가능했던 주요 모델들을 동원했습니다.

  • Claude 3.7 Sonnet
  • Google Gemini 2.5 Pro
  • ChatGPT 4o
  • ChatGPT o1
  • ChatGPT o1 Pro
  • ChatGPT o3 mini high
  • ChatGPT o3 (NEW!)
  • ChatGPT o4 mini high (NEW!)

결과는 다음과 같았습니다.

Claude 3.7 Sonnet: 매우 잘 됨!

  • 요구사항 대부분을 완벽하게 구현한 파이썬 코드를 한 번에 생성했습니다.
  • 심지어 'extended thinking' 모드 사용은 안 했는데도 매우 정확한 코드를 내놓았습니다.
  • Claude 3.7 Sonnet 코딩 능력에 정말 감탄했습니다. Claude 3.7 버전의 명성을 확인하는 순간이었죠. Claude AI가 왜 코딩 강자로 불리는지 알겠더군요.

Google Gemini 2.5 Pro: 매우 잘 됨!

  • Gemini AI 역시 요구사항을 정확히 이해하고 완벽하게 작동하는 코드를 생성했습니다.
  • 속도도 Claude와 비슷할 정도로 매우 빨랐습니다.
  • 흥미로운 점은, Gemini가 만들어준 GUI 디자인이 Claude 버전보다 음영 처리 등이 들어가 살짝 더 세련된 느낌이었다는 것입니다. 기능적으로 큰 차이는 없었지만요.

ChatGPT o3: 잘 되요!

  • 2025년 4월 16일에 출시된 최신 모델이며, 코드를 한 번에 잘 생성했습니다. 실행을 방해하지 않는 에러가 있기는 했지만, epub에 없는 오디오를 추출하라고 한 제가 잘못인지라...
  • 추론 모델이다 보니 코드 생성에 시간이 조금 걸리긴 했습니다.
  • UI 자체가 다른 두 모델과 다르긴 했지만,사용하는데 차이는 없었습니다. 변환된 결과물도 위 두 모델과 동일하게 좋았습니다.

 

ChatGPT o3가 만든 GUI. Claude와 Gemini와는 조금 다르다.

ChatGPT 4o, o1, o1 Pro, o3 mini high, o4 mini high: 에러 발생

네, 맞습니다. ChatGPT는 이번에 새로 나온 o3를 제외한 모든 버전에서 에러를 뿜어내며 코드를 완성하지 못했습니다. 물론 한두 번 더 프롬프트를 주고받으며 수정했다면 작동하는 코드가 나왔을지도 모르겠습니다. 하지만 Claude와 Gemini가 단 한 번의 요청으로 완벽한 결과물을 내놓은 것을 생각하면, 특히 월 $200짜리 고급 플랜에서 사용하는 o1 Pro 모델조차 그러지 못했다는 사실은 정말 실망스러웠습니다.

바이브 코딩 winner: Claude와 Gemini

솔직히 저는 코딩 전문가가 아닙니다. 하지만 어떤 AI가 실제로 작동하는 코드를 만들어냈고, 어떤 AI가 그렇지 못했는지는 명확하게 알 수 있었죠. 이번 테스트 결과만 놓고 보면, Claude와 Gemini가 더 좋다고 볼 수 있습니다.

특히 Claude 3.7 Sonnet와 Gemini 2.5 Pro는 복잡한 중복 제거 로직까지 포함된 요구사항을 정확히 이해하고, 별다른 수정 없이 바로 실행 가능한 코드를 내놓았습니다. (이번에 새로 나온 ChatGPT o3도 좋았습니다) 이게 바로 사람들이 말하는 바이브 코딩인가 싶더군요. 그냥 '된다'는 느낌, 막힘없이 코드가 나오는 그 '바이브'는 정말 놀라웠습니다. 코딩을 모르는 제 입장에서는 마법 같았죠!

하지만 이 경험을 통해 깨달은 점도 있습니다. AI가 코드를 짜주더라도, 정확하고 효과적인 프롬프트를 작성하기 위해서는 기본적인 '코딩적 사고'(문제를 논리적으로 분해하고 절차를 생각하는 능력)가 필요하다는 것입니다. 뭘 만들어달라고 정확히 요구할 수 있어야 AI도 제대로 일할 수 있겠죠.

결론: 코딩 작업엔 Claude와 Gemini! (적어도 이번엔)

이번 EPUB to TXT 변환기 제작 챌린지의 승자는 Claude 3.7 Sonnet와 Google Gemini 2.5 Pro였습니다. 두 모델 모두 복잡한 요구사항을 훌륭하게 소화하며 실제 작동하는 코드를 빠르게 생성해냈습니다.

이 결과는 제게 꽤 큰 변화를 가져왔습니다. 이전까지는 Claude를 주로 사용했지만, 조금만 복잡한 작업을 시키면 금방 사용량 제한에 걸려 답답할 때가 많았습니다. 그런데 이번 테스트를 통해 (적어도 코딩 분야에서는) Gemini가 Claude를 대체할 수 있는 훌륭한 선택지임을 확인했습니다. 아직 한계까지 써보진 않았지만, Gemini의 사용량 한도가 Claude보다 훨씬 넉넉할 것으로 기대되기 때문에 앞으로 코딩 관련 작업에는 Gemini도 적극적으로 활용해 볼 생각입니다.

물론 이 한 번의 테스트로 모든 AI의 코딩 능력을 일반화할 수는 없습니다. 중요한 것은 벤치마크 점수나 소문만 믿기보다는, 직접 다양한 시나리오에서 AI를 테스트해보고 자신에게 맞는 도구를 찾는 것입니다. 또한, AI 모델만 단독으로 사용하기보다는 Cursor와 같은 AI 기반 코딩 편집기나 다른 개발 도구와 함께 활용할 때 훨씬 더 좋은 결과와 효율을 얻을 수 있다는 점도 기억해야 합니다. 단순히 벤치마크만 보고 모델의 우열을 판단하는 것은 위험할 수 있습니다.

혹시 코딩 관련 작업을 AI에게 맡겨야 한다면, 벤치마크만 믿기보다는 Claude나 Gemini 같은 다른 강력한 옵션들도 꼭 한번 직접 테스트해보시길 권합니다!