최신 소프트웨어 개발 환경에서는 코드의 복잡성이 갈수록 증가하고 있습니다. 이에 따라 복잡한 코드 구조를 신속하게 파악하고 효율적으로 이해할 수 있는 도구의 중요성도 점점 커지고 있습니다.
이러한 흐름에 맞춰, 최근 출시된 Understand 7.1에는 코드 분석 방식을 한 단계 끌어 올릴 ‘AI Overview’ 기능이 새롭게 추가되었습니다. 이 기능은 개발자들이 방대한 코드도 더욱 빠르고 효과적으로 이해할 수 있도록 혁신적인 지원을 제공합니다.
이번 글에서는 Understand 7.1의 주요 업데이트 중 하나인 AI Overview 기능이 무엇인지, 그리고 이 기능이 개발자에게 어떤 이점을 제공하는지 소개하고자 합니다.
지금부터 AI 기반 코드 개요 생성 기능이 우리의 개발 환경을 어떻게 한 단계 더 발전시키는지 자세히 살펴보겠습니다.
Understand AI 란 무엇인가?
Understand AI는 소스코드 분석 도구인 Understand 7.1에 새롭게 추가된 인공지능 기반 기능입니다.
이 기능은 코드의 구조와 동작을 자동으로 분석한 뒤, 그 내용을 자연어로 요약해 설명해 줍니다. 특히, 모든 데이터와 분석 과정이 사용자의 로컬 환경에서 이뤄지기 떄문에 보안성이 뛰어나며, 별도의 인터넷 연결이나 외부 서버 전송 없이도 AI 기반 코드 설명을 빠르게 생성할 수 있습니다.
이로 인해 개발자는 복잡한 코드도 쉽고 빠르게 이해할 수 있고, 팀원 간의 소통과 협업 역시 한층 효율적으로 이루어집니다.
로컬에서 작동하는 AI Overview 기능
Understand AI의 가장 큰 특징 중 하나는 AI 설명 기능이 완전히 로컬 환경에서 동작한다는 점입니다.
Understand에는 llama 3.2, 10억 파라미터(1B) 모델이 기본 내장되어 있으며, 이 모델과의 상호작용을 위해 llama.cpp 라이브러리도 함께 활용합니다.
이처럼 AI 모델과 라이브러리가 모두 내장되어 있기 때문에, 소스 코드나 프로젝트 정보가 외부 서버로 전송될 일이 없습니다.
또한 AI가 생성한 코드 설명 역시 사용자의 컴퓨터에만 저장되므로, 보안이나 개인정보 유출에 대한 걱정 없이 안심하고 사용할 수 있습니다.
이러한 로컬 AI 처리 방식 덕분에 보안이 중요한 기업 환경이나 민감한 프로젝트에서도 Understand AI 를 안전하게 도입할 수 있습니다. 생성된 AI 설명 결과는 프로젝트 폴더 내 ‘project.und’ 디렉터리에 저장되며, 필요에 따라 팀원들과 파일을 공유하거나 버전 관리 시스템을 통해 협업할 수도 있습니다
AI Overview 위젯 사용 방법
이 새로운 AI 기능은 상단 메뉴에서 View -> AI Overview로 이동하거나 Editor 우측 상단에 새로 추가된 AI 아이콘을 클릭하여 사용 할 수 있습니다.
Background Mode 설정 옵션
현재 AI 위젯에는 3가지 옵션이 있습니다.
Background: Off
이 옵션을 선택하면 AI Overview 위젯의 백그라운드 프로세스가 비활성화됩니다. 따라서 AI 설명이 생성되지 않았거나, 기존 설명이 오래된 경우에는 Ctrl + 클릭과 같은 동기화 이벤트가 발생할 때만 수동으로 AI 설명이 생성됩니다.
Background: Open Files
이 옵션을 선택하면 Understand에서 현재 열려 있는 모든 파일에 대해 AI 설명이 자동으로 생성됩니다. 또한 새로운 파일을 열면 해당 파일도 자동으로 대기열에 추가되어 AI 설명이 생성됩니다.
Background: Entire Project
이 옵션을 사용하면 AI Overview 위젯이 전체 프로젝트에 대해 AI 설명을 자동으로 생성하기 시작합니다. 이 작업은 PC 성능과 프로젝트 규모에 따라 2시간에서 24시간 이상 소요될 수 있습니다. 만약 생성 과정이 끝나기 전에 Understand 프로젝트를 닫더라도, 다시 프로젝트를 열면 AI Overview 위젯이 중단된 지점부터 계속 진행하므로 한 번에 모든 과정을 완료할 필요가 없습니다.
앞서 언급한 옵션들은 Understand를 처음 실행할 때 자동으로 벤치마크 테스트를 거쳐 기본 값이 설정됩니다. 만약 Understand가 기본값을 ‘Background: Off’로 지정했다면, 현재 사용 중인 PC 환경이 AI 설명 생성을 지원하지 않거나 성능이 낮다고 볼 수 있습니다.
시스템 요구 사항 및 호환성
Understand AI 기능이 탑재되면서 하드웨어 요구사항이 이전보다 높아졌습니다.
다음은 AI Overview 기능을 사용하기 위한 시스템 요구사항입니다.
- Technical Specifications
- Required CPU and optional GPU
- x86 with dedicated graphics hardware
- AMD Ryzen 3 5300G or Intel Core i5-11400( or better in single-threaded benchmarks)
- 6 GiB free VRAM ( 8 GiB free recommended )
- x86 without graphic hardware
- AMD EPYC 9184X or Intel Core i9-13900F ( or better in multi-threaded tensor benchmarks)
- ARM
- Apple M1 or better
- 6 GiB free VRAM ( 8 GiB free recommended )
- Minimum integrated GPU : AMD Ryzen 5 5600H, Intel Iris Xe, or Apple M1
- Recommanded GPU : NVIDIA RTX 4070 SUPER, Radeon RX 7900 XT, Apple M4
위의 사양을 보면, Understand AI는 전용 GPU가 장착된 PC에서 사용할 것을 권장하며, 최소 5~6 GiB 이상의 VRAM을 필요로 합니다.
만약 GPU가 없는 PC라면 CPU를 이용해 AI 설명을 생성할 수 있지만, 이 경우 처리 속도가 크게 저하될 수 있으므로 권장되지 않습니다.
그리고 다음과 같은 환경에서는 AI 기능이 지원되지 않습니다.
- x86 Mac (Intel Mac)
- Virtual machines
이러한 환경에서는 그래픽 하드웨어나 소프트웨어에 대한 접근이 제한되어 AI 기능을 사용할 수 없습니다. 또한 위에 언급된 환경이 아니더라도 특정 조건에 따라 AI 기능 사용이 제한될 수 있습니다.
AI 설명 공유 및 협업
Understand AI는 소스코드에 대한 AI 기반 설명(Overview)을 로컬에서 생성하고 이 결과를 팀원들과 쉽게 공유할 수 있는 구조를 가지고 있습니다.
공유의 핵심은 ‘ann_AI Overview.json’ 파일이며, 이는 프로젝트 폴더(‘project.und’ 디렉터리) 안에 저장됩니다.
- 공유 파일(ann_AI Overview.json)의 역할
- AI가 자동 생성한 코드 요약이 모두 이 파일에 저장됩니다.
- 이 파일만 있으면, 프로젝트의 나머지 팀원들도 별도의 AI 연산 없이 동일한 AI 설명을 확인할 수 있습니다.
- 버전 관리 시스템(SCM)과의 연동
- ‘ann_AI Overview.json’ 파일은 일반 소스코드처럼 Git 등 버전 관리 시스템에 체크인(업로드)할 수 있습니다
- 한 명의 팀원이 AI 설명을 생성해 파일을 SCM에 올리면, 다른 팀원들은 이 파일을 받아서 바로 AI 설명을 확인할 수 있습니다.
- 모든 팀원이 AI 연산이 가능한 고성능 환경을 갖추지 않아도, AI 기능의 이점을 함께 누릴 수 있습니다.
- 실사용 예시
- 한 명의 개발자가 성능 좋은 자신의 컴퓨터에서 AI 설명을 생성합니다.
- 생성된 ‘ann_AI Overview.json’ 파일을 프로젝트의 버전 관리 저장소(Git 등)에 체크인 합니다.
- 다른 팀원들이 저장소를 업데이트(pull)하면, 해당 AI 설명 파일이 자동으로 다운로드됩니다.
- 그러면 별도의 연산 없이, Understand에서 AI Overview 기능을 바로 사용할 수 있습니다.
- 장점
- 리소스 절감 : 팀 내에서 한 대의 고성능 컴퓨터만 있으면, 모든 팀원이 AI Overview 기능을 이용할 수 있습니다.
- 협업 효율성 : 코드 설명과 맥락을 팀 전체가 쉽게 공유하게 되어 협업과 코드 리뷰가 더 원활해 집니다.
- 보안성 : 모든 데이터가 로컬과 사내 시스템에서만 이동하여 외부로 유출될 위험이 없습니다.
벤치마크 재실행 및 문제 해결
Understand가 한 번 CPU나 GPU 중 어떤 것을 사용할지 결정하면, 이후에는 벤치마크를 다시 실행하지 않습니다. 만약 GPU에 VRAM이 4GB 이상 있음에도 불구하고 Understand가 여전히 CPU를 사용한다면, VRAM이 비워진 후(기계를 재부팅 한 후를 권장) 벤치마크를 다시 실행해 볼 수 있습니다.
Understand가 벤치마크를 수동으로 다시 실행하도록 하려면, understand AI 서버의 설정 파일을 삭제하면 됩니다.
파일의 위치는 환경마다 아래와 같습니다.
- Windows – C:\Users\USERID\AppData\Roaming\SciTools\undaiserver.ini
- Linux/Unix – ~/.config/SciTools/undaiserver.conf
- ~/Library/Preferences/com.scitools.undaiserver.plist
그리고 Mac 환경에서는 또한 해당 명령어를 실행해야 합니다.
killall cfprefsd
파일을 삭제한 후에는 해당 명령어를 실행해야 합니다. 그렇지 않으면 캐시된 설정에서 파일이 다시 복원됩니다.
위의 파일을 삭제한 후 Understand를 실행하면 벤치마크가 자동으로 시작됩니다.
또한, 이 파일의 값을 변경하여 Understand의 AI 기능을 수동으로 활성화할 수도 있습니다. AI 기능이 활성화되기 위해서는 Milliseconds 값이 20000 이하이어야 하며, 속도 테스트 중 할당에 실패한 경우를 대비해 ‘Broken=false’로 설정해야 합니다.
VS Code Extension
Understand AI 기능은 Visual Studio Code Extension에서도 사용할 수 있습니다.
마켓플레이스에서 Understand를 검색 후에 플러그인을 설치할 수 있습니다.
Understand의 VS Code 확장 기능을 사용하면 코드 작성과 동시에 정적 분석 결과와 AI기반 코드 설명 등 다양한 정보를 VS Code 내에서 바로 확인할 수 있어 보다 효율적으로 개발이 가능합니다.
마무리
Understand 7.1에 새롭게 도입된 AI Overview 기능은 복잡한 코드 분석과 이해를 한층 더 쉽고 빠르게 만들어줍니다. 특히 모든 데이터가 로컬에서 처리되어 보안성과 효율성을 모두 확보할 수 있다는 점은 실무 환경에서 큰 강점이 될 수 있습니다.
또한 AI 설명 파일을 팀원들과 공유하거나 버전 관리 시스템을 통해 협업할 수 있어 팀 전체의 생산성도 함께 높일 수 있습니다.
물론 원활한 AI 기능 사용을 위해서는 충분한 GPU와 VRAM 등 일정 수준 이상의 하드웨어 환경이 필요합니다. 하지만 최신 기술이 적용된 Understand AI는 앞으로 개발자들이 겪는 코드 이해와 협업에서의 어려움을 효과적으로 해결해줄 것으로 기대됩니다.
이제 여러분도 Understand 7.1의 AI Overview 기능을 활용해 복잡한 코드를 더 쉽고, 더 안전하게 이해해보시기 바랍니다.