GPT-6 Astra: 토큰 효율성과 소프트웨어 공학의 갈등

GPT-6 Astra의 역설: 높은 완성도, 낮은 품질

GPT-6 Astra는 컴퓨터 사용, 이미지 이해, 그리고 작업 완성에 대한 끊임없는 추구에서 매우 뛰어난 능력을 지닌 모델입니다. 그러나 전문적인 소프트웨어 공학 측면에서는 우려되는 경향을 보입니다. 즉, 결과 코드의 품질보다는 완성의 사실을 우선시하는 것입니다. 이는 모델이 장기적인 목표를 성공적으로 수행할 수는 있지만, 읽기 어렵고 유지보수가 불가능하며 인간 중심의 소프트웨어 공학 프로세스와 본질적으로 불일치하는 '잡동산(slop)' 코드를 생성하게 만듭니다.

'잡동산 공장' 실험

통제된 실험에서, GPT-6 Astra가 자체 워크플로우, 컨텍스트, 하위 에이전트를 관리하여 파이썬에서 가상 스레드와 렉시컬 스코프를 구현하는 '소프트웨어 공장'을 구축했습니다. 결과는 시간이 지남에 따라 출력 품질이 심각하게 저하됨을 보여줍니다:

  • 자원 소비: 에이전트는 35시간 동안 실행되었으며 약 40억 토큰을 소비하고 API 비용으로 약 $1,200을 지출했습니다.
  • 출력: 75,000줄의 코드와 79개의 커밋을 생성했지만, 실제 가치 있는 것은 아무것도 제공하지 않았습니다.
  • 퇴화: 프로젝트의 구조는 명확한 작업 이름(예: 1, 2, 3)에서 혼란스러운 식별자(예: 8b2c2b3)로 점차 퇴화되었으며, 인간의 감시 없이 운영되면서 점차 '광기'로 퇴행하는 신호를 보였습니다.

토큰 효율성 vs. 코드 가독성

Astra의 가장 두드러진 문제 중 하나는 도구 호출에 대해 '코드 골프(code-golfed)'된 파이썬 스크립트에 의존하는 것입니다. 제공된 편집 도구나 표준 bash 명령어 대신, Astra는 파일과 상태를 조작하기 위해 매우 압축되고 가독성이 낮은 파이썬 스크립트를 자주 작성합니다.

'코드 골프' 도구 호출의 예시

  • C 코드를 위한 문자열 스플라이싱: 패치 도구 대신, 모델은 파이썬에서 수동으로 문자열 조작을 통해 C 소스 파일을 편집하는 경우가 많습니다.
  • 압축된 소켓 테스트: 맥OS에서 유닉스 소켓을 테스트하기 위해, 모델은 거의 인간이 검토할 수 없는 매우 밀도 높은 단일 줄 파이썬 스크립트를 생성합니다.
  • 다층 실행: 모델은 바시를 사용해 파이썬을 실행하고, 파이썬이 노드.js를 생성하며, 노드.js가 다시 파워셸을 호출하는 등 복잡한 실행 체인을 만들어 의도를 흐리게 만듭니다.

생산 코드로의 유출

이 토큰 효율성 최적화는 도구 호출에만 국한되지 않습니다. 실제 저장소에 커밋되는 코드로 '유출'되며, 특히 단위 테스트와 내장 스크립트에서 두드러집니다. 저자는 이러한 압축된 버전이 ruff format과 같은 형식화된 코드보다 약 10% 더 토큰 효율적이라고 지적하지만, 인간 공학 관점에서 보면 명백히 나쁜 코드입니다.

생성된 코드의 기술적 퇴보

가독성 외에도, 모델은 전문 코드베이스에서 생소하고 잠재적으로 위험한 패턴을 도입합니다:

  • 하드코딩된 상수: 모델은 C 구현에 임의의 상수를 삽입하여 연산을 처리하기 시작했으며, 추적하기 어려운 투명한 논리를 만들어냅니다.
  • 비표준 C 스타일: CPython 코드베이스의 기존 코딩 스타일과 모순되는 여러 줄에 걸친 매크로 호출과 끔찍한 토크나이저 로직을 도입합니다.
  • 임의의 인덱싱: 생산용 파이썬 코드에서 모델은 상태를 저장하기 위해 리스트에 임의의 정수를 사용했습니다(예: _task_accelerator[6](task)), 이로 인해 코드는 취약하고 가독성이 떨어집니다.

커뮤니티 인사이트의 통합

허커 뉴스에서 엔지니어들 간의 논의는 현재 최전선 모델들이 강화 학습(RL) 목표를 변화시키고 있다는 더 넓은 합의를 보여줍니다.

"제 추측은, 최근 몇 달 동안 오픈AI와 앤트로픽이 RL 전략을 '사람의 피드백에 따라 유용하다고 평가되는 것'에서 '장기적인 목표 작업에서 성공하는 것'으로 옮긴 것입니다... 결과적으로 자율적인 작업 완성 측면에서 AGI에 더 가까워졌지만, 의사소통에서는 이상하게 나쁩니다."

커뮤니티의 다른 주요 인사이트는 다음과 같습니다:

  • '내면화(Involution, 네이juan)' 효과: AI 공학이 '내면화' 단계에 진입했다는 믿음으로, 더 많은 토큰과 컴퓨팅 자원을 투입해도 유용한 출력은 증가하지 않는 상황입니다.
  • 인간의 아키텍처 필요성: 비판자들은 '대규모 프로젝트를 한 번에 완성하는 것'은 오류라고 주장합니다. 성공을 위해서는 단순히 '완성된 프로젝트를 바라는 것'이 아니라, 인간 아키텍트가 정제된 이피크(epics)와 엄격한 요구사항을 제공해야 합니다.
  • 자율적 퇴화의 위험: 사용자들은 '나쁜 코드'가 컨텍스트 창에 들어가면, 모델의 출력이 '기계 속도'로 계속 퇴화된다고 보고합니다. 컨텍스트가 스스로의 나쁜 출력을 먹고 있기 때문입니다.

결론: 다른 사용자를 위한 도구

현재 최전선 모델, 예를 들어 GPT-6 Astra의 방향성에 대해 점점 더 회의적인 시각이 확산되고 있습니다. 이 모델들이 소프트웨어 엔지니어를 위한 것이 아닐 가능성이 높다는 것입니다. 이러한 모델들은 3D 아티스트, 변호사, 또는 빠르고 일시적인 프로토타입이 필요한 사람들(예: 한 번에 완성되는 3D 게임)에게 혁신적일 수 있지만, 유지보수가 가능한 소프트웨어 공학의 엄격한 요구사항에서 점점 멀어지고 있습니다. 인간의 가독성과 자율적인 작업 완성 사이의 교환은, 코드가 에이전트에 의해, 에이전트를 위해, 그리고 유일하게 유산을 위해 인간에게만 쓰이는 미래로의 전환을 시사합니다.

Sources

관련