테크레시피

IBM “AI 활용해 코볼을 자바로 변환”

지난 1959년 개발된 프로그래밍 언어인 코볼(COBOL)은 자연어에 가까운 명령 구문이 채용되어 금액 계산 등 사무 처리용으로 널리 사용되어 왔다. 반면 코볼은 비효율적 언어로 지적되기도 했다. 8월 22일 IBM이 발표한 왓슨엑스 코드 어시스턴트 포 제트(Watsonx Code Assistant for Z)에선 코드 생성 AI 모델을 이용해 코볼 언어로 작성된 코드를 자바로 변환할 수 있다.

조사에 따르면 프로덕션 환경에서 아용되는 코볼 행수는 전 세계에서 8,000억 행이 넘는다고 한다. 한편 코볼은 전문가가 적고 코볼로 작성된 코드를 자바 등 새로운 프로그래밍 언어로 이행할 때에는 엄청난 노력과 비용이 든다고 보고되고 있다.

하지만 8월 22일 IBM이 발표한 왓슨엑스 코드 어시스턴트 포 제트에선 AI를 이용해 코볼로 작성된 코드를 엔터프라이즈 자바로 자연스럽게 변환할 수 있다. IBM 측은 왓슨엑스 코드 어시스턴트 포 제트가 코드 변환 외에도 이전 코드로 작성된 애플리케이션을 최신 시스템으로 대체하는 작업을 지원한다며 최신 아키텍처에서 번역된 코드를 이해, 재검증, 변환하는데 도움이 될 것이라고 밝히고 있다.

왓슨엑스 코드 어시스턴트 포 제트는 1.5조개 토큰을 이용해 학습되고 115개 코딩 언어에 대한 지식을 갖고 있는 IBM 왓슨엑스닷에이아이(watsonx.ai)에 의해 강화되고 있다고 한다. 또 80개 다른 프로그래밍 언어를 이해할 수 있는 IBM 대규모 데이터세트인 코드넷(CodeNet)도 이용했다.

현재 코볼을 자바 구문으로 바꾸기 위한 도구, 앱, 서비스는 아마존 코드위스퍼러(Amazon CodeWhisperer)를 비롯해 다수 출시했다. 하지만 IBM 측은 경쟁 제품과 달리 왓슨엑스 코드 어시스턴트 포 제트는 변환 비용을 줄이면서 보수가 용이한 코드를 생성하면서도 코볼의 편리한 기능을 희생하지 않기 위한 조치를 강구하고 잇다고 주장하고 있다.

또 왓슨엑스 코드 어시스턴트 포 제트는 코볼과 자바 서비스를 결합해 사용할 수 있도록 설계되어 있다. 특정 서비스를 코볼에서 유지해야 할 경우 해당 서비스를 뺀 다른 서비스가 자바로 변환된다. IBM 측은 왓슨엑스 코드 어시스턴트 포 제트를 도입해 최적화된 코드를 빠르고 정확하게 변환하고 애플리케이션 시장 출시 시간 단축, 새로운 기능을 추가할 수 있다고 밝혔다.

한편 코드 생성 AI에는 생성된 코드에 취약성을 일으키는 코드를 포함할 가능성이 지적되고 있다. 따라서 IBM 측은 왓슨엑스 코드 어시스턴트 포 제트에서 생성된 코드를 인간 엔지니어가 검증하기 전에 프로덕션 환경에 배포하지 않는 게 좋다며 다른 AI 시스템과 마찬가지로 기업 내 코볼로 작성된 애플리케이션에는 왓슨엑스 코드 어시스턴트 포 제트가 아직 습득하지 않은 독자 패턴이 포함되어 있을 가능성이 있다고 밝혔다. 왓슨엑스 코드 어시스턴트 포 제트는 2023년 4분기 일반 사용자에게 제공될 예정이다. 관련 내용은 이곳에서 확인할 수 있다.

이석원 기자

월간 아하PC, HowPC 잡지시대를 거쳐 지디넷, 전자신문인터넷 부장, 컨슈머저널 이버즈 편집장, 테크홀릭 발행인, 벤처스퀘어 편집장 등 온라인 IT 매체에서 '기술시대'를 지켜봐 왔다. 여전히 활력 넘치게 변화하는 이 시장이 궁금하다.

뉴스레터 구독