이제 진짜 자비스..?

ki hyun Lee·2023년 4월 30일
1

개요

이제는 Chat GPT를 모르는 사람이 거의 없을거라 생각한다. 그렇다면 Chat GPT는 어떤 원리로 어떤 방식으로 작동하는걸까? 그리고 Auto GPT는 또 어떤걸까? 라는 궁금증이 생기기 시작했다.

원리

먼저 AI의 원리를 정말로 간단하게 설명하자면 현재의 AI 기술은 AI가 사고를 하는것이 아닌 아주 빠른 속도에 패턴 인식에 가깝다고 할 수 있다. 예를 들어, 강아지와 고양이를 구별하는 AI를 만들고 싶다고 한다면 수천, 수만, 수억개의 고양이와 강아지의 사진을 AI에게 학습시켜 강아지와 고양이의 패턴을 찾아내도록 하는것이다. 따라서, 새로운 강아지 혹은 고양이 사진을 보더라도 자신이 찾아낸 패턴에 근거하여 해당 사진이 강아지 혹은 고양이일 가능성이 몇 %인지 말할 수 있는 것이다.

Chat GPT이 기반이 되는 GPT-3도 같은 원리로 작동하고 있다. 대신 해당 모델을 45TB에 해당하는 대규모 데이터셋으로 훈련시켰다는 차이점이 존재할 뿐이다.

🚨 45TB가 얼마나 큰지 감이 안온다면?
1시간 분량의 영화를 저장한다고 하면 약 22,500편 정도를 저장할 수 있으며
5~7MB 정도 되는 사진을 저장한다면 6,428,571장에서 9,000,000장 정도의 사진을 저장할 수 있는 어마무시한 용량이다.

이전에는 이렇게 말하면 GPT-3가 별거 없는줄 아는 사람이 많았지만 요즘은 Chat GPT가 당당히 위용을 뽐내고 있으니

Auto-GPT?

Auto GPT는 불과 한 달 전에 만들어진 따끈따끈한 오픈소스 프로젝트이다. 또한 현재 깃허브에서 star을 가장 많이 받은 레포 100위 중 하나에 들어갈 정도로 사람들의 관심이 뜨겁다.

위 사진을 보면 Auto GPT의 성장세가 얼마나 미쳤는지 알 수 있다. (20일만에 100k.. ㄷㄷ)

Chat GPT를 사용하면 GPT에게 질문을 하고 대답을 받을 수 있다. 하지만 대부분의 경우 한 번의 질문만으로 원하는 결과가 나오는 경우는 없기에 원하는 결과가 나올때까지 계속해서 질문을 하여야 한다.
Auto-GPT는 이 과정에서 인간을 제거한 버전이라고 볼 수 있다. 즉 GPT-3보다 더욱 발전된 모델인 GPT-4 모델을 활용하여 스스로 질문하는것이다! 🤯
작업을 부여하기만 하면 Auto-GPT는 인간의 개입 없이도 해당 작업을 수행하는데 필요한 단계와 프롬포트를 제시할 수 있다.
이게 가능한 이유는 Auto-GPT는 Chat-GPT가 할 수 없는 아래와 같은 기능들을 가지고 있기 때문이다.

  1. 인터넷에 접속하여 필요한 정보들을 분석하고 수집할 수 있음
  2. 장기 기억과 단기 기억을 모두 갖추고 있음
  3. GPT-4를 사용하여 텍스트를 생성 (좀 더 정확한 텍스트 생성이 가능)
  4. DALLE 혹은 Stable Diffusion을 사용한 이미지 생성 기능
  5. 코드를 작성할 뿐만 아니라 스스로 실행도 가능
  6. AI 음성 서비스를 통해 진행 상황을 말할 수 있음

솔직히 이 정도면 거의 자비스라고 볼 수 있을 것 같다..

설치

🚨 Auto-GPT는 최신 GPT 모델인 GPT-4와 GPT-3를 병행하여 사용하기에 사용량에 따라 많은 비용이 발생할 수 있다는 점을 염두에 두고 진행하시길 바랍니다.

저는 잠깐 테스트만 해봤는데 $0.14가 나갔네요..

requirements

위 요구사항이 다 준비되었다면 터미널을 열고 프로젝트 폴더를 생성할 아무 폴더에나 들어간 다음 아래 명령어를 실행하면 된다. 아래 명령어는 Github에서 안정된 버전의 최신 Auto-GPT 코드를 다운받아준다.

git clone -b stable https://github.com/Significant-Gravitas/Auto-GPT.git

위 명령어를 실행하면 Auto-GPT라는 폴더가 만들어질텐데 해당 폴더를 vscode로 열어주면 된다.

이후 터미널을 열고 Auto-GPT 폴더 안에서 아래 명령어를 실행해준다. 해당 명령어는 Auto-GPT가 작동하기 위하여 필요한 모든 패키지를 한번에 설치해준다.
pip install -r requirements.txt

그 후 .env.template라는 파일을 찾아서 복제해준다.

복제된 파일의 이름을 .env로 변경해준다.

이제 몇 가지 API 키를 받아와야 한다. 먼저 당연히 GPT-4와 GPT-3를 사용하므로 Opan AI API 키가 필요하다. API키는 아래 웹 사이트에서 발급받을 수 있으며 한 번 생성하면 다시는 확인이 불가능하니 한번에 잘 복사해두자.
https://platform.openai.com/account/api-keys
그 후 복사한 API 키를 .env 파일에 OPENAI_API_KEY 부분에 붙여넣어주면 된다.

우리 똑똑한 자비스는 구글에서 검색도 해야하므로 Google API 키도 필요하다. 이를 위해 아래 사이트로 접속해서 새 프로젝트를 생성해 줘야한다.
Google cloud console
이 후 API 및 서비스 페이지로 가서 Custom Search API를 사용 설정해 주어야 한다. 사용 설정을 완료하였으면, 사용자 인증 정보 페이지로 가서 사용자 인증 정보 만들기를 클릭하여 API 키를 생성해주면 된다.
이제 생성된 API 키를 .env 파일에서 아래 사진에 보이는 위치에 붙여넣어주기만 하면 된다.

이제 아래 페이지로 이동하여 검색엔진 설정을 해주자
https://cse.google.com/cse
검색엔진 이름을 지정해주고 전체 웹 검색을 선택해주면 된다.

생성후 맞춤설정 페이지로 가서 검색엔진 ID를 복사하면 된다. 그리고 해당 ID를 .env 파일에서 구글 API 키 밑에 있는 CUSTOM_SEARCH_ENGINE_ID에 붙여넣어주면 된다.

구글 클라우드에 신용카드를 추가하지 않을 경우 하루 100건의 검색이 무료로 제공되며, 신용카드를 추가할 경우 10,000건이 무료로 제공된다.

이것 뿐만 아니라 Auto-GPT를 Github, Twitter, AI 음성 서비스, Stable Diffusion과 같은 서비스와도 통합시킬 수 있다.

Redis나 Pinecone과 같은 메모리 백엔드를 구성하지 않으면 메모리가 로컬에 저장된다. 로컬에 메모리를 저장하기 위해서는 프로젝트 루트 폴더에 auto-gpt.json이라는 파일을 만들어주면 된다.

Auto-GPT 사용하기!!

위 과정을 모두 마무리하였다면 터미널에 아래 명령어를 사용하여 Auto-GPT를 실행시킬 수 있다.
python -m autogpt
이때 AI의 이름을 물어보는데 이 이름은 자기 마음대로 설정하면 된다.

나는 곧 미국 대학에 가야하기에 대학을 검색해주는 AI를 만들기로 했다.

다른 프로젝트로 인해 파이썬 3.9를 사용하고 있었는데 3.10 이상을 사용하지 않으면 문제가 있을 수 있다고 한다. 귀찮으니 패스..


role에는 곧 미국으로 유학을 갈 학생들을 위해 대학을 찾아주는 AI라고 적어줬다.

몇 번의 대화 끝에 AutoGPT는 내 토플 점수와 GPA 그리고 지출 가능한 비용을 바탕으로 다음과 같은 대학들을 추천해주었다.

  1. Manhattan Institute of Management
  2. University of South Florida
  3. University of Tampa
  4. George Mason University
  5. University of Pennsylvania
  6. University of California, Berkeley
  7. University of Central Florida
  8. Dartmouth College

결론

물론 인공지능이 자기 스스로 생각하고 행동한다는 점은 충분히 놀라운 점이다. 그럼에도 불구하고 아직까지 개발 버전이기에 부족한 점이 많다고 느꼈다. (무한 루프에 빠지거나, 계속해서 검색만 하는 등)

결론: 아직 자비스는 멀었다..

profile
Full Stack Developer at Team Verse

0개의 댓글