지난 몇 달 동안 MetaGPT[1]의 Agents 소프트웨어 회사 사례는 인상적이었습니다. GitHub에서 빠르게 별 3만 개를 얻었고 수십 개의 글로벌 전문 미디어와 대형 V 보고서를 받았습니다. 그러나 에이전트 소프트웨어 회사는 Agent Society의 축소판에 불과합니다. 지능사회에는 소프트웨어 회사, 전자상거래 회사, 게임 회사뿐 아니라 생산성을 제공하기 위한 수많은 독립 에이전트가 있을 수도 있습니다. 현대 인공 지능의 아버지인 위르겐 슈미트후버(Jurgen Schmidhuber)도 지능 사회의 개념을 강하게 인식하고 있습니다. 그와 그의 팀은 MetaGPT에 상당한 공헌을 했으며 MetaGPT 저자 목록에 포함되어 있습니다.
이르면 1986년 마빈 민스키는 그의 작품 "Society of Mind(SOM)"[2]로 인공 지능 분야의 이념 혁명을 이끌었습니다. 그는 매우 독창적인 이론을 제안했습니다. 마음은 지능을 갖춘 개별 부분으로 구성될 필요가 없으며 대신 일련의 단순한 부분의 상호 작용으로 조립된 복잡한 시스템입니다. 우리가 아는 것을 탄생시킨 것은 바로 이 집합입니다. 지능과 의식. 이 개념은 자율 에이전트의 구축과 후속 개발에 헤아릴 수 없을 만큼 광범위한 영향을 미쳤습니다.
2023년을 향한 인공지능 기술의 도약으로 이제 우리는 각각의 작은 구성요소 자체가 어느 정도의 지능을 갖고 있다면, 이들이 서로 어떻게 상호작용하고, 어느 수준의 집단지성을 만들어낼지 상상할 수 있다. 2023년 상반기 Natural Language Agent Society(NLSOM, Language Agent Society)에 관한 연구 논문[3] 중에서 King Abdullah University of Science and Technology, Swiss Artificial Intelligence Laboratory, Oxford University 및 ETH 취리히 과학자들은 지능형 에이전트 커뮤니티의 가능성을 공동으로 탐구했습니다.
그들은 단일 에이전트가 독립적으로 완료할 수 없거나 완료하기 어려운 작업을 공동으로 완료할 수 있는 언어 기반 에이전트 커뮤니티를 구축할 것을 제안했습니다. 이 연구는 단순한 개념 증명 이상의 일련의 실험적 아이디어를 제안하며, 이는 인간 구성원도 포함할 수 있는 수조 개의 지능형 에이전트가 포함된 사회의 전조로 간주됩니다.
https://arxiv.org/pdf/2305.17066.pdf
2023 CogX 페스티벌에서 Jurgen은 청중에게 LLM(대형 언어 모델)에 대한 깊은 통찰력을 보여주었습니다. 그는 에이전트와 관련된 주제를 논의할 때 Universal Turing Machines[4] 및 Gödel Machines[5]를 포함하여 자체 개선 시스템을 구축하는 다양한 방법을 언급했습니다. 그는 현재의 대규모 언어 모델이 다양한 모델을 연결하는 인터페이스로 보편적 기호 언어(예: 자연어 또는 프로그래밍 코드)를 사용함으로써 우리에게 새로운 사고 방식을 제공한다고 지적했습니다. 이러한 모델은 다른 언어 모델과 통신하여 NLSOM(자연어 사회 정신) 패러다임을 구축할 수 있습니다.
Jurgen Schmidhuber 교수는 스위스 인공 지능 연구소(IDSIA)의 과학 이사이자 King Abdullah 과학 기술 대학(AI Initiative, KAUST)의 인공 지능 센터 소장입니다. 그의 작업은 강화 학습(Reinforcement Learning), 메타 학습(Meta Learning), 신경망(Neural Network) 등 인공지능의 중요한 방향에 지대한 영향을 미치고 있습니다.
지금까지 Schmidhuber 교수의 Google Scholar 인용 횟수는 공동 발명자로서 LSTM(장단기 기억) 논문 인용 횟수 90,000회를 포함해 210,000회입니다. 15세 때 그는 은퇴할 수 있도록 더 똑똑하고 자기 개선이 가능한 인공지능을 개발하고 싶었다. DeepMind를 설립한 4명 중 2명과 최초의 AI 박사 모집인은 Jurgen Schmidhuber의 연구실 출신이었습니다.
Jurgen이 꿈꾸는 사회에서는 모든 의사소통이 투명하고 쉽게 해석 가능합니다. 그는 '마인드스톰(Mindstorm)'이라는 개념을 언급했는데, 즉 문제가 주어지면 이러한 자연어 마인드 사회가 협력하여 문제를 해결한다는 것이다.
이 과정에서 사회 구성원 각자는 서로 다른 생각과 관점을 가질 수 있으며, 이러한 다양한 아이디어를 수집하고 통합하여 집단적 결정을 내리게 됩니다.
이 방법은 단일 에이전트로는 효과적으로 해결할 수 없는 문제를 해결하는 데 특히 적합합니다. Jurgen은 Python 언어를 사용하여 특정 프로그래밍 문제를 해결하는 것과 같이 이러한 문제는 프로그래밍 성격을 가질 수 있다고 덧붙였습니다. 이러한 시너지를 통해 지능형 에이전트 사회의 집단지성은 개인의 역량을 뛰어넘는 솔루션을 달성할 수 있을 것이다.
이 MetaGPT 프로젝트 반복은 Jurgen으로부터 직접적인 지도를 받았으며 그의 팀은 코딩, 작성 및 엔지니어링 분야에서도 많은 지원을 제공했습니다.
다음으로, 이 글에서는 독자들이 그 내용을 더 깊이 이해할 수 있도록 MetaGPT 논문의 업데이트된 내용을 자세히 분석하겠습니다.
1. 논문 및 프레임워크 업데이트
논문 섹션 3.1 업데이트: MetaGPT 프레임워크의 역할 전문화 설계 및 역할 분업의 개념을 설명하고, MetaGPT의 단일 에이전트의 동작 모드 및 구성 방법을 설명합니다. SOP에 따라.
문서의 섹션 3.2 업데이트: 구조화된 통신 인터페이스 디자인 및 게시-구독 메커니즘을 포함하여 MetaGPT 프레임워크의 통신 메커니즘을 소개합니다.
문서 섹션 3.3의 업데이트: 실행 가능한 피드백 메커니즘이 도입되었습니다. 이는 코드 실행 중 지속적인 반복과 자체 수정을 위한 메커니즘입니다.
그림 2. 통신 프로토콜 예시(왼쪽)와 즉시 실행 가능한 피드백을 갖춘 반복 프로그래밍 예시(오른쪽) 왼쪽: 에이전트는 공유 메시지 풀을 사용하여 구조화된 메시지를 게시합니다. 또한 구성에 따라 관련 메시지를 구독할 수도 있습니다. 오른쪽 그림: 엔지니어 에이전트는 초기 코드를 생성한 후 코드를 실행하여 작업 중 오류가 보고되는지 확인할 수 있습니다. 오류가 발생하면 Agent는 실행 결과를 확인하고 이를 PRD, 시스템 설계 및 코드 파일과 비교하여 코드를 다시 작성하고 최적화합니다.
1.1.에이전트 통신 프로토콜
현재 대부분의 다중 에이전트 협업은 자연어 기반 대화를 통해 이루어지지만 이는 특정 작업을 해결하는 최적의 방법은 아닙니다.
제약 및 특정 요구 사항이 없는 자연어 출력은 정보 내용의 왜곡 또는 의미 초점의 이동으로 이어질 수 있습니다.
따라서 구조화된 커뮤니케이션 콘텐츠와 인터페이스 형식은 상담원이 작업 요구 사항을 빠르고 정확하게 이해하는 데 도움이 되며 정보 콘텐츠의 보존을 극대화하는 데에도 도움이 됩니다. 인간 SOP의 다양한 위치에 대한 역할 요구 사항을 참조하여 해당 위치의 인간 전문가와 일치하는 각 역할에 대한 출력 사양을 설정하여 에이전트가 원래의 자연어 정보를 보다 구조화된 표현으로 변환하도록 요구합니다(그림 참조). 아래 그림). 데이터 구조, API 설계 및 시퀀스 다이어그램 등이 있습니다.
그림 3 구조화된 SOP가 더 나은 결과를 가져올 수 있음을 보여주는 MetaGPT 소프트웨어 개발 프로세스의 개략도. 더 자세한 시연은 부록 B를 참조하세요
이후 실험에서는 이 복잡한 소프트웨어 개발 작업을 수행하기 위해 MetaGPT와 ChatDev(채팅 형식의 커뮤니케이션 및 협업 메커니즘 사용)의 실제 솔루션 효과를 비교했습니다. 결과는 구조화된 통신 인터페이스 설계가 지능형 에이전트 협업에 상당한 효과를 가져올 수 있음을 보여줍니다.
게시-구독 메커니즘
다중 에이전트의 통신 과정에서 1v1 단일 지점 통신 방식에만 의존하면 통신 토폴로지의 복잡성이 증가할 뿐만 아니라 협업 효율성이 낮아질 뿐만 아니라 개발이 급격히 증가합니다. 소송 비용. 따라서 우리는 [게시-구독] 메시징 메커니즘을 통해 프레임워크 내에서 공유 메시지 풀과 관심 기반 구독을 구현했습니다.
구체적으로, 다른 에이전트에게 일일이 묻지 않고 에이전트가 직접 정보를 얻을 수 있는 공유 메시지 풀을 제공하는 환경입니다. 동시에 에이전트는 자신의 관심/관심 있는 행동을 기반으로 메시지를 필터링하고 필터링하여 메시지/메모리 과부하를 줄일 수 있습니다. 그림 3에서 볼 수 있듯이 설계자는 주로 제품 관리자의 PRD 문서 출력에 주의를 기울이지만 테스트 엔지니어의 문서에는 덜 주의를 기울입니다.
1.2, 실행 가능한 반복 피드백 디자인
디버깅 및 실행 피드백은 일상적인 프로그래밍 작업에서 중요한 역할을 합니다. 그러나 기존 방법에는 자체 수정 메커니즘이 부족한 경우가 많으며 코드 검토 및 검토 메커니즘을 통해서만 코드 타당성 평가를 수행합니다. 코드 생성 시 LLM의 환각 문제를 더욱 줄이기 위해 코드를 반복적으로 개선하는 실행 가능한 피드백 메커니즘을 도입합니다. 자동 코드 실행 테스트 결과 피드백을 통해 코드 타당성 평가 및 판단이 이루어지며, LLM을 추진하여 자체 반복 및 최적화를 수행합니다. 그림 2에 표시된 것처럼 엔지니어는 코드 실행 결과에 따라 코드를 계속 업데이트하고 최대 N번 재시도 후 테스트가 통과되거나 종료될 때까지 반복적으로 테스트할 수 있습니다.
2. 실험 업데이트
실험 부분에서는 다중 에이전트 프레임워크를 SOP에 도입하는 효과를 알아보는 실험과 실행 가능한 반복 피드백으로 인한 코드 품질 향상 실험을 추가했습니다. 데이터세트:
2.1. 실행 가능한 반복 피드백 설계
그림 4는 MetaGPT가 HumanEval 및 MBPP 벤치마크 모두에서 이전의 모든 방법보다 뛰어난 성능을 보여줍니다. MetaGPT(GPT-4를 기본 모델로 사용)의 경우 HumanEval 벤치마크의 Pass@1이 GPT-4에 비해 크게 향상되었습니다. 이 두 가지 공개 벤치마크에서는 85.9%와 87.7%를 달성했다(실험 비용을 고려하여 일부 모델의 수치 결과는 Dong et al.(2023)[6]에서 제공한 결과를 그대로 사용함).
그림 4: 한 번의 시도로 MBPP 및 HumanEval에 대한 합격률
2.2, 소프트웨어 개발 작업 데이터 세트 및 평가 지표
SoftwareDev의 경우 생성된 프로젝트의 실제 유용성에 우선 순위를 두고 다음을 사용하여 합격합니다. 성능을 평가하기 위한 수동 평가(A, E) 또는 통계 분석(B, C, D)을 통해 시각적 예시를 통해 MetaGPT의 자율 소프트웨어 생성 기능을 보여줍니다(종이 그림 5). 추가 실험 및 분석은 문서의 부록 C에서 확인할 수 있습니다.
(A) 실행 가능성: 이 측정항목은 생성된 코드를 1(실패/비기능)에서 4(결함 없음)까지 평가합니다. 1은 작동하지 않음을 의미하고, 2는 작동하지만 완벽하지 않음을 의미하고, 3은 거의 완벽함을 의미하며, 4는 결함이 없음을 의미합니다.
(B) 비용: 여기의 비용 평가에는 (1) 프로젝트 실행 시간 (2) 토큰 소비 및 (3) 실제 비용이 포함됩니다.
(C) 코드 통계: (1) 코드 파일 수 (2) 파일당 평균 코드 줄 수 및 (3) 총 코드 줄 수를 포함합니다.
(D) 생산 효율성: 기본 정의는 토큰 사용량을 코드 줄 수로 나눈 것입니다. 즉, 값이 작을수록 코드 생산 효율성이 높아집니다.
(E) 수동 개정 비용: 코드가 원활하게 실행되도록 보장하는 데 필요한 개정 라운드 수로 정량화되며, 이는 디버깅 또는 종속성 및 기타 개정 가져오기와 같은 수동 개입 빈도를 나타냅니다.
2.3, SOPs vs ChatChain
특정 작업을 해결하는 시나리오에서 SOP가 다중 에이전트 협업에 미치는 영향을 살펴보기 위해 개방형 소프트웨어 개발 작업을 지원하는 에이전트 프레임워크인 ChatDev를 선택했습니다. 소스 작업, 실험으로 개체를 비교합니다. ChatDev는 ChatChain의 역할 분할과 소프트웨어 개발 폭포 흐름을 기반으로 하는 에이전트 구성 및 협업을 위한 프레임워크입니다. 비교를 위해 SoftwareDev에서 7개 작업을 선택하고 위에서 언급한 관련 지표를 비교하여 차이점을 설명했습니다.
백서의 표 1에 표시된 것처럼 MetaGPT는 까다로운 SoftwareDev 데이터세트의 거의 모든 측정항목에서 ChatDev보다 성능이 뛰어납니다.
예: MetaGPT는 시행 가능성 측면에서 3.75점을 얻었으며 이는 4점(완벽함)에 매우 가깝습니다. 또한 ChatDev보다 훨씬 적은 시간(503초)이 소요됩니다.
코드 통계 및 수동 수정 비용 측면에서도 ChatDev보다 훨씬 낫습니다. MetaGPT에는 더 많은 토큰(ChatDev의 19,292에 비해 24,613 또는 31,255)이 필요하지만 코드 줄을 생성하려면 126.5/124.3 토큰만 필요합니다. 이에 비해 ChatDev는 248.9 토큰을 사용합니다.
이 결과는 다중 에이전트 협업에서 SOP의 장점을 강조합니다.
3. 감사의 말씀
본 논문에 제안과 도움을 주신 KAUST AI 센터 사무총장 Sarah Salhi, 박사후 연구원 Wang Yuhui, 박사 과정 학생 Wang Wenyi에게 감사드립니다.
[1] https://arxiv.org/pdf/2308.00352.pdf
[2] https://en.wikipedia.org/wiki/Society_of_Mind
[3] https://arxiv.org/pdf/2305.17066.pdf
[4] https://en.wikipedia.org/ wiki/Universal_Turing_machine
[5] https://en.wikipedia.org/wiki/Gödel_machine
[6] https://arxiv.org/abs/2304.07590
위 내용은 지능형 사회를 목표로 MetaGPT, Jurgen Schmidhuber 팀과 손잡다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!