R 개발, AI 혁신을 만나다

Share

R 생성형 AI 혁명: 코딩 도우미부터 LLM 로컬 실행까지

R 프로그래머에게 생성형 AI는 더 이상 먼 미래의 이야기가 아닙니다. IDE 플러그인, 외부 챗봇, LLM 로컬 실행 등 다양한 도구가 등장하면서 R 개발 환경에 혁신을 가져오고 있습니다. 이 글에서는 R 개발자들이 코딩 효율성을 높이고 새로운 가능성을 탐색할 수 있도록 도와주는 다양한 AI 도구들을 소개합니다.

R 코딩 도우미: Gander

Gander는 R 스크립트용 GitHub Copilot Light와 유사한 도구입니다. RStudio 및 Positron IDE의 추가 기능으로, 코드와 작업 환경의 변수를 인식하여 코드 완성과 제안을 제공합니다. Gander를 호출하면 선택한 코드를 모델의 결과로 대체하거나, 코드 앞/뒤에 제안된 코드를 추가할지 묻는 메시지가 표시됩니다. Ellmer에서 지원하는 모든 모델을 선택할 수 있으며, Posit 개발자인 사이먼 코치는 R에 강점을 가진 Anthropic의 Claude Sonnet을 권장합니다. 로컬 모델도 사용할 수 있습니다. Gander는 CRAN에서 다운로드하거나 pak을 통해 개발 버전을 설치할 수 있습니다.

ChatGPT, GPTStudio: IDE 내 LLM 액세스

ChatGPT 패키지는 R에서 챗GPT에 접속하는 인터페이스를 제공하며, 코드 주석 달기, 단위 테스트 생성, 코드 문서화, 코드 최적화 등의 작업을 위한 RStudio 추가 기능을 제공합니다. 자주 LLM을 사용하지 않거나 일상적인 프로그래밍 작업에 유용합니다. GPTStudio 역시 RStudio 추가 기능으로, 철자 및 문법 검사, 채팅, 코드 주석 등의 옵션을 제공합니다. GPTStudio는 OpenAI, Hugging Face, Ollama 등 다양한 LLM을 지원합니다.

Pkgprompt: 패키지 문서 LLM으로 전달

pkgprompt는 pkg_prompt() 함수를 사용하여 R 패키지의 문서를 단일 문자열로 변환합니다. 이를 통해 프롬프트에서 해당 문서를 LLM으로 손쉽게 보낼 수 있습니다. 예를 들어, dplyr 패키지의 across 및 coalesce 함수에 대한 문서를 추출하여 LLM 프롬프트에 추가할 수 있습니다. 이 패키지는 사이먼 코치가 만들었습니다.

IDE 외부 도우미: Shiny Assistant, R/RStudio 튜터

코딩 환경을 벗어나 LLM에 질의하고 싶다면 Shiny Assistant와 같은 도구를 활용할 수 있습니다. Shiny Assistant는 무료 웹 기반 툴로, LLM을 사용하여 R Shiny와 파이썬용 Shiny 앱 빌드 방법에 대한 질문에 응답합니다. R/RStudio 튜터는 맞춤형 GPT로, 기본 챗GPT에 특정 R 정보를 추가하여 R과 RStudio에 대한 질문에 답하도록 만들어졌습니다.

로컬 LLM 실행: Rollama, Ollamar

개인 정보 보호를 중요하게 생각하거나, 클라우드 기반 LLM의 사용 중단 가능성을 우려한다면 로컬 LLM 실행이 좋은 대안입니다. Ellmer 패키지를 사용하여 로컬 LLM을 실행하거나, Rollama 및 Ollamar 패키지를 통해 Ollama 프로젝트를 활용하여 R에서 로컬 모델을 실행할 수 있습니다. Rollama와 Ollamar 모두 Ollama를 통해 R을 사용하여 로컬 모델을 실행할 수 있게 해주지만 구문은 다릅니다. Ollama 웹사이트에서 사용 가능한 모델을 확인하고, R에서 `pull_model()` 또는 터미널에서 `ollama pull` 명령을 사용하여 설치할 수 있습니다.

결론

R에서 LLM을 사용하는 옵션은 계속해서 증가하고 있으며, 이를 통해 스크립트와 앱에 기능을 추가하고, 코드 관련 도움을 받고, 로컬에서 LLM을 실행할 수 있습니다. 여러분의 사용 사례에 부합하는 다양한 옵션을 시도해 보고, 필요와 선호도에 가장 잘 맞는 옵션을 찾아 R 개발의 새로운 가능성을 열어보세요.

You may also like...