금요일 퇴근 전 받은 GenAI..
20명 가까이 되는 우리부서의 내부 역량강화를 위해 Deep-dive 해 교육할 업무가 생겨버렸다..
그래서 일요일 교보문고가서 책을 좀 찾아보다 5권 중 고른 책.. (다 사고싶었지만 금전적 제약으로 인해..)
이 책에서 얻을 수 있는 지식
- 생성형 AI 의 장점과 단점
- 생성형 AI 를 사용하는 방법
- 생성형 AI 서비스의 종류
Ch 01. 초거대 생성형 인공지능, 네가 궁금해
1. 인공지능은 왜 이렇게 화제일까?
2. 초거대 생성형 인공지능이 필요한 이유
생성형 인공지능 (generative AI) 은 텍스트, 이미지 등의 콘텐츠를 생성하는 인공지능을 의미한다. 인공지능의 크기가 커지면 일어나는 놀라운 현상 중 하나는 인공지능을 학습할 때 학습하라고 준 데이터가 아닌 새로운 콘텐츠를 생성할 수 있는 문맥 내 학습 (in-context leaning) 이 일어난다는 것이다. 문맥 내 학습은 일종의 퓨삿 러닝 (few shot leanging, 데이터를 많이 주지 않고 몇 가지만 주어도 학습할 수 있는 방법) 중 하나다. 이는 인공지능에 파라미터를 업데이트하지 않아도 새로운 지식을 가르칠 수 있는 새로운 방법이다.
3. 초거대 생성형 인공지능 서비스를 적용하기 좋은 상황
만약 외부에서 만든 초거대 생성형 인공지능을 도입한다면 초거대 생성형 인공지능을 개발하기 위한 인력과 서버와 같은 인프라를 구축하는 비용을 절약할 수 있다. 개발 과정을 생략할 수 있으므로 이런 비용을 절약하여 다른 곳에 활용할 수 있을 것이다. 게다가 전격적으로 비즈니스에 도입하는 것이 아니라 단순 PoC (proof of concept, 새로운 프로젝트가 실현 가능성이 있는지 효과와 효용, 기술적인 관점에서 검증하는 과정) 로 도입해서 테스트하는 경우라면 외부 서비스를 도입해야 한다. PoC 를 위해 엄청난 비용을 투입하는 것은 현명한 선택이 아니기 때문이다. 이런 관점에서 볼 때 외부에서 초거대 생성형 인공지능 서비스를 도입하는 것은 비용 대비 효율이 높다.
도입해서 효과가 없으면 서비스 도입을 취소하면 되고, 효과가 있으면 내재화하는 것을 검토할 수도 있다.
다다익선, 많을수록 좋다
데이터가 많으면 도움이 된다. 인공지능에는 파인 튜닝 (fine truning) 이라는 개념이 있는데, 이미 학습된 인공지능을 한 번 더 학습시켜서 특정 분야나 데이터에 더 적합하게 변경하는 것이다. 파인튜닝을 할 수 있는 데이터가 있다면 도움이 되며, 당연히 많을수록 좋다.
다음으로 패턴 (pattern) 에 대해 살펴보자. 패턴은 데이터가 가지는 특성을 의미한다. 데이터의 패턴이 뚜렷하면 파인 튜닝 시 약간의 데이터만 있어도 성공적으로 튜닝할 수 있다.
초거대 생성형 인공지능 서비스를 신뢰할 수 있는가는 더 중요한 문제다. 신뢰란 믿는다는 말이지만, 인공지능과 결합되면 조금 복잡해진다. 만약 인공지능이 100번 맞는 이야기를 하고 1번 틀리면 인공지능을 신뢰해야 할까? 신뢰는 어느 정도까지의 거짓을 허용하는 걸까?
ChatGPT 의 경우에도 아무 말이나 그럴듯하게 이야기하는 환각 (hallucination) 현상 (방대한 양의 텍스트 데이터로 학습하여 잘못된 정보를 그럴싸하게 생성하는 현상) 이 나타난다. 잘못된 이야기를 그럴듯하게 이야기하므로 마치 진짜인 것처럼 헷갈리고 속기도 한다.
마지막으로 프롬프트 인젝션 (prompt injection) 은 본래 출력되지 말아야 할 응답을 얻어내는 방법을 의미한다. 초거대 생성형 인공지능 서비스를 외부에 공개할 때는 몇 가지 제한을 걸어 개발하는데, 인공지능의 설정이나 제한을 피하여 본래는 출력되지 말아야 할 응답을 얻어내는 것이다. 과거에 SQL 인젝션 (SQL injection) 이라는 공격 방법이 있었는데, 사용자가 보안상의 취약점을 이용하여 서버의 데이터베이스를 공격하는 것으로 주로 쿼리를 공격하도록 조작한다.
프롬프트 인젝션은 공격 방식이 코드 수준에서 자연어 수준으로 내려왔다는 점이 다르다.
서포터의 필요성, 인강의 지지자
초거대 생성형 인공지능은 이미지와 텍스트를 처리하는 성능이 매우 좋으므로 디자인 작업을 할 때 DALL-E 나 빙 이미지 크리에이터를 사용해서 새로운 디자인 아이디어를 얻을 수도 있다. 그리고 디자인 작업을 할 때 유사한 요소가 없는지 한 번 더 체크하고 아이디어를 제공할 것이다. 혹은 3D 모델링 분야에서도 매우 유용하게 사용될 수 있다. 인간이 간단하게 그린 2D 도면을 가지고 3D 도면으로 만들어 작업 효율을 올려주는 식이다.
마지막에 사람이 검토하기 때문에 가장 좋은 요약본을 선택하고 정보의 누락을 방지할 수 있다. 즉, 인공지능을 단독으로 사용할 때 생길 수 있는 문제를 사람과 결합함으로써 방지하고 업무 시간을 줄이고 프로세스를 개선하여 효율이 높아지는 것이다.
4. 이해관계자의 이해
인공지능의 한계를 알아야 하는 마지막 이유는 인공지능 기술을 비판적으로 검토하고 평가해야 하기 때문이다. 인공지능 기술은 많은 분야에서 혁신적인 발전을 이루고 있지만, 이를 너무 믿으면 안 된다.
Ch 02. 비전공자를 위한 프롬프트 엔지니어링
Ch 03. 초거대 생성형 인공지능 서비스와 프롬프트 엔지니어링 사용 사례
1.자연어 생성 인공지능
먼저 자연어 생성 인공지능 서비스, 즉 ChatGPT 와 바드 (Bard), 빙챗 (BingChat) 과 같은 서비스에서 프롬프트 엔지니어링을 사용하는 방법을 알아보려 한다. 일반적으로 사용하는 언어를 생성하는 인공지능이므로, 사용하기에 따라 챗봇이 될 수도 있고 요약이나 번역 작업까지도 수행할 수 있다. 이에 대해 여러 서비스들을 소개하며 간단한 예시를 살펴볼 것이다.
고급 단계 프롬프트 엔지니어링
먼저 문맥 내 퓨샷 러닝의 예를 보자.
텍스트만 보고 어떤 기술인지를 알려줘
텍스트: 컴퓨터가 데이터를 분석하고 스스로 학습하여 문제를 해결하는 인공지능 기술
기술명: 머신러닝
텍스트: 인공신경망을 이용하여 대규모 데이터를 처리하고 인식하는 인공지능 기술
기술명: 딥러닝
텍스트: 인간의 언어를 이해하고 분석하여 컴퓨터가 처리할 수 있는 형태로 변환하는 인공지능
기술명:
몇 가지 예시만 주어도 문맥 내 퓨샷 러닝을 통해 정답을 잘 맞힐 수 있음을 알 수 있다.
2. 이미지 생성 인공지능
3. 프레젠테이션을 비롯한 문서 생성 인공지능
4. 목적 지향 인공지능
Ch 04. 프롬프트 마켓플레이스
Ch 05. 직무별 적용 예시
Ch 06. 초거대 생성형 인공지능 서비스를 실무에 적용할 때 알면 도움이 되는 것들
Ch 07. 변화는 곧 기회다