Jump to content
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr ×
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr
  • [Bootcamp 2023 요약] 델파이와 OpenAI - 축복인가 저주인가? - Marco Geuze


    어드민

    << Bootcamp 2023 목록으로 이동

    Bootcamp 2023 시리즈 중, "Delphi and OpenAI: A blessing or a curse? - Marco Geuze" (56 min) 의 한글 요약본입니다. 이미 잘 정리되어 있는 블로그인 "Is Powerful AI Really Going To Steal Our Jobs?(Ian Barker)"가 있어서, 해당 비디오(Marco Geuze)와 함께 아래에 정리했습니다. 

    올 해는 확실히 AI가 떠오르고 있는 것 같다. 이제 IDE 소프트웨어에도 그 유형이 무엇이든AI가 적용하는 것은 시간 문제다. 이 추세는 OpenAI에 마이크로소프트가 최소 100억 달러 이상이라는 놀라운 금액을 OpenAI에 투자하면서 본격적으로 커지고 있다. OpenAI는 hatGPT, Dall-E 등 인공지능과 머신러닝(ML) 분야를 놀라게 한 강력한 기술들을 만드는 곳이다. 마이크로소프트의 이러한 용기있는 실행으로 인해, 구글의 모기업인 Alphabet은 ChatGPT 라이벌인 자사의 Bard를 알리는 과정에서 홍보에 큰 어려움을 겪으며 발목을 붙잡힌 모양새이다. AI를 통한 골드러시가 이제 조금씩 진행되고 있고, 머신 러닝이나 AI를 담고 있는 (또는 최소한 그렇게 주장하는) 앱들이 급증하고 있는 현실은 이미 다들 아는 사실이다. 그런데, 여기서 우리가 가장 먼저 떠올리게 되는 질문이 하나 있다. AI는 정말로 우리의 일자리를 빼앗을 만큼 강력한가?

    목차


    델파이와 OpenAI - 축복인가 저주인가? 비디오 세션 (56min)

     

    위 세션과 관련된 블로그인 "Is Powerful AI Really Going To Steal Our Jobs?(Ian Barker)"의 번역:

    LSP, 코드 완성, 에러인사이트도 AI의 한 형태일까?

    좋은 질문이다! RAD스튜디오 11.3에는 여러 새로운 기능과 개선된 부분들이 있다. 특히 LSP(언어 서버 프로토콜)의 품질과 안정성 개선에 많은 공을 들였다. 우리가 점(.)을 입력하거나 CTRL+SPACE를 누르면 그 상황에서 사용할 수 있는 함수, 메소드, 프로퍼티를 제안해주는 메커니즘을 뒷받침하는 '마법'이 바로 LST이다. 에러 인사이트와 같은 유용한 기능의 인텔리전스에도 내재되어 있다. 적어도 제대로 잘 알고 있지 않다면 인텔리전스처럼 보인다. 사실 이와 비슷한 기능이 마이크로소프트 제품에도 있고, '인텔리센스(intellisense)'라는 이름을 사용한다. 두운과 운율을 고려해 만든 이름일 것이다.

    spacer.png
    (그림. RAD스튜디오 11.3은 특히 LSP와 코드 완성의 안정성과 품질에 중점을 두었다.)

    때때로 LSP, 코드 완성, 에러 인사이트 등은 살아 있는 것 같게 보일 수 있다 (특히 11.3에서는 견고하고, 크게 향상되었다). 이건 정말 유용하다. 지금의 복잡한 소프트웨어개발 업계에서는 아마 필수라고 할 수 있다. 하지만, 실제로는 매우 빠르고 스마트한 인덱스 도구일 뿐이다. 그저 특정 작업 즉 RAD스튜디오의 경우에는 델파이와 C++ 코드에 특화된 도구이다. 영리하고 유용하지만, 스스로 생각하지는 못한다. 적어도 아직까지는 그렇다.

     

    ChatGPT가 AI 분야에서 큰 도약을 이룰 수 있었던 이유는?

    ChatGPT는 대규모 언어 모델로, 수십억 개의 토큰(지식 요소)을 갖추고 있다. 이전에 있던 비슷한 언어 모델(LLM)들과 비교하면, 실제로 규모가 몇 배나 더 클 것이다. 최근 출시된 ChatGPT4는 이제 한 단계 더 발전하면서 이미지까지 이해할 수 있을 뿐 아니라, 부적절한 답변을 제공하지 않도록 도와주는 보호 장치를 갖추고 있다.

    가장 큰 차이는, ChatGPT이 답변을 스스로 구성하고 다중-응답 대화를 한다는 점이다. 마치 자신만의 결론을 스스로 그려나가는 것처럼 보인다. 미리 준비된 라이브러리나 제한된 잠재적인 답변 중 선택해서 답변을 제공하는 수준이 아니다. 직관과 추론을 통해서 복잡하게 보이는 상호작용을 한다.

    ChatGPT에 비해, 초기 챗봇인 컴퓨터 과학자이자 윤리학자인 요셉 바이젠바움(Joseph Weizenbaum)의 엘리자(Eliza)은 사실 거대한 IF 문들의 집합체였고 지금과는 비교가 불가한 수준이었다. 어떤 면에서는 당연하기도 하다. 왜냐하면, 바이젠바움은 자신이 엘리자를 작성한 것은 진정한 AI를 의도적으로 시도했다기보다는 패러디를 위한 면이 더 컸다고 했기 때문이다.  하지만, 엘리자를 향한 반응을 통해, 진짜 AI의 잠재력에 대해 그는 우리 사회가 신중을 기할 만큼 충분히 현명할 것이라는 확신을 가질 수 있었다. 요셉 바이젠바움은 2008년 세상을 떠났다. 그가 실제로 ChatGPT를 볼 수는 없었지만, 그 역시 우리와 마찬가지로 깊은 인상을 받았을 것이며 또 어쩌면 조금 불안했을 것이라고 확신한다.

    spacer.png
    (그림. ChatGPT에게 요셉 바이젠바움(Joseph Weizenbaum)이라면 ChatGPT를 어떻게 생각했을지 물어 보았다.)

     

    ChatGPT AI가 소프트웨어 개발자를 위해 무엇을 해줄 수 있을까?

    정답은 '매우 많다'이다. ChatGPT AI는 우리의 질문에 대답할 수 있고, 오류 찾는 걸 도울 수 있고, 심지어 우리를 위해 코드를 작성할 수도 있다. 이는 굉장히 놀랍고 두렵기도 하다.

    한 예로, 나는 ChatGPT (2023년 3월 버전)에게 "Hello blog"를 보여주는 메시지 상자를 표시하는 간단한 프로시저를 만들어 달라고 요청했다. 어느 누구도 "Hello blog"라고 말해 달라고 요청했던 사람이 없었을 것이라고 확신하고 한 질문이다. 이 문장이 어려운 건 아니지만, 흔한 문장이 아니기 때문에, ChatGPT가 템플릿 같은 것일 아니라 실제로 그 코드를 넣는지를 확인하기에 충분하기 때문이다.

    그 결과는 다음과 같다.

    spacer.png

    정답이었다! 브라우저에서 코드를 감싸고 있는 상자에 표시된 구문 강조 기준이 "Pascal"이 아니라 "Arduino"인 것이 웃기긴 했지만, 완벽한 정답이었다.

     

    컴퓨터를 배우고 있는 나를 위해, ChatGPT가 내 숙제를 해줄 수 있을까? 

    내가 했던 "hello world 프로시저를 만들어달라"라는 요청은 딱 고등학생들이 받는 질문 수준이었고, 그 대답은 완벽한 정답이었다. "그렇다". 나는 ChatGPT가 비밀 무기가 될 것이라고 확신한다. AI라는 굉장히 유용한 날개를 달고 시험을 성공적으로 통과하려는 수천 명의 학생들의 삶을 더욱 쉽게 해 줄 것이다. ChatGPT는 단순한 프로시저를 넘어선 훨씬 더 복잡한 작업도 해낼 수 있다. 코드를 최적화하거나, 디자인 패턴을 형성하거나, 웹 서비스용 인터페이스를 만드는 등 사실상 거의 모든 것을 할 수 있다.

     

    ChatGPT를 RAD스튜디오 IDE에 통합할 수 있을까?

    ChatGPT는 기능이 매우 뛰어나기 때문에 이것을 RAD스튜디오 IDE에 바로 통합한다면, 그래서 코드 에디터를 벗어나지 않고도 코드를 작성하고 생성할 때 도움을 받을 수 있다면 정말 멋질 것이다. 다행히, 많은 델파이 개발자들 역시 이를 흥미로운 아이디어라고 생각했다.

    RAD스튜디오 알렉산드리아 11.3에는 픽스, 향상, 강화된 멋진 것들이 들어있다. RAD스튜디오 11에서 많은 사랑을 받은 것 중 하나가 ToolsAPI이다. ToolsAPI는 IDE 안의 영역이나 코드 에디터 창을 개발자가 직접 상호작용할 수 있도록 해주는 유닛, 클래스, 인터페이스들의 집합이다. 따라서 거터(줄 번호가 있는 곳), 프로그램 코드의 각 행 등도 개발자가 직접 다룰 수 있다. 나는 ToolsAPI를 훨씬 더 깊이 있게 다룰 글들을 계획하고 있다. 왜냐하면 이런 변경은 나처럼 호기심이 많고 창의적인 개발자들에게는 매우 흥미롭기 때문이다. ToolsAPI와 코드 에디터의 보다 자세한 변경 사항은 여기에서 볼수 있다. 따라서, 단연코 "그렇다" 즉, ChatGPT는 RAD스튜디오에 통합할 수 있다라고 위 질문에 답할수 있다. 다만 몇 가지 주의할 부분이 있는데, 그 것들은 이 글의 마지막 부분에서 이에 대해 다루겠다.

     

    ChatGPT AI를 RAD스튜디오 IDE에 통합하기

    내가 본 것 중에 ChatGPT를 통합하는 가장 좋은 사례 중 하나를 꼽자면, GDK 소프트웨어의 Marco Geuze가 만든 데모를 들 수 있다. Marco는 멋지게 잘 구성한 세션을 최근 열린 델파이콘(DelphiCon)에서 진행했다. Marco 세션의 진행을 내가 담당했고, Q&A까지 함께 한 것은 나에게 행운이었다.

    Marco가 ToolsAPI를 사용해 ChatGPT를 가져와 RAD스튜디오 코드 에디터에서 자동으로 델파이 프로그램 코드를 생성하는 방법을 보여주는 모습을 아래 영상을 통해 확인할 수 있다.

    Marco Geuze의 RAD스튜디오 애드온 소스 코드는 어디에서 받을 수 있을까?

    Marco의 GDK 소프트웨어 깃허브 계정에는 ChatGPT 애드온 전체 소스를 받을 수 있는 저장소가 있다: https://github.com/GDKsoftware/DelphiCon2023 GDK는 자체 프로젝트에서 사용하는 ToolsAPI용 헬퍼 라이브러리도 있다: https://github.com/GDKsoftware/ToolsAPI-helper

     

    ChatGPT AI의 강력함을 IDE에 추가하는 여러 방법

    Marco Geuze는 ChatGPT RAD스튜디오 AI 애드-온을 처음 선보인 사람이다. 하지만, Marco 것만 있는 것은 아니다.  이 글을 작성하는 지금 시점에(2023년 4월)도 최소 두 개 이상  RAD스튜디오에서 사용 가능한 ChatGPT 플러그인이 있다. 그 두 개 모두 아직 사용해 볼 기회는 없었지만, 이 주제에 관심이 많다는 것을 알게 되어 신이 난다.

    spacer.png

     

    ChatGPT AI로 인해 직업을 잃을수도 있을까?

    바로 지금 묻고싶은 질문이지 않을까? 좋은 소식은 현재 ChatGPT가 델파이 코드를 만드는 수준은 '조금 괜찮은 정도' 라는 점이다. 하지만 종종 정말 형편없게 작업하기도 한다 (Marco Geuze가 얼마나 많은 오류를 받았었는지 정확히 보여주는 글이 있다). 빠른 구글 검색을 하거나, 더 좋은 방법인, 마이크로소프트 엣지 브라우저에서 오른쪽에 있는 "Bing ChatGPT 기반 AI 검색(Bing ChatGPT-powered AI search" 버튼을 이용해 질문하면, 다음과 같은 답변을 얻을 수도 있다:

    spacer.png

    그러니 지금은 일단 안전하다고 생각한다. 하지만 OpenAI가 정말 대단한 물건이고, 마이크로소프트가 수십억 달러에 달하는 자금을 뒷받침하고 있기 때문에, 해낼 수 있는 최고에 도달하지 못한 채 머물지는 않을것이라고 본다. 알파벳(Alphabet)이나 메타(Meta)가 따라잡는 데 그렇게 많은 시간이 소요될 것이라고는 생각하지 않는다. AI는 새로운 소프트웨어의 개척자이다. 38년간 소프트웨어 개발 업계에 있으면서, 지금 이 순간은 분명 엄청난 일이 벌어지고 있는 순간 중 하나라고 생각한다. 무어(Moore)의 법칙에 상응하는 AI가 있는지는 잘 모르겠지만, 정교함과 역량이 기하급수적으로 커지면서 그와 비슷한 흐름으로 진행된다면, 나는 새로운 AI의 지배자를 환영할 것이다.

    한 가지 위안이 되는 점은, 운이 안 좋아서 다시 구직활동을 하게 되더라도, ChatGPT가 설득력있는 이력서와 지원서 작성에 도움을 줄 수 있다는 점이다. "격납고 문을 열어줘(Open up the pod bay doors)"고는 명령하지는 말자 ;-)


    spacer.png

     

    << Bootcamp 2023 목록으로 이동


    User Feedback

    Recommended Comments

    There are no comments to display.


×
×
  • Create New...

중요한 정보

이용약관 개인정보보호정책 이용규칙 이 사이트가 더 잘 작동하기 위해 방문자의 컴퓨터에 쿠키가 배치됩니다. 쿠키 설정 변경에서 원하는 설정을 할 수 있습니다. 변경하지 않으면 쿠키를 허용하는 것으로 이해합니다.