AI 코딩 테스트 ChatGPT와 비교하여 Claude 3.5 Sonnet을 비교했지만 창의적으로 실패했습니다.
Anthropic은 업데이트된 AI 도구가 프로그래밍에 이상적이라고 주장합니다. Claude 3.5 Sonnet을 네 가지 표준 프로그래밍 테스트에 적용한 후 몇 가지 조언을 드립니다.
지난주에 저는 Anthropic으로부터 Claude 3.5 Sonnet을 사용할 수 있다는 이메일을 받았습니다. AI 회사에 따르면 "Claude 3.5 Sonnet은 다양한 평가에서 경쟁사 모델과 Claude 3 Opus를 능가하여 지능에 대한 업계 기준을 높였습니다."
회사는 "Claude 3.5 Sonnet은 코드 생성과 같은 복잡한 작업에 이상적입니다."라고 덧붙였습니다. 나는 그것이 사실인지 확인하기로 결정했습니다.
새로운 Claude 3.5 Sonnet 모델을 표준 코딩 테스트 세트에 적용하겠습니다. 이 테스트는 광범위한 AI를 대상으로 실행하여 다양한 결과를 얻었습니다. 자신만의 테스트를 따라해보고 싶으십니까? 브라우저에서 AI 챗봇의 코딩 능력을 테스트하는 방법으로 이동하세요. 여기에는 제가 적용한 모든 표준 테스트, 작동 방식에 대한 설명, 결과에서 확인할 내용이 포함되어 있습니다.
이제 각 테스트의 결과를 자세히 살펴보고 Microsoft Copilot, Meta AI, Meta Code Llama, Google Gemini Advanced 및 ChatGPT를 사용한 이전 테스트와 비교해 보겠습니다.
1. WordPress 플러그인 작성
처음에는 이것이 너무 많은 가능성을 가지고 있는 것처럼 보였습니다. 테스트 프롬프트를 기반으로 생성된 Claude 3.5 Sonnet 사용자 인터페이스부터 시작해 보겠습니다.
AI가 두 데이터 필드를 나란히 배치하기로 결정한 것은 이번이 처음입니다. 구성이 깔끔하고 보기 좋네요.
Claude는 또한 AI가 한 번도 본 적이 없는 다른 일을 하기로 결정했습니다. 이 플러그인은 WordPress 서버의 백엔드에서 실행되는 코드인 PHP 코드만 사용하여 생성할 수 있습니다.
그러나 일부 AI 구현에는 JavaScript 코드(동적 사용자 인터페이스 기능을 제어하기 위해 브라우저에서 실행됨)와 CSS 코드(브라우저가 정보를 표시하는 방법을 제어함)도 추가되었습니다.
PHP 환경에서 PHP, JavaScript, CSS가 필요한 경우 PHP 코드에 바로 CSS와 JavaScript를 포함하거나(PHP의 기능) 코드를 세 개의 별도 파일에 넣을 수 있습니다. PHP, 하나는 JavaScript용, 하나는 CSS용입니다.
일반적으로 AI가 세 가지 언어를 모두 사용하려는 경우 PHP 파일에 잘라내어 붙여넣어야 할 내용을 표시한 다음, 다른 블록을 잘라내어 JavaScript 파일에 붙여넣고, 세 번째 블록을 잘라서 붙여넣어야 합니다. CSS 파일.
그러나 Claude는 단지 하나의 PHP 파일을 제공한 다음 실행 시 JavaScript 및 CSS 파일을 플러그인의 홈 디렉토리에 자동 생성했습니다. 이것은 상당히 인상적이면서도 다소 잘못된 내용입니다. 플러그인 생성 프로세스를 더 쉽게 만들려고 노력한 것은 멋지지만 플러그인이 자체 폴더에 쓸 수 있는지 여부는 OS 구성 설정에 따라 다르며 실패할 가능성이 매우 높습니다.
테스트 환경에서는 허용했지만 프로덕션 환경에서는 플러그인이 자체 코드를 다시 작성하는 것을 결코 허용하지 않았습니다. 이는 매우 심각한 보안 결함입니다.
Claude의 코드 생성 솔루션의 상당히 창의적인 특성에도 불구하고 결론은 플러그인이 실패했다는 것입니다. Randomize 버튼을 눌러도 아무 일도 일어나지 않습니다. 내가 말했듯이 너무 많은 약속이 있었기 때문에 그것은 슬픈 일입니다.
이번 테스트와 이전 테스트의 종합 결과는 다음과 같습니다.
- Claude 3.5 Sonnet: 인터페이스: 양호, 기능성: 실패
- ChatGPT GPT-4o: 인터페이스: 좋음, 기능: 좋음
- Microsoft Copilot: 인터페이스: 적합, 기능: 실패
- Meta AI: 인터페이스: 적절, 기능성: 실패
- 메타 코드 라마: 완전한 실패
- Google Gemini Advanced: 인터페이스: 좋음, 기능: 실패
- ChatGPT 4: 인터페이스: 좋음, 기능: 좋음
- ChatGPT 3.5: 인터페이스: 좋음, 기능: 좋음
2. 문자열 함수 다시 작성
이 테스트는 AI가 주어진 요구 사항에 더 적절하게 작동하도록 코드를 다시 작성하는 방법을 평가하도록 설계되었습니다. 이 경우에는 달러와 센트 변환입니다.
Claude 3.5 Sonnet 개정판에서는 선행 0을 적절하게 제거하여 "000123"과 같은 항목이 "123"으로 처리되도록 했습니다. 소수점 이하 두 자리까지의 정수와 소수를 올바르게 허용합니다(프롬프트에서 요청한 주요 수정 사항임). 음수 값을 방지합니다. 그리고 이상하거나 예상치 못한 입력에 대해 "0"을 반환할 만큼 똑똑하여 코드가 비정상적으로 오류로 끝나는 것을 방지합니다.
한 가지 실패는 소수 값만 입력하는 것을 허용하지 않는다는 것입니다. 따라서 사용자가 "0.50" 대신 ".50"으로 50센트를 입력하면 입력이 실패합니다. 테스트에 대한 원본 텍스트 설명이 어떻게 작성되었는지에 따라 이러한 입력 형식을 허용해야 합니다.
수정된 코드는 대부분 작동했지만 코드를 프로덕션 프로젝트에 붙여넣으면 사용자가 센트 값만 포함된 입력을 입력할 수 없기 때문에 이를 실패로 간주해야 합니다.
이번 테스트와 이전 테스트의 종합 결과는 다음과 같습니다.
- 클로드 3.5 소네트: 실패
- ChatGPT GPT-4o: 성공
- Microsoft Copilot: 실패
- 메타 AI: 실패
- 메타 코드 라마: 성공
- Google Gemini 고급: 실패
- ChatGPT 4: 성공
- ChatGPT 3.5: 성공
3. 짜증나는 버그 찾기
이 테스트의 가장 큰 과제는 AI가 명확하지 않은 버그를 찾는 임무를 맡고 있으며 올바르게 해결하려면 WordPress 플랫폼에 대한 플랫폼 지식이 필요하다는 것입니다. 또한 제가 직접 발견하지 못한 버그이기도 하며 원래는 ChatGPT에 해결을 요청했습니다(해결되었습니다).
Claude는 오류의 미묘함을 파악하고 수정하는 등 이 작업을 올바르게 수행했을 뿐만 아니라 게시 프로세스에서 샘플 쿼리에 오류가 발생했다는 사실을 파악하기 위해 전체 테스트 세트를 온라인에 게시한 이후 최초의 AI이기도 했습니다. (나중에 수정하여 다시 게시했습니다).
이번 테스트와 이전 테스트의 종합 결과는 다음과 같습니다.
- 클로드 3.5 소네트: 성공
- ChatGPT GPT-4o: 성공
- Microsoft Copilot: 실패했습니다. 훌륭하게. 열정적으로. 이모티콘으로.
- 메타 AI: 성공
- 메타 코드 라마: 실패
- Google Gemini 고급: 실패
- ChatGPT 4: 성공
- ChatGPT 3.5: 성공
지금까지 3번 중 2번은 실패했습니다. 마지막 테스트로 넘어가겠습니다.
4. 스크립트 작성
이 테스트는 AI의 프로그래밍 지식이 전문 프로그래밍 도구에 얼마나 적용되는지 확인하기 위해 고안되었습니다. AppleScript는 Mac의 스크립팅에 매우 일반적이지만 Keyboard Maestro는 호주의 한 프로그래머가 판매하는 상용 응용 프로그램입니다. 꼭 필요하다고 생각하지만 Mac에 있는 많은 앱 중 하나일 뿐입니다.
그러나 ChatGPT에서 테스트할 때 ChatGPT는 Keyboard Maestro와 AppleScript를 "말하는" 방법을 알고 있었으며 이는 프로그래밍 언어 지식이 얼마나 광범위한지 보여줍니다.
불행하게도 클로드는 그런 지식을 갖고 있지 않습니다. Chrome과 대화를 시도하는 AppleScript를 작성했지만(테스트 매개변수의 일부) 필수 Keyboard Maestro 구성 요소를 무시했습니다.
더 나쁜 것은 AppleScript에서 런타임 오류를 생성하는 코드를 생성했다는 것입니다. 테스트에서 일치하는 경우를 무시하기 위해 Claude는 다음 줄을 생성했습니다.
if theTab's title contains input ignoring case then"contains" 문은 대소문자를 구분하지 않고 "대소문자 무시"라는 문구는 해당 위치에 속하지 않기 때문에 이는 거의 이중 오류입니다. 이로 인해 "이 이후에는 무시할 수 없습니다" 구문 오류 메시지와 함께 스크립트 오류가 발생했습니다.
이번 테스트와 이전 테스트의 종합 결과는 다음과 같습니다.
- 클로드 3.5 소네트: 실패
- ChatGPT GPT-4o: 성공했지만 예약이 있음
- Microsoft Copilot: 실패
- 메타 AI: 실패
- 메타 코드 라마: 실패
- Google Gemini 고급: 성공
- ChatGPT 4: 성공
- ChatGPT 3.5: 실패
전체 결과
다섯 가지 테스트의 전체 결과는 다음과 같습니다.
- Claude 3.5 Sonnet: 4개 중 1개 성공
- ChatGPT GPT-4o: 4개 중 4개가 성공했지만 이상한 이중 선택 답변이 하나 있습니다.
- Microsoft Copilot: 4개 중 0개 성공
- Meta AI: 4개 중 1개 성공
- 메타 코드 라마: 4개 중 1개 성공
- Google Gemini Advanced: 4개 중 1개 성공
- ChatGPT 4: 4개 중 4개 성공
- ChatGPT 3.5: 4개 중 3개 성공
나는 Claude 3.5 Sonnet에 대해 다소 당황했습니다. 회사는 이 버전이 프로그래밍에 적합하다고 구체적으로 약속했습니다. 하지만 보시다시피 그렇게 많지는 않습니다. 프로그래밍을 못하는 것은 아닙니다. 단지 올바르게 프로그래밍할 수 없을 뿐입니다.
특히 플랫폼 및 프로그래밍 환경 공급업체가 이러한 다른 모델을 프로그래밍 프로세스에 직접 통합하기 시작함에 따라 저는 ChatGPT 솔루션을 가장 잘 활용할 수 있는 AI를 계속 찾고 있습니다. 하지만 지금은 프로그래밍 도움이 필요할 때 ChatGPT로 돌아가겠습니다. 이것이 여러분에게 드리는 조언이기도 합니다.
프로그래밍을 돕기 위해 AI를 사용해 보셨나요? 어느 것? 어떻게 됐나요? 아래 댓글을 통해 알려주세요.
소셜 미디어에서 저의 일상적인 프로젝트 업데이트를 팔로우하실 수 있습니다. 주간 업데이트 뉴스레터를 구독하고 Twitter/X(@DavidGewirtz), Facebook(Facebook.com/DavidGewirtz), Instagram(Instagram.com/DavidGewirtz), YouTube(YouTube.com/DavidGewirtzTV)에서 저를 팔로우하세요.

