이전에 vsCode에서 코파일럿(Copilt)을 잠깐 써본적이 있는데
JetBrains에서도 JetBrains AI Assistant 를 출시했다.(23년, 12월)
감사하게도 사내에서 JetBrain AI Assistant 라이센스를 발급받아서 드디어 사용해볼수 있게 되었다!
이번 글에서 JetBrains AI Assistant를 설치해보고, 직접 사용해본 후기를 작성하려고 한다.
JetBrains AI Assistant 란?
공식문서에 따르면, JetBrain AI 서비스는 고객의 데이터 보안을 최우선으로 생각하며, 고개 데이터를 수집하거나 교육 목적으로 사용할 가능성이 있는 LLM 제공업체와 협력하지 않는다고 한다. 그리고 OpenAI 및 JetBrain 자체적으로 개발한 다양한 소규모 LLM 모델들과 함께 작동한다고 한다.

참고로 Intellj 2024.3 버전부터 사용할수 있다!
이전 사실 22년 버전을 사용하고 있었는데, 플러그인에 AI Assistant가 안보였다!!

과연 코파일럿의 코드 자동 생성 보다 더 편리할것인가..!
AI Assistant 설치하기
IntelliJ를 기준으로 AI Assistant를 활성해보겠다.
JetBrain 서비스인 PyCharm, DataGrip에서도 사용이 가능하다.
플러그인 설치
IntelliJ 를 처음에 시작할때 Plugins에서 JetBrain AI Assistant를 설치한다.

플러그인 적용
인텔리제이를 시작하면, Help > Register 로 들어간다.
그러면 플러그인으로 설치한 JetBrain AI Assistant가 보일것이다.


나는 JetBrain 계정에서 라이센스를 이미 발급받은 상태라서, 별도로 활성화할 필요는 없었다.
만약에 별도로 구매한 라이센스라면 여기에서 라이센스를 활성화해야한다.
어디에서 사용하는가?
IntelliJ의 왼쪽에 보면 여기 태풍같은 회오리 모양이 보인다.
여기를 눌러서 AI Assistant를 활성화 시킬수 있다. 그리고 처음이니까 일단 Agree 눌러주면 된다.


생각보다 사용할수 있는 기능이 다양해보인다. 두근..!

또는 이렇게 직접 코드블록을 처리하고, 바로 AI Actions을 할수도 있다.
AI Assistant 사용하기
1. Generate Code
내가 원하는대로 코드를 바꿔달라고 명령할수 있다.
그러면 명령을 한대로 코드가 자동으로 바뀌고, 이걸 accept할지 discard할지 선택할수 있다.

가끔 이 코드를 어떻게 바꾸지? 만들지? 하면서 생각이 안날때 사용하면 좋을것 같다.


2. Explain Code (코드 설명)
기본적으로 코드 블록을 한 부분에 대해서 어떤 로직으로 어떻게 동작하는지 설명해준다.
저렇게 변수명?들이 하이라이트 되서 보기가 좋다. 그래서 누르면 직접 그 변수가 지정된 코드를 보여주기까지 한다.


전체 코드에 대한 설명을 모두 보여줄순 없지만, 이런식의 구조로 코드 설명을 제공해줘서 정말 유용했다.
AI Assistant
코드 설명 요약
1. 입력 및 출력
2.코드 동작 설명
3.전체 처리 흐름
4.장점
5.참고사항
6.사용예시
3. Suggest Refactoring (리팩토링 제안)
개인적으로 기대 되는 부분이였다. 그런데 어찌된 일인지 처음에는 영어로 답변을 받았다. 흠


그리고 원하는 방식의 리팩토링이 아니여서 다시 리팩토링 해달라고 command를 던졌다.
JetBrain AI Assistant에 챗 GPT처럼 명령을 할 수 있는 커맨트창이 따로 있다.


리팩토링도 꽤 괜찮게 제공해줘서 만족스러웠다. 이런식으로 리팩토링 제안을 해준다.
1. 리팩토링 설명
2. 리팩토링된 코드
3. 리팩토링 주요 포인트 (개선이유)
그리고 정말 편한거는 리팩토링된 코드를 바로 적용할수 있다!
Show DIff를 누르면, 마치 git처럼 변경된 부분이 나타나고, 원하는 부분만 적용하거나 전체를 적용할수도 있다.


그런데 개인적으로, 리팩토링은 주관적인 부분(?)이 있다고 생각해서, 어느정도 리팩토링 결과가 항상 만족스러운건 아니였다.
그래서 계속 어떤식을 중점적으로 리팩토링하면 좋을지 구체적으로 리팩토링 명령을 해야할것 같다.
4. Inline Code Completion (인라인 코드 자동완성)
프로젝트의 상황과 맥락을 고려해서 실시간으로 코드를 자동완성해준다.
Tool > AI Assistant 에서 "Enable cloud completion suggestions" 옵션을 활성화 시켜야한다.
확실히 자동완성이 지원되니까 정말 편하다.. 그동안 나는 왜 사용하지 않았는가..!!
5. Generate Unit Test
추가적으로 테스트코드를 자동적으로 생성해주기도 했다. 와 대박이다!
실제로 테스트가 필요한 비즈니스 로직이 있었는데, AI Assistant로 Unit Test Code를 만들어줬다.


심지어 아주 똑똑하게 기존에 있었던 Unit Test 코드에서 추가적으로 10과 11번 테스트케이스로 작성해줬다.
실제로 테스트코드가 제대로 생성된건지는 확실하게 테스트해보진 않았지만, 그래도 테스트코드 만들기 훨씬 쉬워졌다.
6. Explain Runtime Error( 런타임 오류 설명)
요 기능도 아직 테스트해보진 못했는데, PyCharm에서 런타임 오류가 콘솔에 표시될 경우 오류에 대한 설명을 들을수 있다고 한다.
오류 원인이랑 해결방법에 대한 설명을 알려준다고 하니 굉장히 기대되는 기능이다.
마지막으로, 추가적으로 AI Assistant가 사용하는 모델을 선택할수도 있다.
Gemini, Claude, GPT 4.5 버전으로도 지원이 되는것 같다.

지금까지 JetBrains AI Assistant를 직접 설치해보고, 직접 몇가지 기능을 사용해본 후기를 작성했다.
일단 IntelliJ랑 PyCharm 자체가 업데이트가 되면서 UI도 깔끔해지고, 전체적으로 많이 바뀌어서 리프레쉬 된 기분이 든다.
심지어 여기에서 JetBrains AI Assistant를 적용하니 얼릉 코딩을 하고 싶단 생각까지 든다..!! 열일해야지!
'Tool & Setting' 카테고리의 다른 글
[Tool] Json Formatter, ObjGen: API JSON response 만들기 (0) | 2023.07.01 |
---|---|
[Intellj] M1맥북, Intellj 느릴때 - apple silicon 버전 재설치 (1) | 2022.11.07 |
git GUI tool, SourceTree에서 Fork로 갈아타다 (0) | 2022.08.01 |
[Tool] Medis2 : Redis GUI Client 프로그램(Mac M1 가능) (0) | 2022.02.06 |
[단축키] 개발자 생산성 높이는 Mac 단축키와 IntelliJ 단축키 (2) | 2022.02.05 |
[Tool] [Kotlin] logger로 로그 찍는 꿀팁! + Grep Console 플러그인 (0) | 2022.02.04 |