wan-stack

Auto GPT_차근히 알아보자:) (Chat GPT API 활용해보기) 본문

Chat GPT 활용

Auto GPT_차근히 알아보자:) (Chat GPT API 활용해보기)

wan-stack 2024. 2. 29. 13:02

1. Auto GPT는?

 Chat GPT API를 활용해서 만든 응용 프로그램

 목표를 달성하기 위해서 스스로 계획을 세우고 실행하는 것을 반복

 

사용자가 임무를 주면 중간 단계의 보조 업무들은 자동적으로 수행된다는

뜻에서 이같은 이름이 붙었다고 한다.

 

Auto GPT는 실수를 스스로 수정하는 '자율반복(autonomous iterations)' 기능을

사용해 결과물을 생성하는 AI 챗봇,

 

GPT-4를 기반으로 '시그니피컨트 그래비타스(Significant Gravitas)라는 개발자가

만들었고, 깃 허브에 공개했다. 

https://github.com/Significant-Gravitas/AutoGPT

 

GitHub - Significant-Gravitas/AutoGPT: AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission

AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters. - Significant-Gravitas/AutoGPT

github.com

 

 - Auto GPT를 구성하는 기본 요소로는

  prompt / Tool / GPT API

  3가지라고 볼 수 있으며, 핵심은 GPT 3.5, GPT - 4 API이다.

  (Tool로는 검색과 파일저장 등과 같은 것이라고 생각하면 된다.)


그렇다면 API란? 무엇인가???

https://www.geeksforgeeks.org/what-is-an-api/ 이미지 참고

API(Application Programming Interface)

다양한 소프트웨어 어플리케이션들이 서로 상호작용하고

통신하기 위한 방법을 정의한 일련의 규칙, 프로토콜, 도구

 

>>각 분야의 개발자들이 자신의 서비스나 앱에서 해당 기능을 쉽게

    사용할 수 있도록 모아놓은 함수들이라고 생각하면 쉽다.

 

위의 그림으로 이해를 해본다면 ~

 > 레스토랑에 가서 요리를 주문할 때, 주방에 가서 직접 요리하지 않고,

    점원을 통해 주문을 하고 요리는 쉐프가 만들어서 완성된 것들을 가져다준다.

 

    즉, API를 통해 요청을 하고 개발자들은 다른 프로그램이나 서비스의 기능을

         자신의 프로그램에 쉽게 적용할 수 있다는 말이다.

 

   >> 우리가 원하는 고급 기능을 스스로 만들지 않고, 남이 만들어 놓은 것을 사용하게 되는 것!

         (직접 만들지 않고 요청만으로 사용가능하다)

 

2. Auto GPT의 핵심은 GPT는??

 GPT는?

 - Generative Pre-trained Transformer 의 약자

 - Open AI에서 개발한 자연어 처리 기술

 - 딥러닝 모델 중 하나로, 트랜스포머 아키텍처를 기반 

 

 GPT는 큰 규모의 텍스트 데이터를 기반으로 사전 훈련(Pre - training)이 이루어진 후,

 다양한 자연어 처리 작업에 적용

 

챗GPT는 크게 두번의 학습을 통해서 만들어지는데, 먼저 챗GPT의 본체 격인 'GPT'에 지식을

학습시키고, 그 다음에 GPT에게 질문에 답을 하는 행동을 하도록 학습시키는 것

 

'고도로 발달한 다음 낱말 맞추기 기계'

 

다음 낱말 맞추기 연습을 무한히 반복시켜 지식을 학습하게 한다. 

https://www.donga.com/news/It/article/all/20230227/118085105/1

 

챗GPT란 무엇인가:가장 쉽게 설명해드립니다[서영빈의 데이터경제]

1904년 독일, 사칙연산을 할 수 있는 천재적인 말 ‘한스’가 나타나 세상을 깜짝 놀라게 한 일이 있었습니다. 당시 수학교사였던 오스텐 씨는 ‘내가 기르는 말은 수학계산도 할 …

www.donga.com


또, GPT는 Transformer Decoder 기반의  Large Language Model

트랜스포머는 ' Attention is All You Need라는 논문에서 처음 나왔다고 한다.

 

https://wikidocs.net/31379 /  이미지 참고

 

Transformer는 모델의 구조로

 - Encoder, Decoder으로 이루어짐

 - Self - Attention 기반

 - Inductive Bias가 적음

 - Scaling이 쉬움 (모델의 크기를 크게 증가시키기가 쉽다는 이야기)

 

트랜스포머 구조는 레이어를 쌓으면 더 많은 파라미터를

사용하는 모델을 만들 수 있고, 모델을 키우면 키울수록 성능이 좋아지는 것이 관찰되었다고 한다.

 

현재는 거의 표준으로 언어 모델을 만들 때 사용되고,

언어 모델 뿐만 아니라 다른 비전이나 음성인식 같은 분야에서도 많이 사용되고 있는 추세라고함.


Large Language Model은?

  > Large Language Model는 P(text)를 계산할 수 있는 큰 모델
     

   - Probability of Text (문장, 텍스트의 확률)
   - 큰 모델이라고 하는 것은 파라미터를 많이 사용하는 큰 뉴럴 네트워크를 뜻한다.
     (현재까지는 일반적으로 트랜스포머를 사용하고 있다.)

Language Modeling은?
텍스트의 확률을 계산할 수 있도록 학습 하는 것

P(next | prev)
이전이 주어졌을 때 다음이 나올 것에 대한 확률을 알고 있다.


In context learning
모델에 문장을 주면 문장 내에 패턴을 이해해서 적절한 다음 토큰을 만들어 내는 능력

어떠한 입력 내에서 패턴을 배우고 다음에 어떤 말을
해야 될지를 알게 된다는 것


task description을 주고 예시를 아래에 주어준다.
패턴을 주고 결과가 어떻게 나올 것인가?

모델에게 주는 일련의 텍스트를 의미하고
예제를 주며 모델이 잘 이해할 수 있도록 한다.

예제가 1개이면 원샷 러닝이라고도 한다.
예제를 하나만 주고 예측하게 하는 것

3개는 3샷 러닝이라고 한다.

예제를 하나도 주지 않고 예측을 하기도하는데
제로샷 러닝이라고 한다.


Reasoning - Chain of thought 

 > 추론을 할 수 있는 능력

 

chain-of-thought prompting은 step-by-step thought process를 통해

answer를 구하는 과정을 흉내낼 수 있도록 도와줍니다.

(여기서 흉내낸다는 의미는 Limitations에 나와있습니다.)

 

chain-of-thought prompting은 reasoning task에 있어 몇가지 좋은 특성들을 가지게 됩니다.

 

chain-of-thought prompting은 모델이 문제를 Intermediate step으로 쪼갠 후 해결할 수 있도록 도와줍니다.

이를 통해 문제를 해결하기 위해 reasoning step을 요구하는 문제에 대해 더 많은 계산을 수행할 수 있도록 도와줍니다.

 

chain-of-thought prompting은 model의 행동에 관해 해석할 수 있는 window를 제공합니다. 특정한 answer에 어떻게 도착했는지 알 수 있기 때문에 어떤 intermediate step이 잘못되었는지 debugging할 수도 있습니다.

 

chain-of-thought prompting은 사람이 language를 이용하여 해결할 수 있는 task에 대해 적용이 가능할 수도 있습니다.

chain-of-thought prompting은 large language model에 쉽게 적용이 가능한 방법입니다.

 


오늘은 Auto GPT와 Auto GPT의 핵심으로 사용되는 GPT에 대해서 공부해보았습니다.

 

트랜스포머 모델이라든지, 

LLM의 능력 In context learning, Reasoning 등의 개념을

간단하게 알아볼 수 있었습니다. 

 

다음으로는 ~~
실제로 사용하기 위해서 최소한으로 필요한

파이썬 설치 / Auto GPT 설치 / Open AI key 설정에 대해서 공부해보도록 하겠습니다.

 


참고,

https://velog.io/@nkw011/nlp-chain-of-thought

 

Chain-of-Thought Prompting Elicits Reasoning in Large Language Models 정리

Chain-of-Thought Prompting Elicits Reasoning in Large Language Models 논문 요약 정리

velog.io

https://wikidocs.net/31379

 

16-01 트랜스포머(Transformer)

* 이번 챕터는 앞서 설명한 어텐션 메커니즘 챕터에 대한 사전 이해가 필요합니다. 트랜스포머(Transformer)는 2017년 구글이 발표한 논문인 Attention i…

wikidocs.net

https://www.donga.com/news/It/article/all/20230227/118085105/1

 

챗GPT란 무엇인가:가장 쉽게 설명해드립니다[서영빈의 데이터경제]

1904년 독일, 사칙연산을 할 수 있는 천재적인 말 ‘한스’가 나타나 세상을 깜짝 놀라게 한 일이 있었습니다. 당시 수학교사였던 오스텐 씨는 ‘내가 기르는 말은 수학계산도 할 …

www.donga.com

https://www.geeksforgeeks.org/what-is-an-api/

 

What is an API (Application Programming Interface) - GeeksforGeeks

A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.

www.geeksforgeeks.org

알아서 일하는 진짜 인공지능 Auto-GPT 서비스 구현 영상 강의 참고:)