AI 코딩 에이전트, 연구 소프트웨어 혁신 이끌지만 '과학적 검증'엔 한계
OpenAI와 학계의 연구 보고서에 따르면, AI 코딩 에이전트가 노후화된 과학 연구용 소프트웨어를 현대화하고 최대 60배 이상의 처리 속도 향상을 이끌어낼 수 있습니다. 하지만 AI는 코드를 매우 빠르게 작성할 뿐, 해당 결과가 과학적으로 옳은지 스스로 판단하고 검증하는 데에는 여전히 치명적인 한계를 보입니다. 따라서 연구자들은 AI가 제안하는 코드를 맹신하지 말고 전문가의 검토와 독립적인 테스트를 병행해야 합니다.
AI 코딩 에이전트는 연구 소프트웨어를 현대화할 수 있지만, 과학적으로 옳은지 판단할 수는 없다.
OpenAI와 학계 협력자들의 현장 보고서에 따르면, 코딩 에이전트가 노후화된 연구용 소프트웨어를 업데이트하고 속도를 높일 수 있는 것으로 나타났습니다. 하지만 연구자들의 작업 대부분은 단순히 코드를 작성하는 것에서 결과를 검증하는 것으로 무게 중심이 이동하게 됩니다.
현재 널리 사용되는 많은 연구 도구들은 단순히 하나의 논문을 뒷받침하기 위한 보조 코드로 시작되었습니다. 소규모 학술 연구팀은 이를 제대로 테스트, 유지 관리 또는 최적화할 시간이나 자원 없이 작성하는 경우가 많았습니다. 그 결과, 해당 분야 전체에 필수적이지만 끊임없는 수리가 필요한 불안정한 소프트웨어들이 남게 되었습니다. OpenAI와 학계 파트너들의 현장 보고서는 AI 코딩 에이전트가 이러한 간극을 줄이는 데 도움을 줄 수 있음을 시사합니다.
이 보고서는 주로 생물학 분야에서 연구팀이 Codex 및 Claude Code와 같은 코딩 에이전트를 사용한 8개의 사례를 기록했습니다. 프로젝트의 범위는 기본 유지 관리 및 대상별 최적화부터 최신 프로그래밍 언어로의 전면 재작성에 이르기까지 다양했습니다.
코딩 에이전트, 최대 60배 이상의 속도 향상 달성
비교적 간단한 프로젝트 중 하나는 유전 데이터를 읽기 위한 파이썬 라이브러리인 cyvcf2를 현대화하는 것이었습니다. GPT-5.5는 오래된 빌드 및 설치 프로세스를 최신 방식으로 교체했습니다. MHCflurry 마이그레이션은 훨씬 더 복잡했습니다. MHCflurry는 면역 세포가 인식할 표적을 예측하는 면역학 모델입니다. Claude Code와 Codex는 약 1만 줄의 코드를 TensorFlow에서 PyTorch로 포팅하는 동안 개발자와 리뷰어의 역할을 번갈아 수행했습니다.
rustar-aligner 프로젝트는 더욱 야심 찼습니다. 이 프로젝트는 STAR(세포의 시퀀싱 리드를 게놈의 해당 위치에 매핑하는 도구)를 Rust 언어로 처음부터 다시 구축했습니다. 원본은 2만 줄 이상의 C 및 C++ 코드로 이루어져 있으며, 많은 연구 파이프라인의 일부로 여전히 사용되고 있음에도 불구하고 더 이상 활발하게 유지 관리되지 않습니다. 재작성된 버전이 원본과 동일하게 작동하는지 확인하기 위해 팀은 효모 세포에서 추출한 1만 개의 짧은 시퀀싱 리드로 두 도구를 모두 테스트했습니다. 단일 엔드 리드(single-end reads)의 경우 rustar-aligner는 99.815%의 사례에서 STAR와 동일한 결과를 생성했습니다. 페어드 엔드 리드(paired-end reads)의 경우 일치율은 99.883%였습니다. 이 비교는 게놈 내 매핑된 위치뿐만 아니라 두 프로그램이 각 리드에 대해 생성하는 여러 핵심 필드도 포함했습니다. 한 도구가 매핑하지 못한 리드를 다른 도구도 매핑하지 못하는 등 두 도구 간의 누락도 없었습니다.
RustQC는 15개의 개별 품질 관리 도구를 단일 프로그램으로 결합하여 가장 큰 속도 향상을 달성했습니다. 대규모 데이터셋에서 런타임이 15시간 34분에서 14분 54초로 줄어들어 60배 이상 빨라졌습니다. 또 다른 프로젝트인 HelixForge는 합성 게놈 데이터를 생성하는 도구를 GPU에서 실행되는 버전으로 교체했습니다. 한 기부자의 데이터와 1천만 염기쌍 길이의 게놈 섹션을 사용한 테스트에서 HelixForge는 BamSurgeon보다 전체 파이프라인을 59.6배 더 빨리 완료했습니다. 주요 컴퓨팅 단계만 놓고 보면 무려 98.6배 더 빨랐습니다.
빠른 코드가 반드시 올바른 과학을 담보하지는 않는다
여러 사례를 살펴보면, 에이전트는 명확하게 정의된 작업을 빠르게 완료했지만 자신의 작업이 과학적으로 올바른지 판단하는 데는 신뢰성이 떨어졌습니다. 코드에 오류가 포함되어 있더라도 시스템은 종종 이를 매우 확신에 찬 태도로 제시했습니다. cyvcf2 개발자인 브렌트 페더슨(Brent Pedersen)은 "코딩 에이전트를 사용하면 빠르게 진행하기는 매우 쉽습니다. 하지만 현재로서 과학 분야에서 더 깊고 멀리 나아가기 위해서는 여전히 전문가의 안내, 이해, 안목, 그리고 세심함이 필요합니다"라고 말합니다. RustQC를 이끈 필립 에웰스(Philip Ewels)는 에이전트를 "유창하고, 설득력 있으며, 놓치기 쉬운 방식으로 당당하게 틀린 말을 한다"고 묘사했습니다. 그는 모델이 자체 작업의 정확성을 판단하도록 허용한 적이 없으며, 대신 독립적인 테스트 도구를 구축했습니다.
bayesm 사례 연구는 이러한 오류를 잡아내는 것이 얼마나 어려울 수 있는지 보여줍니다. Rust 언어로 재작성된 버전은 원본보다 2배에서 20배 더 빠르게 실행되었지만, 두 가지 고급 방법의 초기 버전에는 출력 결과만으로는 발견하기 어려운 오류가 포함되어 있었습니다. 한 방법에서 에이전트는 핵심 제어 매개변수를 반전시켜 오류를 초래했습니다.