전문가가 전하는 최신 AI 트렌드
가장 중요하고 흥미로운 AI 뉴스에 대한 선별된 인사이트를 확인하세요. 주간 Think 뉴스레터를 구독하세요. IBM 개인정보 보호정책을 참조하세요.
이제 사람이 기계와 공동으로 코드를 작성하는 시대가 왔습니다.
처음 기술 업계에 등장한 OpenAI의 ChatGPT는 코드 생성을 초기 활용 사례 중 하나로 삼아 생성형 AI의 시대를 열었습니다. 선구적인 GitHub Copilot부터 Amazon Q Developer, Anthropic의 Claude Code, Google의 Gemini Code Assist, IBM Bob, Mistral Code 등의 인공 지능(AI) 코딩 어시스턴트들이 그 뒤를 이었습니다.
그러나 이러한 코딩 도구의 기저에는 코드를 위한 대규모 언어 모델(LLM)이라는 강력한 기술이 있습니다. 그리고 소프트웨어 구축 방식도 변화하고 있습니다.
몇 명의 IBM 전문가와 이야기를 나누며 코드 LLM이 소프트웨어 개발자 역할을 어떻게 재정의하고 있는지, 그리고 전문가들은 이러한 모델의 미래를 어떻게 예측하는지 들어보았습니다. 다음 전문가들이 인사이트를 공유해 주었습니다.
Kaoutar El Maghraoui, 수석 연구 과학자
Bridget McGinn, AI for Code 연구 소프트웨어 엔지니어
Rameswar Panda, 저명한 엔지니어
Fumiko Satoh, 선임 기술 직원 겸 선임 관리자, AI for Code and Security
가장 중요하고 흥미로운 AI 뉴스에 대한 선별된 인사이트를 확인하세요. 주간 Think 뉴스레터를 구독하세요. IBM 개인정보 보호정책을 참조하세요.
Code LLM은 소스 코드로 학습된 특수 모델입니다. 코딩 모델은 처음부터 직접 구축하거나, 코딩 데이터 세트로 미세 조정된 사전 학습 모델을 기반으로 만들 수 있습니다. 이 학습 데이터는 코드 LLM이 다양한 프로그래밍 언어로 다양한 코딩 시나리오를 처리할 수 있을 만큼 품질이 높고 다양해야 합니다.
코드용 LLM은 일반적으로 자연어 처리(NLP)를 위해 설계된 AI 모델에서 파생되기 때문에 자연어 설명을 프롬프트로 사용하는 경우가 많습니다. 이들은 다음과 같은 실제 코딩 작업을 수행할 수 있습니다.
디버깅 지원
코드 완성(자동 완성이라고도 함)
코드 요약
코드 조각에 대한 인라인 주석 형태로 문서 생성
코드 최적화 제안
기존 코드를 한 프로그래밍 언어에서 다른 프로그래밍 언어로 변환(예: Python에서 JavaScript로)
몇 가지 인기 있는 코드 LLM로는 Google의 CodeGemma, Meta의 Code Llama, Mistral의 Codestral 및 Devstral이 있습니다. 한편, 오픈 소스 코드 모델로는 DeepSeek Coder, IBM Granite Code 및 Qwen3 Coder가 있습니다.
프로그래밍 전용은 아니지만 코딩에 대해 학습되고 최적화된 다른 LLM으로는 Anthropic의 Claude Sonnet과 Opus, Google의 Gemini Pro가 있습니다.
Code LLM은 정식 컴퓨터 과학 교육이나 훈련을 받지 않은 시민 코더, 도메인 전문가 및 기타 비전통적인 개발자를 지원하여 소프트웨어 제작에 대한 액세스를 민주화합니다. 이를 통해 신속한 프로토타입 제작, 반복 주기 단축, 신규 소프트웨어 엔지니어의 빠른 온보딩이 가능합니다.
코드 LLM은 소프트웨어 개발을 재편할 뿐 아니라 소프트웨어 개발자의 역할을 재정의하고 있습니다.
El Maghraoui에 따르면 소프트웨어 엔지니어는 코드 생산자에서 코드 큐레이터로 진화하고 있습니다. “코딩은 여전히 중요하지만 프롬프트 엔지니어링으로 초점이 옮겨가고 있습니다. 이러한 LLM의 컨텍스트에서 올바른 쿼리를 구성하려면 어떻게 해야 할까요? 또한 개발자들은 코드 한 줄 한 줄을 작성하는 대신, AI가 생성한 코드를 오케스트레이션하여 각 부분을 연결하는 경우가 점점 더 많아지고 있습니다."
하지만 이러한 진화는 빙산의 일각에 불과합니다. El Maghraoui는 개발자 역할이 그녀가 '의도 중심 엔지니어링'이라고 부르는 분야로 발전할 것이라고 믿고 있습니다. 이의 핵심은 구문에서 벗어나 구조에 집중하고, 세부적인 내용은 뒤로하고 더 큰 그림으로 확대하며, 목표, 결과, 영향력을 강조하면서 '무엇'에서 '왜'로 전환하는 것입니다.
McGinn은 코드 LLM을 프로그램으로 가져온 라이브러리로 취급할 수 있다고 생각합니다. "엔지니어는 모든 것을 새롭게 개발할 필요 없이 이미 구축된 기능을 활용할 수 있으므로, 라이브러리가 도움이 된 경우처럼 문제를 더 빠르게 해결할 수 있습니다."
이러한 관점은 생성형 컴퓨팅과 일맥상통합니다. 이 프레임워크에서 코드 모델은 모듈식 소프트웨어 구성 요소로 시스템에 통합되며 프로그래밍 가능한 인터페이스처럼 처리됩니다. 따라서 낮은 수준의 작업을 추상화하여 개발자가 더 높은 수준의 문제 해결에 더 많은 노력을 기울일 수 있도록 합니다.
“코드 작성보다는 디자인 사고를 고려해야 합니다.” 라고 Satoh는 말합니다. "시스템 아키텍처를 만들 수 있는 고급 엔지니어가 필요합니다."
이는 디자인과 아키텍처뿐만 아니라 윤리 및 보안과 같은 다른 차원을 통합하여 점점 더 다학제적인 역할이 되어가고 있습니다. El Maghraoui는 “수작업은 줄고 자동화가 늘어나지만, 더 전략적이기도 합니다.”라고 말합니다. "소프트웨어 엔지니어링과 시스템 수준의 사고, 제품 사고, 윤리적 추론을 결합해야 합니다. 이제 우리는 코딩만 할 줄 아는 사람이 아니라, AI를 잘 알고 AI를 우선시하는 엔지니어로 거듭나고 있습니다."
이를 통해 특히 초급 개발자의 경우 이러한 상위 수준의 작업에 대한 기술을 향상할 수 있습니다. “많은 벤치마크의 목표는 초보 개발자 수준의 기능에 도달하는 것입니다. 따라서 이것이 우리가 목표로 하는 지표라면 주니어 개발자의 필요성이 줄어들겠죠."라고 McGinn은 말합니다. "주니어 개발자보다 더 높은 수준의 사람이 필요하거나, 더 이상 주니어 개발자의 역할을 경험하지 않아도 시니어 개발자가 하는 일을 이해할 수 있는 사람이 필요합니다."
Panda는 다른 대규모 언어 모델과 마찬가지로 코드 LLM에도 단점이 있다고 말합니다. 그는 특히 금융 및 의료와 같은 분야에서 중요한 애플리케이션을 작업할 때 저작권, 편향, 보안에 관해 주의를 기울일 것을 제안합니다.
Panda는 "코드 LLM이 생성한 코드를 맹목적으로 신뢰해서는 안 됩니다."라며 "코드 LLM이 생성한 코드는 항상 신중하게 봐야 합니다."라고 말합니다.
이러한 회의론은 건전성과 정확성을 검증하기 위한 성능 최적화 메커니즘 및 검증 조치와도 결합되어야 합니다. "테스트 케이스를 작성하고 있는지 확인하고 코드를 수동으로 작성한 것처럼 철저하게 확인해야 합니다."라고 McGinnis는 말합니다.
El Maghraoui는 코드 LLM에 의존하기보다는 지원을 강조합니다. "만약 우리가 코드 LLM을 교육 보조 도구, 페어 프로그래밍 도구 또는 아이디어 생성 도구로 활용한다면 이를 통해 학습, 창의성 및 생산성을 향상할 수 있습니다. 하지만 우리가 자기 성찰과 검증 없이 코드 LLM에 의존한다면 우리의 판단력과 책임성이 저해될 수 있습니다."
검증은 개발자가 기본 컴퓨팅 원칙을 이해할 때만 가능합니다. 궁극적으로 프로그래밍의 기본을 이해하지 못한다면 이 모델들이 생성한 코드의 타당성을 어떻게 확인할 수 있을까요?
"빠른 코딩이기는 하지만, 항상 강력하거나 정확하거나 안전한 것은 아닙니다."라고 El Maghraoui는 말합니다. 그녀는 생성된 코드를 그대로 사용하는 것은 위험할 수 있다고 덧붙입니다. "그렇게 하면 코드베이스가 취약해질 수 있습니다. 이러한 모델에 지나치게 의존하거나 모델의 아웃풋을 지나치게 신뢰하면 특히 중요한 시스템에서 미묘한 버그나 비효율성이 전파될 수 있습니다. 그렇기 때문에 무슨 일이 일어나고 있는지 이해하는 것이 중요합니다."
이는 소프트웨어 개발의 기본 개념에 기반한 심층적인 전문 지식이 필요한 부분입니다.
"학교에서는 여전히 사람들에게 수작업으로 긴 나누기를 가르치는데, 계산기를 사용한다면 무슨 소용이 있을까요? 이는 코딩과 비슷합니다. 무슨 일이 일어나고 있는지 이해하는 데 중요하다고 생각되는 기본 요소는 무엇일까요?"라고 McGinn은 말합니다.
이러한 기술적 토대에는 컴파일러, 컴퓨터 아키텍처, 데이터베이스, 메모리 관리 및 운영 체제 등이 있습니다. "개발자는 코드 LLM이 이러한 개념을 추상화하기 때문에 이러한 개념을 깊이 배우는 것을 건너뛰기 시작할 수 있습니다."라고 El Maghraoui는 말합니다. 그러나 그녀는 소프트웨어 개발이 소스 코드의 기능과 성능에 미치는 영향 때문에 내부 작동 방식을 이해하는 것이 필수적이라고 덧붙입니다.
코드 LLM은 반복적인 작업을 자동화하여 인지 오버헤드를 줄일 수 있지만, El Maghraoui가 말하는 '인지 위축'을 증가시킬 가능성도 있습니다. 그녀는 이를 GPS의 과도한 사용이 우리의 자연스러운 내비게이션 감각을 약화시키는 것에 비유합니다. "개발자가 코드 제안에 크게 의존하면 디버깅에 능숙하지 않게 됩니다. 코드 LLM은 기초적인 실무나 기초적인 지식과 균형을 맞추지 못하면 알고리즘적으로 사고하는 능력이 약화될 수 있습니다."
코드 LLM이 발전함에 따라 바이브 코딩 트렌드에서 볼 수 있듯이 새로운 기능과 새로운 사용 사례도 공개될 것입니다. 그렇다면 앞으로 이러한 모델의 전망은 어떨까요? 전문가들이 예측을 제시했습니다.
전 세계는 AI 에이전트가 소프트웨어 개발을 포함한 거의 모든 산업에서 미래의 업무 방식을 변화시킬 것이라는 이야기로 들떠 있습니다.
El Maghraoui는 "자가 치료 코드베이스를 갖춘 이러한 멀티 에이전트 코딩 시스템으로의 전환이 이루어지고 있다고 봅니다."라고 말합니다. 이러한 에이전틱 AI 시스템은 이미 구체화되고 있습니다. 예를 들어 IBM의 소프트웨어 엔지니어링(SWE) 에이전트는 코드베이스에서 버그가 있는 위치를 먼저 “현지화”한 다음 해당 코드 줄을 편집하여 문제를 해결함으로써 GitHub 문제를 자율적으로 해결할 수 있습니다.
McGinn은 "가장 큰 모델에서 모든 작업을 수행하지는 않지만, 더 작은 에이전틱 접근 방식으로 에너지를 절약할 수 있는" 다양한 에이전트가 특정 프로그래밍 작업을 수행하는 보다 에너지 효율적인 전략을 기대하고 있습니다.
마찬가지로, Panda는 Granite Code와 같은 소규모 언어 모델(SLM)을 노트북이나 엣지 디바이스와 같이 리소스가 제한된 장치에서도 사용할 수 있도록 하는 데 큰 기대를 걸고 있습니다. “이와 동시에 SLM으로는 해결하기 어려운 문제도 몇 가지 있으므로 더 큰 규모의 Granite 모델이 등장할 것입니다. 단일 모델이 모든 것을 해결할 수 있는 것이 아니며, 여러 모델 간의 균형이 필요합니다."
오늘날의 통합 개발 환경(IDE)은 코드 모델과 코딩 어시스턴트를 서비스 또는 플러그인으로 통합합니다. 하지만 미래의 IDE는 AI 네이티브 개발자 환경으로 나아갈 수 있습니다. "이러한 IDE는 단순한 플러그인이 아니라 핵심의 일부로서 처음부터 코드 LLM으로 재설계될 것입니다."라고 El Maghraoui는 말합니다.
그녀는 또한 코드 LLM의 민간 인프라 배포가 증가하는 추세를 긍정적으로 보고 있습니다. 예를 들어 Codestral과 Devstral로 구동되는 Mistral Code AI 어시스턴트는 온프레미스 배포를 지원합니다.
"성능, 비용 및 개인 정보 보호 문제로 인해 이러한 코드 LLM의 비공개 배포가 가속화되고 있습니다."라고 El Maghraoui는 말합니다. "기업은 타사 API에 독점 코드를 전송하는 것을 피하고 싶어합니다. 비공개 배포는 소스 코드, 내부 라이브러리 및 스택 추적이 회사 내부 네트워크를 벗어나지 않도록 보장합니다. 특히 금융이나 의료 분야에서는 규제 준수 문제도 있으며, 처리량이 많은 사용 사례를 사내에서 실행하는 비용이 대규모로는 저렴할 수 있습니다."
코드 작성과 테스트 생성은 소프트웨어 개발 프로세스에서 별개의 부분입니다. Satoh는 이 두 단계를 원활하게 연결하여 코드 생성과 테스트 생성을 모두 지원하는 코드 LLM을 구상하고 있습니다.
"이 두 단계를 동일한 모델로 연결하여 원활한 제품을 만들어야 합니다."라고 그녀는 말합니다. Satoh는 더 나아가 요구 사항 사양 및 설계와 같은 초기 단계를 포함하여 “전체 소프트웨어 개발 라이프사이클을 지원하는” 코드 모델을 예측합니다.
하지만 성장 추세에 있는 머신과 공동으로 작성된 코드의 시대가 어떻게 전개되든 El Maghraoui는 신중하면서도 낙관적인 견해를 밝혔습니다. "마치 양날의 검과 같습니다. 개발자에게 해가 될 수도 있고, 도움이 될 수도 있습니다. 그래서 이 코드 LLM을 제대로 사용하는 방법을 이해하는 것이 정말 중요합니다. 그래야 경쟁력을 잃지 않고 더 창의적으로 성장할 수 있습니다." 그리고 그녀는 "이러한 워크플로를 수용하고 AI를 단순한 도구가 아닌 파트너로 대하는 개발자와 기업"이 성공할 가능성이 높다고 믿습니다.
안전한 의도 인식 개발을 지원하는 AI 파트너인 Bob으로 소프트웨어 제공을 가속화하세요.
코드 작성, 디버깅, 코드 리팩토링 또는 코드 완성에 소요되는 시간을 최소화하고, 더 많은 시간을 혁신에 집중할 수 있도록 지원하는 신뢰할 수 있는 AI 기반 도구로 소프트웨어 개발 노력을 최적화하세요.
AI로 핵심 워크플로와 운영을 새롭게 혁신해 경험과 실시간 의사 결정, 비즈니스 가치를 극대화하세요.