AIㆍML / 개발자

“이미 도래한 미래” 생성형 AI 시대의 SW 개발자를 위한 4가지 조언

Isaac Sacolick | InfoWorld 2023.03.02
필자는 CRM 애플리케이션에서 고객 데이터 소스를 병합할 때 흔히 발생하는 코딩 문제를 해결하기 위해 ChatGPT를 사용해본 적 있다. ChatGPT에 “2개의 이름 목록이 주어지면 파이썬 코드를 작성해 이름이 거의 일치하는 것을 찾고 유사도 순위를 계산하라”라고 요구했다.

ChatGPT는 “파이썬의 퍼지우지(FuzzyWuzzy) 라이브러리를 사용해 가장 일치하는 것을 찾고 이름 간 유사성 순위를 계산할 수 있다”라고 답했다. 그런 다음 ChatGPT는 프롬프트에 퍼지우지와 코드를 표시하고 결과 입증에 도움이 되는 예제를 띄웠다.
 
ⓒ Rolf van Root/Unsplash

최근 ChatGPT를 둘러싸고 ChatGPT가 얼마나 똑똑한지, ChatGPT가 보안 코드를 작성할 수 있는지, ChatGPT 자체를 출처로 취급하고 인용해야 하는지 등의 논쟁이 뜨겁다. 하지만 많은 사람이 생성형 AI가 마케팅, 저널리즘, 예술 및 소프트웨어 개발 분야에서 인간의 창의적인 작업을 변화시킬 것이라고 믿는다. ChatGPT로 작업 효율을 높일 수 있기 때문이다.

퀄리(Quali)의 연구 개발 부사장 데이비드 벤 샤바트는 “ChatGPT 및 알파코드(AlphaCode) 같은 생성형 AI는 향후 3년 동안 개발 속도를 빠르고 효율적으로 개선하는 것부터 고객 경험 최적화에 이르기까지 앱 개발 방식에 엄청난 영향을 미칠 것이 확실하다. AI가 지속해서 발전함에 따라 기업은 이런 모델을 사용하여 고객 경험을 최적화하고 고객 참여를 높일 뿐 아니라 전반적인 비용도 감축할 수 있을 것”이라고 말했다.

인더스트리얼ML(IndustrialML) CEO 아르준 찬다르는 “생성형 AI 툴로 인해 더 많은 도메인에 걸쳐 더 광범위한 애플리케이션에 머신러닝을 활용할 수 있을 것”이라고 전망했다.

ChatGPT는 이미 사용자가 1억 명이 넘었고 마이크로소프트는 이 도구를 빙과 다른 오피스 애플리케이션에 내장하고 있다. 검색 플랫폼의 다른 생성형 AI 경쟁자로는 구글의 바드(Bard)가 있으며, 개발자는 알파코드와 깃허브 코파일럿에서 코드 생성형 AI를 사용할 수 있다. 

현재 SaaS 제품, 기술 플랫폼 및 서비스 공급업체 사이에서는 ‘ChatGPT 기능 통합’이라는 물결이 생겨나고 있다. 예를 들어, 긱스터(Gigster)는 ChatGPT 통합 지원 기능을 도입했고, 이퀄리 AI(Equally AI)는 ChatGPT 기반 웹 접근성 플랫폼인 플로위(Flowy)를 출시했다.


두려워 말라, 그 기능을 활용하라 

소프트웨어 개발자나 데브옵스 엔지니어는 생성형 AI 툴이 자신의 직업에 어떤 의미가 있는지, 자신의 일을 어떻게 바꿔놓을지 궁금해할 것이다. 

세마포어(Semaphore) 공동 설립자 마르코 아나스타소프는 “ChatGPT와 같은 생성형 AI 툴이 개발자 커뮤니티에 반향을 일으켰다. 어떤 사람은 일자리를 빼앗길 것이라고 두려워했고 어떤 이는 무시하는 편을 택했다. 하지만 깃허브 코파일럿을 통해 확인한 것처럼 AI를 워크플로우에 통합하는 개발자는 놀라운 생산성 향상을 경험할 수 있기 때문에 2가지 태도는 모두 잘못된 것”이라고 지적했다.

CRM을 예로 들어보자. 필자의 경우 ChatGPT가 유용한 파이썬 라이브러리를 식별하고 코딩 예제를 보여줌으로써 시간을 절약했다. 프로세스를 통해 검색 속도가 빨라졌으나 결과를 평가하고 코드를 애플리케이션에 통합하는 작업은 여전히 직접 해야 했다.


부족한 맥락을 보완하라

영화 ‘스타트렉’에 등장하는 컴퓨터만큼 똑똑하고 반응성이 뛰어나기를 기대하면서 처음으로 아마존 알렉사나 구글 어시스턴트를 설치하던 때를 기억하는가? AI 비서는 알람 설정, 쇼핑 목록에 아이템 추가, 일기 예보 공유 또는 오늘의 뉴스 업데이트와 같은 간단한 작업을 수행할 수 있도록 도와주지만, 복잡한 질문에 정확하게 대답할 가능성은 낮다.

소나타입(Sonatype)의 디벨로퍼 애드보케이트(developer advocate) 댄 콘은 AI 알고리즘이 어떻게 개발되고 훈련되는지 맥락을 이해하는 것이 중요하다고 강조했다. 콘은 “AI는 인간의 지능이 아니라 데이터에 기반하므로 때때로 프로그램이 일관성 있는 것처럼 보일 수 있지만, 정보에 입각한 비판적인 반응을 제공하지는 않는다”라고 말했다.

즉, 생성형 AI가 소프트웨어 개발 수명 주기에서 격차를 메우고 솔루션 구현을 가속화하는 데 도움이 될 수 있으나 적절한 경험을 이끌어낼 개발자는 여전히 필요할 것이다. 콘은 “프로그래밍을 잘 수행하기 위해 컴퓨팅의 인간적 맥락을 이해하는 능력이 ChatGPT에는 결여돼 있다. 반면 소프트웨어 엔지니어는 소프트웨어의 목적과 사용자에 대한 정보를 자세하게 추가할 수 있다. 이런 정보는 반복되는 코드로 만들어지는 단순한 프로그램의 묶음이 아니다”라고 설명했다. 

코드씨(CodeSee) CEO 샤니아 레벤은 “엔지니어링 작업은 ‘맥락’처럼 AI가 대신할 수 없는 많은 것을 요구한다. 따라서 AI를 단일 모델에 로드하고 해당 모델을 훈련해 5년 후에 무엇이 필요한지 이해하는 인간의 예측 능력을 통합하는 것은 거의 불가능하다. 다양한 비즈니스 측면의 거시적인 결정은 AI가 결코 처리할 수 없다”라고 지적했다.

필자는 5년 전 “AI가 코딩을 배울 수 있을까?”라는 제목의 글을 썼다. 오늘날 AI는 코딩 예제를 제공한다. 앞으로는 아키텍처와 디자인 패턴에 대한 엔지니어의 질문에도 대답할 것이다. 하지만 즐거운 고객 경험과 생산적인 워크플로우를 제공하는 프로그램을 만들 때 필요한 모든 지식과 혁신, 그리고 소프트웨어 개발팀이 내리는 의사결정을 하나의 AI가 모두 대체할 수 있을지는 의문이 남는다.


성공을 좌우하는 것은 결국 사람이다

소프트웨어 개발 언어와 플랫폼은 여러 세대를 거쳐 개선되고 있다. 많은 툴이 개발자 생산성을 높이고 코드 품질을 개선하며, 배포 파이프라인을 자동화한다. 예를 들어, 로우코드 및 노코드 플랫폼은 기업이 더 많은 애플리케이션을 구축하고 현대화하는 데 도움 될 수 있지만, 여전히 많은 개발자가 마이크로서비스를 코딩하고 고객 대면 앱을 개발하고 머신러닝 기능을 구축한다.  

키스플로우(Kissflow) CEO 슈레시 삼반담은 “로우코드와 노코드가 전통적인 개발자와 소프트웨어 엔지니어를 완전히 대체하지 않는 것처럼, 오픈AI는 반복적인 작업을 없애고 앱 개발을 위한 시장 출시 시간을 단축하는 유용한 툴을 제공할 뿐”이라고 일축했다.

한 가지 패러다임 변화는 키워드 기반 검색 툴이 자연어 쿼리를 처리하고 유용한 답변으로 응답하는 툴로 전환되고 있다는 점이다. 삼반담은 “일반적인 대화 언어로 쿼리를 입력해도 ChatGPT는 자동으로 문제에 대한 상용 버전 또는 제안된 샘플 코드를 생성하며, 그 속도도 개발자가 처음부터 코드를 작성해 실험하는 것보다 훨씬 빠르다”라고 설명했다. 
 
레벤은 “생산성뿐 아니라 정보를 더 빨리 얻는 방법도 엄청나게 변화할 것이다. 개발 언어에 대한 일반적인 질문같이 엔지니어들이 내려야 하는 반복적인 결정을 AI가 전담할 가능성도 있다”라고 덧붙였다.

개발자는 ChatGPT로 인해 높아지는 사용자의 기대치도 고려해야 한다. 개인화되지 않고 실망스러운 결과를 내놓는 키워드 검색을 개선할 필요가 있다. 더 많은 사람이 ChatGPT의 기능에 놀라워하고 있으며, 앞으로 직원과 고객은 자연어 쿼리와 질문에 답변할 수 있는 AI 기반 검색 경험을 기대할 것이다.

어헤드(Ahead)의 현장 CTO 조시 퍼킨스는 “생성형 AI는 검색 및 고객 서비스 분야에서 잠재력이 크다. 이런 모델은 자연어 검색과 맥락 기억(contextual memory)의 복잡한 현실을 보여주며, 고객 서비스 담당자 없이 미묘한 프롬프트에도 매우 합리적으로 곧바로 대답한다”라고 말했다.

또한 생성형 AI는 사람과 자동화, AI 기능을 연결해 워크플로우를 개선하고 초자동화(hyperautomation)를 지원할 수 있다. 상상하건대 의사가 환자의 상태에 대해 AI에게 질문하고 AI가 유사한 환자의 사례를 기반으로 응답하며, 앱은 수술 절차 혹은 처방 자동화 옵션을 제공하는 스마트 헬스 앱도 생길 것이다.

아펜(Appen)의 최고 제품 책임자 수자타 사기라주는 “생성형 AI 기술은 애플리케이션 개발과 고객 경험 설계의 다양한 측면을 자동화하고 개선하는 데 사용될 수 있다. 이는 큰 기회가 될 것”이라고 언급했다.

하지만 생성형 AI를 사용하여 워크플로우의 체계적인 변화를 유도하는 것은 쉽지 않다. ‘힘과 예측 : 인공지능의 파괴적 경제학(Power and Prediction: The Disruptive Economics of Artificial Intelligence)’이라는 책에서 저자들은 코드 예제 찾기 같은 포인트 솔루션과 실질적인 변환이 필요한 AI 시스템 솔루션 간에 차이가 있다고 설명한다.

사지라주는 “생성형 AI 모델이 정확하게 작동하려면 사람의 피드백을 통한 미세 조정이 필요하다. 이런 모델 뒤에 있는 데이터와 인간이 성공과 실패를 정의할 것”이라고 말했다.


적절한 전략과 테스트는 필수

오늘날 소프트웨어 개발자는 어디에서 생성형 AI를 활용할 수 있을까? 코딩 예제를 찾거나 코드 품질을 개선하는 데 유용하다는 것은 이미 알고 있다. 그러나 제품 관리자와 애자일 개발팀은 생성형 AI를 애플리케이션에 연결하기 전 사용례를 검증하고 테스트해야 한다. 

헬프시프트(Helpshift)의 제품 책임자 에릭 애시비는 “관리되지 않는 AI가 부정확하거나 불완전한 콘텐츠를 생산하는 위험은 기껏해야 약간의 짜증 나는 정도에 그칠 수 있으나 고객 서비스에 활용되거나 브랜드를 대표할 때는 위험 해결에 엄청나게 많은 비용이 들 수 있다. 초기에는 모니터링되지 않는 챗봇 같은 콘텐츠 생성에 AI를 단독으로 사용하려는 유혹이 있겠지만, 제반 위험을 관리하기 위해서는 인간과 AI가 협력하는 결합 전략을 채택해야 한다는 것을 깨닫게 될 것”이라고 조언했다.

ChatGPT는 빛나는 물체 그 이상이다. 하지만 다른 신기술과 마찬가지로 소프트웨어 개발자와 설계자는 생성형 AI 기능을 사용할 위치와 시기, 방법을 검증해야 할 것이다.
editor@itworld.co.kr
Sponsored
IDG 설문조사

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.