마이크로소프트·깃허브·애저와 아마존·AWS는 깃허브 코파일럿(GitHub Copilot), 아마존 Q 디벨로퍼(Amazon Q Developer)와 같은 AI 코딩 어시스턴트를 비주얼 스튜디오 코드 및 기타 IDE용 추가 기능으로 제공한다. 당연히 구글·GCP도 비슷한 툴을 출시할 수밖에 없었다. ‘제미나이 코드 어시스트(Gemini Code Assist)’는 코드를 완성하고 주석을 기반으로 전체 함수 또는 코드 블록을 생성하고 단위 테스트를 생성하고 코드 디버깅, 이해, 문서화에도 도움을 줄 수 있다.
제미나이 코드 어시스트는 소스 인용 기능을 제공하는데, 긴 소스를 인용하는 코드에 대해서는 알려진 경우 경고를 표시하며 소스 코드 라이선스를 참조할 수도 있다. 코드 어시스트는 채팅 도우미, 인라인 보조 및 완성 기능을 코드 편집기 내에서 제공한다. 구글은 데이터 소유자의 허락 없이 모델 학습에 데이터를 사용하지 않으며 코드 어시스트가 생성하는 코드로 인해 저작권 소송이 발생할 경우 사용자를 면책한다.
제미나이 코드 어시스트의 LLM은 제미나이 기반 모델 학습에 사용되는 데이터 집합과 함께 공개적으로 사용 가능한 코드, 구글 클라우드 관련 자료, 기타 관련 기술 정보를 사용해 학습된다. IDE에서 제미나이 코드 어시스트는 현재 사용 중인 파일과 프로젝트에서 열려 있는 다른 관련 로컬 파일에서 컨텍스트 정보를 수집한다. 엔터프라이즈 버전에 제공되는 기능인 코드 맞춤 설정은 기업의 비공개 코드베이스를 기반으로 코드를 제안한다.
제미나이 코드 어시스트는 비주얼 스튜디오 코드와 젯브레인 IDE용 플러그인을 통해 제공된다. 경쟁 툴은 깃허브 코파일럿, 아마존 Q 디벨로퍼, 소스그래프 코디(Sourcegraph Cody), 탭나인(Tabnine), 젠코더(Zencoder), 코디엄(Codeium), 코드지엑스(CodeGeeX), 레플릿 고스트라이터(Replit Ghostwriter), 데빈 AI(Devin AI), 커서(Cursor), 제드(Zed), 젯브레인 AI 어시스턴트(JetBrains AI Assistant), 솔버(Solver) 등이다. 코드로 학습된 생성형 AI 모델 역시 코드 편집기와의 통합 여부에 관계없이 경쟁 상대다. 현재 몇몇 생성형 AI 모델은 정확한 코드를 생성하기 위한 다양한 기능을 갖추고 전체 함수, 심지어 전체 애플리케이션을 생성할 수도 있기 때문이다.
![]() |
IDG |
<그림 1> 왼쪽에는 제미나이 코드 어시스트 채팅이 있고, 상단에는 일반 지침, 하단에는 팝업 파일과 툴 참조 목록이 있다. 가운데에는 코드 편집기가 있고 오른쪽에서는 제미나이 코드 어시스트의 설정 일부를 볼 수 있다.
제미나이 코드 어시스트를 사용한 코딩
제미나이 코드 어시스트는 코드와 단위 테스트 작성을 보조하고 코드 디버깅, 설명 및 문서화도 지원한다. 아래 스크린샷은 비주얼 스튜디오 코드에서 C++ 및 파이썬 프로그램 작업에 제미나이 코드 어시스트를 활용하는 모습이다. 프롬프트 테스트에서는 필자의 모국어인 영어만 사용했지만 제미나이 코드 어시스트는 아랍어에서 베트남어까지 거의 30가지 이상의 언어로 프롬프트를 처리할 수 있다.
![]() |
IDG |
<그림 2> 왼쪽 상단의 제미나이 코드 어시스트 채팅에서 제미나이는 오른쪽 상단의 C++ 코드를 컴파일하고 링크하는 방법을 설명하고 있다. 이 코드는 필자가 전에 다른 모델인 QwQ의 도움을 받아 생성한 코드다. 오른쪽 하단에서는 코드가 빌드/실행되는 것을 볼 수 있다. 계산된 파이값은 소수점 20자리까지 정확하다. 브리태니커 백과사전에 나와 있는 39자리 값과 비교해 확인했다.
![]() |
IDG |
파이를 계산하는 데 사용되는 고정밀 부동 소수점 루틴의 소스 코드를 살펴봤다. 해당 루틴은 브렌트-살라민 공식을 참조했는데, 필자는 그 문구를 선택한 다음 마우스 오른쪽 버튼을 클릭해서 제미나이 코드 어시스트 채팅(<그림 3>의 왼쪽 창)으로 보냈다. 제미나이는 이것이 산술 기하 평균에 근거하며(맞음), 가우스-르장드르 알고리즘보다 더 정확하다고 말했다(틀림. 둘의 정확도는 동등함). 이 수학에 대한 논의는 울프럼(Wolfram) 사이트를 비롯한 여러 곳에서 이뤄지고 있다.
![]() |
IDG |
필자는 제미나이 코드 어시스트의 도움을 받아 사용자가 지정한 자릿수까지 파이를 계산하도록 C++ 프로그램을 확장했다(compute_pi
). 여러 단계로 실행된 인터랙티브한 과정이었다. 이 과정에서 주석을 달고, 제미나이에 코드 생성을 맡기고, 제미나이가 인식하지 못했지만 프로그램을 망칠 수 있는 남은 코드를 삭제하고, 알 수 없는 라이선스 플래그가 달린 채 생성된 코드를 수락했다(너무 뻔한 코드라서 저작권 위반이 되기 어렵다고 판단). 정의되지 않은 변수 오류는 직접 수정할 수도 있었지만 귀찮아서 제미나이에 수정을 요청했다. 그렇게 해서 최종적으로 잘 작동하는 효율적인 프로그램을 얻었다. 위의 23번 줄에서 필요한 비트의 동적 계산을 볼 수 있다.
![]() |
IDG |
세파리아 API(Sefaria API)의 샘플 파이썬 코드가 마음에 들지 않아서 주석을 쓰고 제미나이 코드 어시스트에 구현을 요청했다. 주석의 첫 버전은 구체성이 부족해서, 그 결과로 나온 제미나이의 제안도 사용할 수 없었다. 주석을 더 명확히 작성하자 제미나이도 더 좋은 결과물을 내놨다(<그림 5> 오른쪽 상단에 녹색으로 표시된 차이 블록 참조).
![]() |
IDG |
수정된 제미나이 코드를 수락했지만 코드는 필자가 원하는 대로 작동하지 않았다. API 문서를 참조해서 추측해 수정해봤지만 실행하려고 하자 예외가 발생했다(<그림 6> 오른쪽 하단 76번 줄 참조).
![]() |
IDG |
해결 방법이 금방 떠오르지 않아서 제미나이에 이 버그를 수정하도록 요청했다. 제미나이의 수정안을 보고 나서야 사실 간단한 수정이었음을 깨닫고 이마를 쳤다.
![]() |
IDG |
<그림 8> 오른쪽 하단에서 볼 수 있듯이 잘 작동했다.
![]() |
IDG |
새 코드가 작동하는 것을 확인한 후 제미나이 코드 어시스트에 전체 파일 설명을 요청했다.
테스트 과정에서 필자는 제미나이 코드 어시스트의 채팅 응답 속도가 깃허브 코파일럿에 사용되는 오래된 오픈AI 모델보다 약간 느린 것을 인지했다. 이는 코드 어시스트가 채팅에서 속도보다 정확성에 중점을 둔 무거운 모델을 사용하기 때문이다. 편집 창에서는 현재 제미나이 2 플래시를 기반으로 한 응답성이 더 높은 모델이 사용된다.
또한 제미나이 코드 어시스트 채팅은 복잡한 추론 작업에 맞게 튜닝된 몇몇 모델(예 : 오픈소스인 알리바바 QwQ 모델, 새로운 딥시크 R1 등)처럼 “사고의 흐름”을 설명하지는 않지만 일부 경쟁 제품에 비해 궤도를 이탈하는 빈도는 낮음을 인지할 수 있었다. 코드 어시스트는 적어도 채팅 창에서는 어떤 컨텍스트가 사용되었는지 알려준다. 또한 쿼리를 할 때 편집기에서 코드를 선택하거나 “@” 명령으로 호출하는 방식으로 컨텍스트를 직접 지정할 수 있다.
IDE 통합과 프로그래밍 언어 지원
제미나이 코드 어시스트는 광범위한 프로그래밍 언어를 지원한다. “공개 영역 내의 방대한 코딩 예제”를 통해 학습된 다음 배시, C, C++, C#, 다트, 고, 구글SQL, 자바, 자바스크립트, 코틀린, 루아, 매트랩, PHP, 파이썬, R, 루비, 러스트, 스칼라, SQL, 스위프트, 타입스크립트, YAML 등 22개의 보편적인 프로그래밍 언어, 스크립팅 언어, 쿼리 언어를 대상으로 검증을 거쳤다.
제미나이 코드 어시스트는 비주얼 스튜디오 코드와 젯브레인 IDE를 지원하는 것 외에 구글의 클라우드 셸 에디터(Cloud Shell Editor), 클라우드 워크스테이션(Cloud Workstation), 클라우드 코드(Cloud Code)에서도 기본적으로 제공된다. 모든 구글 클라우드 사용자에게 무료로 제공되는 클라우드 코드는 쿠버네티스와 클라우드 런(Cloud Run) 애플리케이션의 전체 개발 주기에 대해 IDE 지원을 제공한다. 코드 어시스트는 코드형 인프라 인터페이스인 구글 클라우드 CLI와 쿠버네티스 리소스 모델(Kubernetes Resource Model, KRM)에 대한 도움을 제공하며 파이어베이스(Firebase), 구글 데이터베이스, 코랩 엔터프라이즈(Colab Enterprise)에서도 사용할 수 있다.
제미나이 코드 어시스트 엔터프라이즈는 코드 맞춤 설정을 지원하며 빅쿼리, 아피지(Apigee), 구글 애플리케이션 통합(Google Application Integration)에서 사용할 수 있다. 코드 맞춤 설정은 자체적인 코딩 표준과 작업 방식을 두고 있는 대형 프로그래밍 기업에 특히 유용하다. 다양한 프로젝트 또는 고객에 맞춰 코드 맞춤 설정을 전환해야 하는 경우 매우 간단히 전환할 수 있다.
제미나이 코드 어시스트 툴을 사용하면 공유 리포지토리의 코드 참조, 구글 문서의 사양과 같은 일반적인 프로그래밍 관련 작업을 수행할 때 IDE에서 다른 환경으로 전환할 필요가 없다. 현재까지는 아틀라시안(로보), 깃허브, 깃랩, 구글 문서, 센트리(Sentry)에 액세스하기 위한 툴이 나와 있으며 향후 관찰가능성 벤더인 다이나트레이스(Dynatrace), 하네스(Harness), 뉴 렐릭(New Relic), 보안 벤더인 소나큐브(SonarQube), 스닉(Snyk), 블랙 덕(Black Duck), 데이터베이스 벤더인 아이벤(Aiven), 데이터스택스(DataStax), 엘라스틱(Elastic), 몽고DB, Neo4j, 레디스, 싱글스토어(SingleStore)와의 통합이 예정돼 있다. 아마존 Q 디벨로퍼와 깃허브 코파일럿에도 모두 이와 유사한 통합이 제공된다.
제미나이 코드 어시스트 vs. 경쟁 제품
전체적으로 제미나이 코드 어시스트는 코딩 도우미의 역할을 잘 해낸다. 사용자가 개발자로서 알아야 할 부분을 잘 알고 항상 코드를 검토, 테스트, 디버깅한다면 사용할 가치가 있다. 100% 안정적이고 신뢰할 수 있는 LLM은 없다는 점을 기억하고 그 출력을 항상 확인해야 한다.
구글 클라우드 프로그래머라면 깃허브 코파일럿 또는 아마존 Q 디벨로퍼보다 제미나이 코드 어시스트를 사용하는 편이 더 낫다. 하나의 IDE에서 여러 코드 어시스턴트 플러그인을 결합할 수도 있지만 편집기에서 두 개 이상의 어시스턴트에 자동 제안을 허용할 경우 표시되는 제안을 한 어시스턴트가 무엇인지 헷갈리기 쉽다. 컨텍스트 메뉴와 별도의 채팅 탭을 사용해서 여러 개를 관리하는 것도 가능하지만 굳이 두 개 이상에 대해 비용을 지불할 필요성을 느끼기는 어렵다.
필자가 이 리뷰를 시작했을 당시 제미나이 코드 어시스트에는 무료 요금제가 없었다. 마이크로소프트와 AWS에는 AI 코딩 어시스턴트 무료 요금제가 있음을 감안하면 구글도 뒤따를 가능성이 있다고 생각했는데, 마침 이 기사가 게재되는 것과 같은 시점에 구글도 코드 어시스트의 무료 버전 공개 미리보기를 발표했다. 이와 함께 구글은 공개 및 비공개 리포지토리에 대해 코드 검토를 제공하는 무료 AI 에이전트인 깃허브용 제미나이 코드 어시스트의 공개 미리보기도 발표했다.
현재 제미나이 코드 어시스트에는 다중 파일과 전체 리포지토리 코드 생성 기능이 없고, 장기 코딩 작업을 위한 에이전트도 없다. 다만 이런 기능에 대한 필요성은 각자의 선호도에 따라 다를 수 있다. 일부 선임급 프로그래머들은 검토하기 용이한 작은 작업으로 AI의 사용 범위를 제한하는 편을 선호한다. 버그를 유발하는 많은 변경 사항을 일일이 살펴보는 것보다 수동으로 제대로 변경하는 편이 오히려 손이 덜 갈 수 있기 때문이다.
이 같은 기능은 제미나이 코드 어시스트의 경쟁 툴에는 있다. 예를 들어 깃허브 코파일럿 워크스페이스와 솔버는 전체 리포지토리 코딩 기능을 제공한다. 깃허브 코파일럿 에디트는 여러 파일을 변경할 수 있으며 아마존 Q 디벨로퍼에는 코드 변환을 위한 에이전트가 있다. 구글도 결국 이런 기능을 추가하게 되지 않을까?
요약
전체적으로 제미나이 코드 어시스트는 코딩 도우미의 역할을 잘 해낸다. 사용자가 개발자로서 알아야 할 부분을 잘 알고 항상 코드를 검토, 테스트, 디버깅한다면 사용할 가치가 있다.
장점
- - 코드를 작성할 때 코드 완성 기능 제공
- - 주석을 보고 전체 함수 또는 코드 블록 생성
- - 단위 테스트 생성
- - 코드 디버깅, 이해, 문서화 지원
단점
- - 다중 파일 또는 리포지토리 전체 편집 미지원
- - 장기 실행 코딩 작업을 위한 에이전트 없음
- - 구글 클라우드 외의 명령줄을 지원하지 않음
비용
- - 개인용 제미나이 코드 어시스트 : 무료(코드 완성은 월 18만 회로 제한)
- - 표준 버전 : 사용자당 월 19달러(연간 사용료 선불)
- - 엔터프라이즈 버전 : 사용자당 월 45달러(연간 사용료 선불)
- - 요금제별 기능 비교는 구글 클라우드 홈페이지 참고.
플랫폼
비주얼 스튜디오 코드, 젯브레인 IDE, 클라우드 워크스테이션, 클라우드 셸 에디터
dl-itworldkorea@foundryco.com
Martin Heller editor@itworld.co.kr
저작권자 한국IDG & ITWorld, 무단 전재 및 재배포 금지