[소개] 엄청나게 화제가 된 프로젝트가 있습니다. AutoGPT 인데요.
•
GPT-4를 통해 AI Agent를 운영할 수 있는 open-source 입니다.
◦
본문의 예시 동영상들은 꼭 보시길 추천드립니다.
◦
간단히 맥에 설치하여 활용 가능합니다. (Google API 키, OpenAI API 키, Pinecone API 키 필요)
•
Flow : GPT-4 기반의 AI Agent에게 역할 & 미션을 부여, 인터넷 검색 & 메모리 등을 이용하여 목표를 수행하게 되는데, 아래와 같은 과정을 지속적으로 반복하게 됩니다.
1.
Prompt 생성
•
GPT 입력 : 역할, 미션 & 이전 최근 history (memory) & 할 수 있는 command (미리 code 형태로 작성되어 있는 action; e.g. 검색, 파일쓰기 등)
•
GPT 출력 : 자신의 생각을 정리(Thought), 추론(Reasoning), 작업을 계획(Planning), 비평 (Criticism) 하는 형태로 prompt 생성
2.
Prompt로부터 결과 추출
•
GPT 입력 : prompt
•
GPT 출력 : 실행해야하는 command와 argument
3.
command에 해당하는 action 실행
•
이후 일을 진행할 때는, 여러 Sub AI Agent들을 만들어서 각 Sub Agent들이 Sub-task들을 수행하도록 분배하고 최종적으로 만족할 수준으로 작업이 되면, 이를 취합하여 결과물을 만들어 줍니다.
•
주의 : 현재도 아주 빠른 속도로 업데이트가 되고 있기에, 현 문서에 있는 내용은 deprecated 되었을 수 있습니다.
[개인 AI 비서 J.A.R.V.I.S. 시대의 서막]
[HyperWrite 서비스 (Otherside AI)]
•
비슷한 아이디어를 활용한 서비스 “HyperWrite” (Otherside AI)
◦
예시 4번. AI Personal Assistant on Web (HyperWrite) : 데모 영상
[Camel 프로젝트]
[Reference]
•
•
Project Code
GPT-4를 통해 AI Agent를 운영할 수 있는 open-source “”
•
Flow : GPT-4 기반의 AI Agent에게 역할 & 미션을 부여, 인터넷 검색 & 메모리 등을 이용하여 목표를 수행하게 되는데, 아래와 같은 과정을 지속적으로 반복하게 됩니다.
1.
Prompt 생성
•
GPT 입력 : 역할, 미션 & 이전 최근 history (memory) & 할 수 있는 command (미리 code 형태로 작성되어 있는 action; e.g. 검색, 파일쓰기 등)
•
GPT 출력 : 자신의 생각을 정리(Thought), 추론(Reasoning), 작업을 계획(Planning), 비평 (Criticism) 하는 형태로 prompt 생성
2.
Prompt로부터 결과 추출
•
GPT 입력 : prompt
•
GPT 출력 : 실행해야하는 command와 argument
3.
command에 해당하는 action 실행
•
Prompt를 만들기 위한 GPT 입력 구성 : Constraint / Command (특정한 API나 function을 실행하기 위한 명령) / Resource / Evaluation
◦
Agent가 수행하기 위한 명령들은 아래와 같이 미리 code-level로 정의되어 있어야 함.
command_categories = [
"autogpt.commands.analyze_code",
"autogpt.commands.audio_text",
"autogpt.commands.execute_code",
"autogpt.commands.file_operations",
"autogpt.commands.git_operations",
"autogpt.commands.google_search",
"autogpt.commands.image_gen",
"autogpt.commands.improve_code",
"autogpt.commands.twitter",
"autogpt.commands.web_selenium",
"autogpt.commands.write_tests",
"autogpt.app",
"autogpt.commands.task_statuses",
]
Python
복사
•
GPT에 의해서 나오는 중간 결과 종류들
◦
명령을 수행하기 위해 필요한 여러 단계의 보조 업무들 추출
◦
정해진 Task를 수행
◦
다른 Agent의 Task를 평가
•
이후 일을 진행할 때, 여러 Sub AI Agent들을 만들어서 각 Sub Agent들이 Sub-task들을 수행하도록 분배하고 최종적으로 만족할 수준으로 작업이 되면, 이를 취합하여 결과물 생성할 수 있음
◦
중간 결과마다, human intervention을 받아서 허용여부를 설정하거나 추가 내용을 삽입하여 결과를 control 할 수 있음
◦
정보를 저장할 수 있는 메모리 관리 (Vector DB or Files; 이전 모든 history)
▪
summary memory : 모든 입출력 결과들을 보관하면서, 가장 최근 몇개의 결과들에 대해 지속적으로 summary update 해나가면서 추가로 history에 삽입하는 과정 존재 (모든 memory를 참조할 수 없으니, 전체 history를 요약하는 과정을 수행)
Features
•
◦
Google Search
•
◦
Backend Memory : Pinecone & Redis & Weaviate 지원
◦
Ingesting Files 지원
•
•
Image Generation by DALL-E (default) & Stable Diffusion (HuggingFace API Token 필요)
•
•
•
Eleven Labs TTS 활용 가능 (Speech Mode)
대표 응용 분야
•
보고서 작성
•
콘텐츠 제작
•
코딩
•
번역
•
고객센터
•
데이터 분석
•
게임 만들기