[독점] 美 카네기멜론대학교, AI 기반 프로그래밍 언어 12종 코드 생성 프로그램 '폴리코더' 개발

고다솔

sol0122@hanmail.net | 2022-03-08 17:26:20

인공지능(AI)의 텍스트 작성 능력 향상과 함께 깃허브의 코파일럿(Copilot)과 오픈AI(OpenAI)의 코덱스(Codex) 등 개발자의 코드 작성 작업을 효율적으로 돕겠다고 선언하는 AI 코드 작업 툴이 등장했다.

그리고 미국 온라인 테크 매체 벤처비트가 또 다른 AI 기반 코드 작성 툴 ‘폴리코더(PolyCoder)’의 등장 소식을 보도했다.

폴리코드는 미국 카네기멜론대학교 연구팀이 오픈AI의 언어 모델 GPT-2를 기반으로 제작됐으며, 총 249GB 상당의 프로그래밍 언어 12종의 코드로 훈련 과정을 거쳤다. 사실, 폴리코더는 최고급 코드 생성 프로그램만큼 성능이 우수하지 않다. 그러나 연구팀은 폴리코드가 코덱스 등 인지도가 높은 대다수 AI 코드 작성 모델보다 더 정확히 C언어 코드를 작성할 수 있다고 주장한다.

연구팀은 대다수 AI 코드 작성 프로그램이 다량의 데이터를 훈련하지 않는다는 점에 주목했다. 또, 대기업은 자체 개발한 프로그램을 제대로 공개하지 않아 과학 연구와 대규모 언어 모델의 코드를 사용하는 데 어려움이 있다는 제약도 염두에 두었다. 그리고 대규모 데이터 훈련 과정을 거쳐 누구나 연구에 활용하도록 폴리코더 개발에 나섰다.

연구팀은 매체에 보낸 메일을 통해 “깃허브의 코파일럿은 개발자의 작업에 도움을 주면서 생산성을 높일 수 있는 유용한 코드 작성 언어 모델로 주목받았다. 그러나 실질적으로 코파일럿과 같은 대규모 AI 코드 작성 프로그램 중 누구나 공개적으로 활용할 수 있는 프로그램은 없다”라며, “폴리코드는 총 27억 가지 변수를 포함한 연구실 서버로 훈련할 수 있는 AI 코드 작성 모델 규모 수준을 확인하고자 하는 과정에서 개발이 시작됐다”라고 밝혔다.

이어, “폴리코더를 개발하게 된 궁극적인 이유는 커뮤니티가 AI 코드 작성 모델을 자체 훈련하도록 지원하는 것이다. 폴리코더는 단일 서버로 훈련할 때의 한계를 극복했다. 또, 대규모 서버에는 서버 클러스터가 필요해 거액을 지출해야 한다는 한계도 극복했다”라고 말했다.

연구팀은 폴리코더를 개발하면서 코덱스의 API를 활용하는 등 여러 코드 생성 AI 시스템의 성능과 비교 작업을 거치기도 했다. 이 과정에서 연구팀은 대다수 모델이 영문 텍스트로 훈련을 받았으며, 코드 생성에 훌륭한 소스코드는 그리 많지 않다는 사실을 확인했다.

연구팀은 "강력한 코드 생성 모델을 구축하기 위한 유망한 접근법은 광범위한 프로그래밍 언어의 코드뿐만 아니라 코드와 관련된 웹 주변의 텍스트를 포함하여 프로그래밍 지식의 다양한 원천에 대해 훈련하는 것으로 보인다"라고 전했다.

다만, 연구팀은 폴리코더가 버그를 포함한 프로그램을 생성할 수 있다는 점을 언급하며, 아직은 100% 완벽하지 않다는 사실을 인정했다. 이와 관련, 연구팀은 코드 생성 모델에 악의적인 행위를 숨기거나 합법적인 코드 생성 모델이 제시할 수도 있는 취약한 코드를 업로드할 수 있다는 우려를 제기했다.

그리고 보안 문제의 한 가지 해결책으로 오픈소스 코덱스와 같은 규모의 모델을 언급했다. 실제 보안 연구원이 AI 코드 생성 모델의 실패 모드를 찾는 데 활용할 수 있기 때문이다. 또, 개발자가 모델을 맞춤화하거나 새로운 프로그래밍 언어를 교육할 수 있어, 모델을 처음부터 훈련하는 것보다 비용 효율성이 우수하다는 장점도 있다.

[ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

WEEKLY HOT