Offcanvas

AI / 개발자 / 머신러닝|딥러닝

깃허브 코파일럿, 개발자 반응은?··· "놀랍도록 유용"vs"아직 미흡"

2021.07.12 Scott Carey  |  InfoWorld
마이크로소프트의 자회사 ‘깃허브(GitHub)’가 ‘오픈AI(OpenAI)’와 함께 자동화된 제안을 통해 코드 작성을 돕는 AI 도구를 개발하고 있다. 여기서는 초기 사용자들의 반응을 살펴본다. 

지난 6월 29일 깃허브가 ‘코파일럿(Copilot)’을 프라이빗 베타로 발표했다. (깃허브에서) ‘AI 페어 프로그래머(Pair Programmer)’라고도 부르는 이 도구는 마이크로소프트 비주얼 스튜디오 코드(Visual Studio Code)에서 베타 사용자용 확장 프로그램으로 설치해 사용해볼 수 있다. 

코파일럿은 개발자가 코드를 작성할 때 이메일 애플리케이션(예: 지메일(Gmail))의 자동 완성 기능처럼 파이썬(Python), 자바스크립트(JavaScript), 타입스크립트(TypeScript), 루비(Ruby), 고(Go) 등의 프로그래밍 언어로 작성된 코드를 제안한다. 

깃허브는 일론 머스크, 샘 알트만 등이 설립하고, 지난해 마이크로소프트가 미화 10억 달러를 투자한 인공지능 연구소 ‘오픈AI’와 협력해 코파일럿을 개발했다. 오픈AI는 코덱스(Codex)라고 불리는 모델을 사용해 컴퓨터 코드에 GPT-3 언어 예측 모델을 적용했다. 

물론 뉴럴 네트워크에 코드 작성을 학습시키는 건 새로운 시도는 아니다. 탭나인(TabNine), 카이트(Kite) 등의 스타트업이 비슷한 프로젝트를 하고 있다. 하지만 마이크로소프트라는 빅테크 기업과 오픈AI 간의 긴밀한 협력은 코파일럿이 처음부터 강력한 시장 참여자라는 것을 의미한다.
 
ⓒGetty Images

독일의 사이버보안 회사 드라고스(Dragos)의 수석 프론트엔드 개발자 필립 존 바실은 이러한 AI 코딩 비서 도구들을 사용해 본 적이 있지만 코파일럿은 이미 ‘다른 수준’에 있다고 <인포월드(InfoWorld)>와의 인터뷰에서 말했다. 

이번 코파일럿 공개는 확실히 큰 반향을 일으켰다. 단 이틀 만에 ‘해커 뉴스(Hacker News; 오픈소스 개발자들의 소셜 네트워크)’에서 1,200여 개의 댓글이 달렸는가 하면 수백 명의 초기 사용자가 소셜 미디어에서 후기를 올리고 있을 정도다. 

다수의 깃허브 스타(GitHub Star) 또는 마이크로소프트 MVP로 구성된 초기 사용자 일부는 소셜 미디어와 라이브 스트리밍을 통해 개발자 경험 측면에서 코파일럿의 특징들을 보여주고 있다. 이들이 어떤 이야기를 하는지 살펴본다.

코파일럿의 장점
美 서비스형 플랫폼(PaaS) 제공업체 ‘네트리파이(Netlify)’의 개발자 경험 디렉터 캐시디 윌리엄스는 “다양한 프로젝트에서 반복적으로 재작성해야 하는 소규모 유틸리티 등에 코파일럿이 놀랍도록 유용할 것”이라면서, “이를테면 이를 특정 대문자 사용 패턴을 찾거나 특정 패턴 일치 함수를 작성하는 데 사용할 수 있다. 직접 작성하거나 100번 이상 작성 방법을 검색할 필요가 없다”라고 전했다. 

바실에 따르면 코파일럿은 자동 완성 대신에 완전한 기능을 갖춘 함수, 랜덤 코드 항목에 관한 아이디어들을 제공한다. 그는 “심지어 블로그를 작성할 때 쓸 수 있는 일부 작성된 단락들을 가져올 수도 있다”라고 언급했다. 

오픈소스 메인테이너 겸 소프트웨어 개발 컨설턴트 알렉시 골럽은 “굉장히 스마트한 자동 완성 도구다. 매우 잘 작동한다. 코드에서 컨텍스트를 추론하여 대부분의 경우 (사용자가) 입력하고 있던 라인을 정확하게 완성할 수 있다. 블로그 게시글, 대화 요약, 댓글, 문서 작성 등 코딩 외의 시나리오에서도 도움이 된다. 때로는 적절한 단어가 생각나지 않을 때 코파일럿이 이를 제안한다”라고 설명했다. 

美 테스트 자동화 회사 ‘애플리툴스(Applitools)’의 개발자 지지자(developer advocate) 콜비 페이욕은 초기 액세스 등록을 마친 후 밤새 이 도구(코파일럿)를 가지고 놀았다고 말했다. 

이어서 그는 “내가 넣어본 많은 입력값에 적절한 답변을 제공해서 놀랐다”라면서, “처음에는 이를테면 날짜별 정렬처럼 다양한 프로젝트에서 쓰일 수 있는 공통 유틸리티 기능을 생성하는 데 가장 유용할 것이라고 생각했다. 스택 오버플로(Stack Overflow)에서 답변을 찾는 일반적인 검색일 수도 있지만 이제 해당 도구를 쓰면 비주얼 스튜디오 코드에서 바로 답변을 얻을 수 있다”라고 덧붙였다. 

美 협업 플랫폼 제공업체 ‘포스트맨(Postman)’의 소프트웨어 엔지니어 비닛 샤데오는 코파일럿이 개발 시간을 단축하고 코드를 위한 더 나은 대안을 제안해 개발자의 효율성을 높여줄 전망이라고 전했다. 

코파일럿의 단점
(지금까지 살펴본 바로는) 코파일럿은 굉장히 유용한 생산성 도구인 것처럼 실질적으로 개발자의 작업을 대체하려면 아직 갈 길이 멀다. 

윌리엄스는 “더 복잡한 프로젝트에선 개발자를 대신해 코드를 작성할 수 없다고 본다”라면서, “원하는 것과 달리 상당히 일반적인 것을 제안하는 등 약간의 미묘한 차이가 있었다. 하지만 이를 통해 지루한 코드 작성에서 해방돼 비즈니스 로직을 제대로 수행할 수 있다면 전적으로 찬성이다”라고 말했다. 

바실은 “해당 도구를 활용할 때 (이는 사용자에게 적합할 것이라고 예상하는) 10개의 아이템을 제공한다. 그중 일부는 완전히 형편없지만 물론 완벽한 것들도 있다. 모래 속에서 다이아몬드를 찾아내야 한다”라고 언급했다. 

이와 마찬가지로 기술 블로거 레이 빌라로보스도 유용한 결과를 얻느라 고생하는 경우가 많았기 때문에 코파일럿이 유용한 결과를 제시할 때까지 주석을 다시 입력해야 했다고 밝혔다.

페이욕은 전반적으로 만족하긴 했지만 리액트(React)로 작성할 때만큼은 해당 도구가 별로였다고 전했다. 그는 “이를테면 사용자 프로필 생성 등을 시도해 봤다. 문제는 유용한 리액트 구성요소를 생성하는 것이었다. 이는 일부 리액트뿐만 아니라 그에 따른 스타일도 필요했다. 코파일럿은 이를 지원하지 않는다”라면서, “궁극적으로 라이브러리를 가져와야 하는 무언가를 생성하려고 할 때 제대로 하지 못하는 것 같다”라고 설명했다. 

코파일럿을 엔터프라이즈에서 사용할 수 있을까?
즉 ‘AI’가 ‘개발자’를 대체하기엔 아직 이르다. 또한 샤데오는 신입 개발자가 코파일럿과 같은 도구에 의존하는 것을 경계해야 한다고 지적했다. 그는 “자동 완성에 의존하는 습관이 생기면 학습에 지장이 있을 수 있다”라고 덧붙였다. 

빌라로보스는 “컴퓨터가 사람만큼 뛰어날 수 있을지 모르겠지만 좋은 출발점을 제공한다. 때로는 (컴퓨터가) 제안하는 코드를 통해 솔루션을 어떻게 접근할지 생각해볼 수 있다”라고 말했다.

코파일럿의 초기 전망이 밝긴 하지만 깃허브조차 현재 단계에선 엔터프라이즈 적용 가능성에 대해 신중한 태도를 보이고 있다. 깃허브는 FAQ를 통해 “코파일럿이 제안하는 코드는 항상 정확하거나 유용하지 않을 수 있다. 이를 개선하고 있지만 깃허브 코파일럿이 제안하는 코드는 다른 코드와 마찬가지로 신중하게 테스트, 검토, 검증해야 한다. 개발자로서 항상 책임을 져야 한다”라고 밝힌 바 있다.

골럽은 “이미 엔터프라이즈 수준에서 (코파일럿을) 사용할 수 있다고 본다”라면서, “최악의 경우 아무런 효과가 없을 것이다(만약 코드 제안이 적절하지 않다면 무시하면 된다). 최선의 경우 시간을 절약하고 생산성을 높일 수 있을 것이다”라고 말했다.
 
ciokr@idg.co.kr
 
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.