세번째 세션은 AutoGPT에 대한 내용으로, 업스테이지의 김상훈 님이 진행하셨습니다. AutoGPT는 개인적으로 테스트용으로 잠깐 사용해 보았습니다. 간단한 목표로 'Fast API 프레임워크를 이용하여 API 서버를 만들어주세요'라는 요청을 전달했을 때, 무한루프가 발생하고 시간이 상당히 소요되는 등의 단점을 경험했습니다. (GPT-4를 적용하여 무한루프를 방지할 수 있었지만, 오류가 발생한 기억이 있습니다.) 더욱이, 제가 아직 충분한 커맨드 실행 능력을 갖추지 못한 상태에서 AutoGPT는 겉으로는 자극적이지만 실질적인 내용이 부족하다는 주장을 본 적도 있습니다.
첫 세션에서 언급한 것처럼 Prompt Manager의 중요성에 대해 이야기해 주셨는데, 이번 세션에서 AutoGPT를 다루면서 Prompt Manager가 실제로 어떻게 적용되고 왜 중요한지에 대해 다시 한 번 확인해 볼 수 있기를 기대하고 있습니다.
우리는 목표를 달성하기 위해 어떤 방식을 사용할까요? 일단 목표를 설정하고 계획을 수립한 다음 계획을 실행하고 결과를 피드백하여 계획을 수정하는 것을 반복합니다. 그리고 결국 목표를 달성하게 됩니다. AutoGPT도 이와 같은 방식으로 작동합니다. 기존의 ChatGPT가 계획을 세우고 피드백이 가능하다면, AutoGPT는 실행 능력을 더해 사람이 목표를 달성하는 과정과 유사하게 작동합니다.
AutoGPT는 내부에 Prompt에 대한 템플릿을 가지고 있습니다. 역할 부여, 자동화, 예산 제한, 메모리 절약, 디스크 쓰기, JSON 포맷 지키기, 선택 가능한 커맨드 실행 등의 내용으로 템플릿이 구성되어 있습니다. 이 중에서도 메모리 제한을 해결하는 방법이 가장 큰 포인트로 작용합니다. AutoGPT는 필요한 정보 검색과 이전 단계의 작업 내용(히스토리 컨텍스트)을 피드백해야 합니다. 이때 메모리 제한을 고려하지 않으면 필요한 정보나 작업 내용을 모두 잊어버려 잘못된 행동을 하거나 무한 루프에 빠질 수 있습니다. 따라서 AutoGPT는 필요한 정보와 이전 단계의 작업 내용을 요약하여 디스크에 저장하는 방식으로 메모리 제한을 극복하였습니다.
메모리 제한 이외에도 AutoGPT에는 여전히 한계가 존재합니다. 루프를 반복할수록 비용이 증가하고, 실행 가능한 커맨드에도 제한이 있습니다. 또한 OpenAI API의 응답 속도가 느린 관계로 실행 속도가 예상보다 느리며, 가끔 낮은 품질의 응답으로 잘못된 행동을 유발하고 사람의 개입이 많이 필요할 수 있습니다.
위에서 언급한 것처럼 AutoGPT는 메모리 부족, 응답 속도, 비용 증가 등의 문제를 가지고 있습니다. 이번 세션에서는 이러한 문제들을 개선하는 방법들을 소개하고자 합니다.
우선, 사용하는 메모리를 줄이기 위해 history context를 줄이는 것이 필요합니다. 이를 위해 URL 길이를 줄이기 위해 aliasing을 사용하는 팁이 있습니다. 또한, 여러 커맨드를 병합하여 하나의 커맨드로 실행함으로써 응답 시간을 단축시키는 방법도 적용 가능합니다.
또한, 개인적으로 코드를 살펴본 결과 몇 가지 장치를 더 찾을 수 있었습니다. URL을 검증함으로써 일부 Hallucination 현상을 방지하고, JSON 포맷 검증을 통해 커맨드 실행이 불가능한 상태가 되지 않도록 방지하는 것이 그 중 하나입니다. 또한, GPT-3.5와 GPT-4를 적절히 혼용함으로써 정확도를 높이거나 실행 속도를 개선하는 것도 가능합니다.
이번 세션에서는 AutoGPT의 대표적인 활용 사례로 Slackbot을 소개했습니다. AutoGPT는 ChatGPT와는 달리 정보 검색이 가능하기 때문에 최신 정보를 제공하는 장점이 있습니다.
안녕하세요?
서울대, 카이스트, 포스텍 학생으로 이루어진 학생 창업 팀 SEOULIST LAB입니다.
AutoGPT에 대해 써주신 글 잘 읽었습니다.
현재 저희 역시 Agent형 AI를 개발중에 있는데,
이 과정에서 Agent를 사용해본 경험이 있으신 분들의 의견을 듣고자 연락드렸습니다.
가능하다면, 다음과 같은 사항을 여쭈어보고 싶습니다.
아래 주소에서 저희 서비스의 간단한 동작 영상을 확인하실 수 있습니다.
제품 소개 페이지: https://intend.super.site
팀 소개 페이지: https://seoul.ist
제품 소개 페이지 내에 있는 구글 폼에 이메일을 적어주시면 저희가 추가로 연락드리도록 하겠습니다.
긍정적인 피드백을 부탁 드립니다.
감사합니다!