From Translation to Superset: Benchmark-Driven Evolution of a Production AI Agent from Rust to Python

이 논문은 LLM 을 활용한 Rust 에서 Python 으로 대규모 코드베이스의 번역과 벤치마크 기반의 반복적 개선을 통해 Codex CLI 에이전트의 성능을 유지·향상시키고, 15.9 배의 코드 축소와 함께 새로운 기능을 추가한 확장된 플랫폼으로 진화시킨 방법론을 제시합니다.

원저자: Jinhua Wang, Biswa Sengupta

게시일 2026-04-14
📖 3 분 읽기☕ 가벼운 읽기

이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

Each language version is independently generated for its own context, not a direct translation.

1. 배경: 왜 이 일을 했나요? (거대한 도서관의 문제)

제이피모간 체이스 (JP Morgan) 에서는 **'CODEX CLI'**라는 아주 똑똑한 AI 비서가 있습니다. 이 비서는 개발자들이 코드를 짜고 문제를 해결하도록 도와줍니다.

  • 원래 상태 (Rust): 이 비서는 **'Rust'**라는 언어로 만들어졌습니다. Rust 는 매우 안전하고 빠르지만, 매우 까다로운 요리사처럼 비유할 수 있습니다. 재료를 다듬는 데 시간이 오래 걸리고, 레시피 (코드) 가 매우 길고 복잡합니다 (약 65 만 줄).
  • 문제점: 이 레시피가 너무 길고 복잡해서, 새로운 기능을 추가하거나 고치려면 요리사 (개발자) 가 너무 많은 에너지를 써야 했습니다. 게다가 이 레시피는 매일매일 업데이트되는데, 새로운 버전이 나올 때마다 수동으로 옮기는 건 불가능에 가까웠습니다.

해결책: 이 비서를 **'Python(파이썬)'**이라는 언어로 다시 만들어 보자는 아이디어가 나왔습니다. Python 은 유연하고 빠른 요리사처럼, 레시피가 훨씬 짧고 (약 4 만 줄, 15.9 배 줄어듦) 새로운 요리를 쉽게 개발할 수 있습니다.

2. 핵심 방법론: "시험지"로 번역을 다듬다

그런데 단순히 코드를 기계적으로 옮기면 (번역하면) 실수가 생기기 마련입니다. 그래서 연구팀은 아주 독특한 방법을 썼습니다.

  • 기존 방식: 번역이 끝난 후, 개발자가 일일이 "이게 맞나?"라고 확인하는 것 (단위 테스트).
  • 이 논문의 방식: **"실전 시험지 (벤치마크)"**를 사용했습니다.
    • AI 비서에게 실제 개발자들이 겪는 80 개의 어려운 문제 (Terminal-Bench, SWE-bench) 를 풀게 했습니다.
    • 비유: 요리사가 새로운 레시피를 만들면, 맛을 보며 "이게 원래 요리랑 똑같은가?"를 확인하는 게 아니라, 실제 손님 (사용자) 을 불러와서 "이 요리가 원래 요리만큼 맛있는가?"를 평가하게 한 것입니다.
    • 만약 Python 버전이 문제를 못 풀면, AI 가 다시 코드를 수정하고 다시 시험을 봅니다. 이 과정을 반복해서 정답률 (성적) 이 Rust 버전과 비슷해질 때까지 다듬었습니다.

3. 놀라운 결과: 단순한 번역을 넘어 '초능력'을 얻다

결과적으로 Python 버전은 Rust 버전과 **거의 똑같은 실력 (성적)**을 냈습니다.

  • Rust 버전: 80 문제 중 47.5% 해결
  • Python 버전: 80 문제 중 42.5% 해결 (거의 비슷함)

하지만 여기서 끝난 게 아닙니다. Python 버전은 Rust 에 없던 '초능력'까지 추가했습니다.

  • 비유: 원래 Rust 요리사는 '불고기'만 잘 만들었습니다. Python 으로 옮기면서 '불고기'도 똑같이 잘 만들게 되었을 뿐만 아니라, **새로운 메뉴 (다중 에이전트 협업, 음성 모드, 비용 추적 등 30 가지 기능)**까지 추가한 것입니다.
  • 이 새로운 기능들은 스위치 (기능 플래그) 로 켜고 끌 수 있어서, 비교할 때는 원래 기능만 켜고, 필요할 때는 모든 기능을 켜서 쓸 수 있게 만들었습니다.

4. 왜 Python 이 더 나을까요? (속도 vs 효율)

많은 사람이 "Rust 가 더 빠르지 않나?"라고 생각할 수 있습니다. 맞습니다. 하지만 이 AI 비서의 경우, 가장 시간이 걸리는 부분은 요리사 (코드) 가 아니라 '손님 (AI 모델)'이 주문을 내리는 시간입니다.

  • 비유: 요리사가 요리를 만드는 데 1 초 걸리든 0.1 초 걸리든, 손님이 메뉴를 고르고 주문하는 데 10 초가 걸린다면, 요리사의 미세한 속도 차이는 전체 시간의 1% 도 안 됩니다.
  • 결론: Python 으로 바꾸면 코드가 15 배나 줄어들고, 유지보수가 훨씬 쉬워지며, 더 많은 개발자가 참여할 수 있게 됩니다. 성능 저하는 거의 없는데, 효율은 엄청나게 좋아진 셈입니다.

5. 요약: 이 논문이 전하는 메시지

  1. 시험지가 최고의 교정제: 단순히 코드를 옮기는 게 아니라, 실제 문제를 풀어보는 '시험 (벤치마크)'을 통해 번역의 정확도를 높이는 것이 가장 효과적입니다.
  2. 번역은 끝이 아니다: 번역이 끝난 후에도 Python 버전은 계속 발전하여 원래 버전보다 더 많은 기능을 추가할 수 있습니다.
  3. 적합한 도구 선택: AI 가 하는 일 (LLM 호출) 이 가장 느린 부분이라면, 그 주변을 빠르게 처리할 수 있는 Python 이 Rust 보다 더 현명한 선택이 될 수 있습니다.

한 줄 요약:

"어려운 언어 (Rust) 로 만든 복잡한 AI 비서를, 더 쉬운 언어 (Python) 로 옮겼는데, 단순히 똑같이 잘만 하는 게 아니라 더 똑똑하고 기능도 더 많은 비서로 업그레이드하는 데 성공했습니다. 그리고 그 과정에서 실제 시험 (벤치마크) 이 최고의 검증 도구임을 증명했습니다."

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →