인공지능에 대한 압박감을 이래저래 느끼고 있다. 생성형 인공지능을 둘러싼 호들갑은 8할이 유튜브 피드가 차지하고 있고, 실상 현실에서는 그 압박감이 드문드문 오고 있다. 비즈니스 미팅을 다녀오고 난 뒤 조바심을 느꼈는지 경영진 측에서 '생성형 AI로 뭐라도 해봐야 하는거 아니냐'는 메시지를 보내오긴 하지만, 실무자들은 '지금 바빠 죽겠는데 인공지능에 염두를 둘 시간이 없어요', 내지는 '써보니까 별거 없던데요?'라는 입장이다.
아직 오프라인 일터는 (불안한듯) 고요하지만 넷상에서는 아무리 무시하려고 해도 어딜 가나 인공지능 타령이다. 인공지능으로 업무 효율성이 향상될거고 거기다 각 전문분야에서 인공지능이 객관적이고 공정한 판단을 내려줄테니 꿀이나 빨던 전문직 종사자들이 곧 갈아치워질 것이라며 내심 기대하는 낙관론자들이 있는가 하면, 뉴스 보도와 동영상/그림 편집작업에서부터 인공지능이 한자리씩 꿰차는 현상을 보면서 미래 일자리를 걱정하는 비관론자들도 있다.
나는 비관론에 경도되어 있는 편이고, 인공지능을 찬양하는 사람들을 잘 이해할 수 없다. 그들은 '인공지능이 당신을 대체하지 않을 것이다. 인공지능을 사용할 줄 아는 사람이 당신을 대체할 것이다.'라는 말로 비관론자들을 찍어누르곤 하는데, 어차피 인공지능을 사용할 줄 아는 사람들 또한 인공지능을 쥐고 있는 사람들에 의해 대체되거나 소모될 것이라는 게 내 생각이다. 거기다 옹호론자들은 '아직은 걱정할 때가 아니다'는 식의 메시지도 던지곤 하는데, 그말인즉슨 언젠가는 걱정할 일이 생긴다는 뜻 아닌가? 뭐 이런 무책임한 말이 다 있는지.
과거에도 인공지능에 대한 우려가 있을 때마다, 창의적인 예술활동은 인간 고유의 것이므로 예술가들은 살아남을 것이라고 하지 않았던가? 그렇게 안심을 한 결과, 오늘날 우리는 ChatGPT가 소설플롯을 써주고, 미드저니가 그림을 그려주고, 또 최근에는 오픈AI가 출시한 '소라'가 말도 안 되는 퀄리티의 영상을 뽑아대는 모습을 보고 있다.
내 입장은 이러하다. 하이테크 분야에서나 거론되던 인공지능이 서서히 일상을 침범하는 현실이 달갑지는 않다. 하지만 고작 내가 인공지능의 발전을 반대한다고 거대기업들이
그만둘 리는 없으니, 인공지능을 알아는 둬야 겠다는 생각에 이런저런 책을 읽어보려고 한다. 뭘 알아야 다음 수를 두지.
첫 책으로 <챗GPT가 쏘아올린 신직업 프롬프트 엔지니어>를 골랐다. 밀리의 서재에서도 읽을 수 있다. 이 책 또한 인공지능이 인류에게 도움이 될 것이란 낙관론을 펼치고 있지만, 저자와 가치관 싸움을 할 생각은 없다. 일단 기술적/방법론적인 내용만 뽑아가보자.
OpenAI는 주로 다른 자동차 회사에 엔진을 공급하는 역할을 해왔습니다. 앞에서 언급한 Jasper나 Copay.ai, Rytr와 같은 서비스는 모두 OpenAI가 개발한 GPT-3 모델을 기반으로 작동합니다. 쉽게 말해 엔진을 개발하던 회사가 자동차를 만들었으니, 더 값싸고 안정적인 공급이 가능할 수밖에요. (실제로 챗GPT의 출시 이후 Jasper가 심각한 매출 하락을 겪고 있다는 뉴스가 들려옵니다.)
- '챗GPT는 하나의 자동차다'
앞서 말했던 것처럼 생성 AI의 핵심은 ‘정보를 찾는 것’이 아닌 ‘무언가를 생성하는 것’이기 때문이죠. 챗GPT는 텍스트를 생성하는 생성 AI입니다. 인간의 질문이나 요구에 알맞은 대답을 문장으로 생성해내는 방식이지요. 저희는 챗GPT를 이용하며 ‘인공지능과 대화를 한다’라는 느낌을 받지만, 사실 인공지능의 입장에서는 ‘통계적으로 적절한 문장을 생성해내는 것’에 불과합니다.
- '생성 AI, 창작하는 인공지능'
사실 자연어 기반 생성 AI가 정보를 찾아내는 것은 학습된 데이터의 양이 압도적으로 많아지면서 부수적으로 얻어진 능력, 그러니까 ‘부작용’입니다. 오히려 챗GPT는 정보를 찾는 것보다 보고서나 기획서, 스토리 작성과 같은 창작에 더 강점을 보입니다. 정보를 물어보면 ‘거짓된 정보’를 ‘생성’할 때가 훨씬 많죠.
- '생성 AI, 창작하는 인공지능'
YuGPT라는 사이트 간판을 걸어놨을지언정, 정작 서비스는 ‘자신이 누구인지’를 모르며, ‘어떤 학교의 챗봇인지’는 더더욱 모르는 깡통밖에 되지 않습니다. 개발자는 후자를 위해 ‘파인튜닝(미세 조정)’이라고 불리는 학습 과정을 거칠 수 있습니다. 영남대학교에 대한 정보를 입력하는 것이지요. 또, 전자를 위해서는 어떤 일을 하면 될까요? 바로 ‘사전 프롬프트 입력’을 해야 합니다. 미리 이용자들이 볼 수 없는 시스템 영역에 GPT를 향한 지시문을 남겨두는 것입니다
- '서비스를 위한 프롬프트 엔지니어'
그리고, 사전에 입력해둔 프롬프트의 길이에 따라 모델의 비용 청구가 달라지는 경우도 많습니다. 비용을 아끼기 위해서라도 최대한 적고 품질 높은 프롬프트를 이용해 최상의 결과물이 나올 수 있도록 해야 하죠. 이것 역시 역량 있는 프롬프트 엔지니어가 필요한 이유입니다.
- '서비스를 위한 프롬프트 엔지니어'
하지만, 코딩에 대한 최소한의 이해가 있다면 더 유능한 프롬프트 엔지니어가 될 수 있는 건 사실입니다. 경쟁력을 갖추려면 코딩에 대한 이해가 수반되어야 할 것입니다.
- '프롬프트 엔지니어링에 대한 오해들'
크리스티안은 좋은 프롬프트 엔지니어링을 위해서는 간단한 파이썬 프로그래밍 코드를 짜는 것과 같은 실용적이고 기본적인 기술 지식이 있으면 좋을 것이라 말합니다. 남들은 챗GPT 사이트에서 프롬프트를 입력할 동안, 경쟁력 있는 다른 프롬프트 엔지니어는 API를 직접 연결해 다양한 엔지니어링 시도를 할 수 있습니다,
여기에는 API를 연결할 수 있는 최소한의 코딩 지식이 요구되겠지요. 전문적이고 복잡한 기술을 이해할 필요는 없더라도, 최소한의 기술을 보유하고 있으면 더 좋은 프롬프트 엔지니어링을 할 수 있습니다.
- '프롬프트 엔지니어가 갖추어야 할 역량'
수학 계산을 필요로 하는 프롬프트를 개발해야 한다면, 더 고민이 많겠죠. 이때는 Chain of Thoughts를 활용하면 됩니다. 사고 연의 주요 아이디어는 ‘챗GPT에게 추론의 과정들을 유도해 올바른 답을 내도록 하자’는 것이지요. 초등학교 3학년 학생들에게 수학 공식과 답을 알려주는 과정을 생각해보면 됩니다. 반드시 풀이를 적게 하는 거예요. 풀이를 적지 않으면 답을 틀릴 확률이 높아집니다. 그럼, 챗GPT가 어떻게 풀이를 적도록 하냐고요? 문제를 낼 때 예제를 제시해주면 됩니다.
- '챗GPT 프롬프트 엔지니어링 기법'
그렇게 기본 프롬프트를 토대로 여러 수정과 보충을 거치며 프롬프트를 완성해갑니다. 완성도 있는 결과물이 나온다고 파악이 되면, ‘소나무’ 부분을 변경해봐도 동일하게 강건체 문장을 만들어내는지 파악해야겠지요. ‘소나무’를 ‘스마트폰’으로 바꿨는데 강건체 문장이 나오지 않는다면 쓸 수 없는 프롬프트입니다.
이 경우에는 다시 처음부터 과정을 반복하거나, 프롬프트 안에 ‘소나무’ 키워드와 연관되는 것들이 있지는 않은지, 오류가 있을 만한 부분이 없는지 재검토해야겠지요. 키워드 변경은 여러 번, 다양한 키워드로 시도해보는 것이 좋습니다.
- 'GPT 프롬프트를 개발하는 단계'
토큰이란 하나의 단어, 문장을 세분화한 조각을 의미하죠. 국어 시간에 배웠던 ‘형태소’를 떠올리면 됩니다. GPT의 경우, 영어는 주로 단어 중심으로, 한글은 자소 단위로 토큰을 분리하죠.
(...)
GPT는 이렇게 나뉜 토큰을 숫자(벡터)의 나열로 변환(인코딩)해 처리합니다. 생성한 것을 출력할 때는 숫자에서 문자로 변환하는 과정(디코딩)을 거치지요.
- 'GPT 모델 이해하기'
챗GPT를 두고 흔히 하는 오해는 ‘사람이 입력한 질문에 대한 답을 인터넷에서 찾아 그대로 출력한다’는 것인데요. 그렇지 않습니다. 인터넷에 있는 자료를 학습한 것은 사실이나, 답변을 생성할 때 이를 그대로 가져오는 일은 없습니다. 토큰화되어 있는 말뭉치 속에서 확률적으로 옳은 것을 가져오는 것일 뿐이니까요.
사실 이는 사람이 지식을 학습하고 전달하는 과정과 별반 다르지 않은 것 같습니다. 저희도 ‘책에서 읽었던 구절’을 통째로 기억해 말하지 않죠. 구절의 중심 내용, 특정한 단어 중심으로 기억하고 있던 것을 말할 때 재구성하는 경우가 많잖아요?
- 'GPT 모델 이해하기'
인공지능이 학습하는 것은 인간처럼 무언가를 이해하는 것이 아니라, 파라미터(매개변수)와 가중치의 형태로 나타나죠.
인공지능의 학습은 입력값에 대응하는 결과가 잘 나오도록하는 최적의 파라미터를 찾는 과정입니다. 모델 학습을 하는 과정에서 파라미터는 계속해서 바뀔 수 있습니다. 이 파라미터가 많다는 것은 그만큼 더 정확한 처리와 성능을 가지고 있을 ‘확률이 높다’는 거죠. 하지만 파라미터가 많다고 해서 항상 결과물이 좋다는 보장을 항상 할 수는 없습니다.
- 'GPT 모델 이해하기'
능력 있는 프롬프트 엔지니어가 되기 위해서는 챗GPT 서비스만을 이용해서는 안 됩니다. 오픈 AI의 플레이그라운드(Playground)를 사용할 수 있어야 하죠. 챗GPT는 오픈 AI가 제공하는 서비스일 뿐, 실제 API 연결, 서비스 제작 등을 위해서는 순수한 모델로의 접근이 반드시 필요합니다. 이걸 할 수 있는 공간이 바로 플레이그라운드죠. 쉽게 말해, 오픈 AI의 플레이그라운드는 GPT 모델에 대한 학습과 실험을 위한 노코드 온라인 도구라고 할 수 있습니다.
- '오픈AI 플레이그라운드 알아보기'
'Books' 카테고리의 다른 글
(읽는 中 - 2부) '벤허', 루 월리스 著, 공경희 譯, 출판사 더스토리 (1) | 2024.03.31 |
---|---|
(읽는 中 - 1부) '벤허', 루 월리스 著, 공경희 譯, 출판사 더스토리 (1) | 2024.03.24 |
요즘은 벤허를 읽고 있다. (0) | 2024.02.18 |
(#1) '소설가 구보 씨의 일일'을 읽고 (0) | 2024.02.12 |
[1독] 경청 (김혜진 著) (1) | 2024.01.07 |