LG CNS, 코드 생성AI 'AI 코딩' 공개
LG CNS가 챗GPT 기반의 코드 생성AI 'AI 코딩'을 개발했다고 28일 밝혔다. AI 코딩은 시스템, 애플리케이션, 서비스 등을 구축할 때, 개발자의 코딩 업무를 지원하는 생성AI 서비스다. LG CNS는 제조·금융·유통 등 고객사의 시스템 통합(SI), 시스템 운영(SM) 프로젝트에 AI 코딩을 사용할 계획이다. 현재 구매시스템, 계약서 관리시스템 등 다수의 사내시스템 운영 뿐만 아니라 외부 고객사 유통/물류 차세대 시스템, LG 계열사 시스템 구축에 AI 코딩을 적용 중이다. AI 코딩 기반의 시스템 개발로 품질 향상, 기간 단축 등을 통해 고객사 서비스 개발 생산성을 30% 이상 높일 수 있을 것으로 기대하고 있다. LG CNS는 AI 코딩 오케스트레이터 기술과 챗GPT를 기반으로 AI 코딩을 개발했다. 오케스트레이터는 챗GPT를 포함한 '대규모 언어모델(LLM)'이 고객사 데이터를 기반으로 사용자에게 답변 가능하도록 연계 역할을 하는 기술이다. 챗GPT는 공개된 데이터만을 학습한 모델이기 때문에, 특정 기업이 보유한 데이터는 알지 못한다. 오케스트레이터는 사전에 학습한 기업 데이터와 프롬프트(Prompt)를 구성해 챗GPT에 제공한다. 프롬프트는 챗GPT의 답변 정확도를 높일 수 있도록 질문하는 노하우를 담아 질문을 최적화하는 기능이다. 챗GPT 활용의 이슈인 정보 유출 방지 기능도 담고 있다. 금융권에서 챗GPT를 사용하는 경우, 고객 이름, 생년월일, 자산규모 등 개인정보를 실수로 입력하더라도, 오케스트레이터가 이를 감지하고 마스킹 하는 등 가명정보 처리해 해당 정보가 외부로 유출되지 않도록 한다. 챗GPT가 기업용으로 사용될 때는 오케스트레이터가 중요한 역할을 수행한다. AI 코딩에 적용된 오케스트레이터는 특정 고객사 SI/SM 프로젝트에서 사용하는 ▲코딩 표준 ▲시스템 개발 환경 ▲보안 수준 ▲성능 기준 등에 대한 정보를 챗GPT에 제공한다. 챗GPT는 제공받은 데이터를 분석해 기업 맞춤형으로 자동 코딩을 실시한다. 같은 결과를 산출하는 프로그램이라도, 개발자들의 성향이나 수준에 따라 각자 다른 방식의 코드를 작성하게 된다. AI 코딩은 해당 프로젝트 개발자들이 사용하는 코딩 표준에 따라 동일한 품질의 코드를 생성할 수 있다. 또한, 자바(JAVA)나 C언어 등 시스템 개발 환경, 온프레미스와 클라우드 등의 시스템 운영 환경을 반영해 코딩을 실시한다. 이와 같이 LG CNS 'AI 코딩'은 업계에 출시된 일반적인 코딩 AI 프로그램들과 달리, SI/SM 프로젝트의 코딩 표준과 개발 환경 특성을 반영한 코딩이 가능하다는 것이 차별점이다. LG CNS 'AI 코딩'은 개발자의 요구사항에 따라 ▲코드변환 ▲코드생성 ▲코드추천 ▲코드 품질검사 등 다양한 기능을 지원한다. 코드변환은 과거의 코드를 현재 시스템 버전에 맞는 코드로 변환해주는 기능이다. 예를 들어, C언어로 개발된 시스템을 자바에 맞는 코드로 변환하는 방식이다. 버전이 다른 자바 간의 코드 변환도 가능하다. 코드생성은 개발자가 자연어로 명령하는 내용에 따라, 기존 코드의 맥락을 분석해 자동으로 코드를 생성한다. 개발자가 코드 작성 화면에 '사용자 로그인 기능 코딩해줘' 라고 입력하면 'AI 코딩'이 기존 코드를 분석, 코딩 표준에 맞는 사용자 로그인 기능이 담긴 코드를 입력창에 띄워준다. 코드추천은 개발자가 코드를 작성하는 과정에서 다음 단계에 작성할 코드를 미리 추천해주는 기능이다. 개발자가 '데이터 조회' 기능에 대해 코딩하면, 다음 단계인 '데이터 조회 결과 정리' 기능은 'AI 코딩'이 알아서 작성하는 식이다. 코드 품질검사는 코드에서 시스템 오류를 발생시키는 부분, 보안에 취약한 코드, 성능 저하에 원인이 되는 부분 등을 탐지해 자동으로 수정하는 기능을 제공한다. 개발자들은 코드에서 오류 원인을 찾고 수정을 하는데 긴 시간을 투입하게 되는데, 'AI 코딩'이 시간을 크게 단축시켜 준다. 'AI 코딩'은 AI가 생성하는 코드와 탐지한 오류 등을 이해하고 적합 여부를 판단할 수 있는 실력의 개발자가 사용해야 최적의 효과를 볼 수 있다. LG CNS 어플리케이션아키텍처담당 안현정 상무는 “AI 코딩은 코드 품질과 표준, 개발 환경과 아키텍처 등 프로젝트 특성을 반영한 최적화된 코드를 작성할 수 있도록 지원, 개발자의 훌륭한 러닝메이트 역할을 수행하며, 고객사 서비스 생산성을 극대화할 것” 이라고 강조했다.