2P by GN⁺ | ★ favorite | 댓글 1개
  • LLM은 복잡한 과제에서 정확도가 흔들리는데, 이 연구는 추가 구조보다 샘플링-투표만으로 성능을 끌어올릴 수 있는지 검증함
  • Agent Forest는 같은 질의를 여러 번 실행해 답을 모은 뒤 다수결로 최종 답을 고르는 단순한 앙상블 방식임
  • GSM8K에서는 앙상블 크기 15에서 Llama2-13B가 Llama2-70B와 비슷한 정확도에 도달했고, Llama2-70B와 GPT-3.5-Turbo도 더 강한 대응 모델에 가까워짐
  • 이 방식은 CoT 기반 방법이나 다중 에이전트 협업 프레임워크와 독립적으로 결합될 수 있어 기존 기법 위에 추가 성능 향상을 만들 수 있음
  • 개선 폭은 특히 어려운 과제와 약한 모델에서 크게 나타나며, 복잡한 프롬프트 설계 없이도 비용 대비 성능을 높일 여지가 있음

복잡한 과제에서 흔들리는 LLM 정확도

  • LLM은 언어 생성, 이해, 추론 등 다양한 응용에서 강한 능력을 보이지만 복잡한 과제에서는 정확한 답을 내기 어려움
  • 기존 성능 개선 연구는 크게 앙상블 방법과 다중 LLM 에이전트 협업 프레임워크를 활용해 왔음
    • LLM-Debate는 여러 LLM 에이전트가 산술 과제의 최종 답을 토론하도록 구성해 단일 에이전트보다 추론 성능을 높임
    • CoT-SC는 여러 사고 체인(thought chain)을 생성하고 가장 자기일관적인 답을 고르는 방식으로, 단일 사고 체인을 쓰는 CoT보다 추론 성능을 개선함
  • 선행 결과에서도 에이전트 수나 사고 체인 수가 늘 때 성능이 오르는 현상이 관찰됐지만, 기본 LLM 에이전트 수 자체의 스케일링 특성은 별도 연구 대상으로 충분히 다뤄지지 않았음

Agent Forest의 동작 방식

  • Agent Forest는 LLM 에이전트 수 증가가 성능에 미치는 영향을 보기 위해 단순한 샘플링-투표 절차를 사용함
  • 동작은 두 단계로 나뉨
    • 과제 질의를 단일 LLM 또는 다중 LLM 에이전트 협업 프레임워크에 반복 입력해 여러 출력을 생성함
    • 생성된 출력에 다수결 투표를 적용해 최종 결과를 결정함
  • 절차는 CoT-SC에서 영감을 받았지만, 복잡한 CoT 경로 설계에 의존하지 않음
  • 이름은 고전적인 Random Forest에 대한 오마주임

GSM8K와 여러 과제에서의 결과

  • 실험은 서로 다른 크기의 다양한 LLM과 추론·생성 과제를 포함하는 여러 데이터셋에서 수행됨
  • 전반적으로 앙상블 크기, 즉 에이전트 수가 커질수록 LLM 성능이 향상될 수 있음
  • Figure 1의 GSM8K 결과에서는 Llama2-13B, Llama2-70B, GPT-3.5-Turbo 모두 앙상블 크기가 커질수록 정확도가 증가함
    • 앙상블 크기 15에서 Llama2-13B는 Llama2-70B와 비교 가능한 정확도에 도달함
    • 앙상블 크기 15와 20에서 Llama2-70B와 GPT-3.5-Turbo는 각각 더 강한 대응 모델과 비교 가능한 정확도를 보임
    • 그림의 오차 막대는 표준오차를 나타냄
  • 작은 LLM도 단순 앙상블을 적용하면 더 큰 LLM과 비교 가능하거나 더 나은 성능을 낼 수 있음

기존 기법 위에 얹을 수 있는 성능 개선

  • Agent Forest는 기존의 복잡한 LLM 성능 개선 방법과 독립적으로 결합 가능한 접근임
  • CoT 기반 방법에는 플러그인처럼 붙여 추가 성능 향상을 만들 수 있음
  • 복잡한 방법과 비교해도 Agent Forest만으로 대부분의 경우 비교 가능한 성능을 달성할 수 있음
  • 추가 수작업 프롬프트 설계나 복잡한 협업 프레임워크 없이도 경쟁력 있는 결과를 얻을 수 있음

난이도에 따른 효과와 최적화

  • 성능 향상은 어려운 과제와 약한 모델에서 더 크게 나타남
  • 문제 난이도가 Agent Forest 효과에 미치는 영향은 세 가지 차원으로 나눠 분석됨
    • 문제의 내재적 난이도
    • 추론 단계의 길이
    • 정답의 사전 확률
  • 각 차원을 조정한 실험을 통해 Agent Forest 효과에 영향을 주는 속성을 확인함
  • 확인된 속성을 바탕으로 “More Agents”의 효과가 더 잘 나타나도록 하는 최적화 전략을 추가로 개발함
  • 공개 코드는 https://github.com/MoreAgentsIsAllYouNeed/AgentForest에서 제공됨

댓글과 토론

Hacker News 의견들
  • 이 논문을 제대로 읽지 않은 사람들이 있는 것 같음
    이 논문은 Chain-of-thoughtLLM-Debate 같은 다중 에이전트 구성이란 발상을 거의 반박하는 듯함
    논문에서 제안한 대안은 같은 LLM에 같은 질의를 여러 번 던지되, 질의들 사이에 맥락을 공유하지 않고, 답변 간 유사도를 계산해 가장 흔한 답을 고르는 방식임
    LLM이 환각과 정답을 섞어 내놓는다면 정답들은 서로 비슷하고 환각은 혼란스럽게 흩어질 테니 말이 됨
    그런데 이 단순한 알고리즘이 다른 다중 에이전트 알고리즘만큼, 때로는 더 잘 작동함
    즉 영리한 프롬프트를 쓰는 다른 다중 에이전트 기법들이 특별한 일을 하는 게 아니라, 개선의 대부분은 LLM을 여러 번 실행하고 “가장 좋은 답을 고르라”고 시키는 데서 오는 것 같음

    • https://en.wikipedia.org/wiki/Lorenz_system
      오래전부터 날씨 시뮬레이션은 입력 매개변수를 조금씩 바꿔 모델을 반복 실행하고, 이상치를 버리고 평균을 냈는데 꽤 잘 작동함
      LLM도 대체로 무작위 시드, 즉 온도 값이 있으니 같은 입력을 넣고 출력을 평균내면 더 나은 추정치를 얻을 수 있음
      Lorenz system은 환각 문제가 아마 해결 불가능한 이유에 대해서도 단서, 어쩌면 설명을 줌
      이 관점을 받아들이면 LLM이 범용 인공지능으로 가는 길에서는 거의 막다른 길이라는 점도 금방 드러남
      시뮬레이션은 에뮬레이션이 아니고, LLM이 지능을 갖게 될 가능성은 일기예보가 날씨를 제어하게 될 가능성과 비슷함
    • GitHub Copilot을 써본 느낌으로는, 환각은 어떤 참인 사실의 가능도가 낮을 때 Copilot이 그래도 가장 그럴듯한 답을 내놓기 때문에 생김
      보통 특정 라이브러리가 매우 비정상적이고 문서화되지 않은 방식으로 동작하는데, 예제를 물어보면 그 라이브러리가 그런 식으로 동작했다면 애초에 필요 없었을 멋지고 이해하기 쉬운 가짜 함수 코드가 나옴
      그런 질의를 여러 번 실행한다고 도움이 될 것 같지는 않음
    • 이건 기계학습에서 오래전부터 쓰였고 성능도 좋다고 입증된 앙상블 모델과 아주 비슷한 발상임
      여러 예측기의 결과를 평균내거나 투표시켜 가장 흔한 예측값을 고르면, 여러 예측의 공통분모를 택하면서 예측의 잡음을 줄일 수 있음
    • 온도를 0으로 설정하면 모델은 가장 확률이 높은 토큰을 고르고 출력은 항상 같아짐
      하지만 그게 정답을 보장하지 않는다는 건 이미 알고 있는데, 그렇다면 여러 번 실행하는 게 어떻게 더 나을 수 있음?
    • “LLM이 환각과 정답을 섞어 내놓는다면 정답들은 서로 비슷하고 환각은 혼란스럽게 흩어질 것”이라는 부분은, 기반 모델이 특정 주장에 대해 가진 확신도에 가까운 값을 줄 것으로 예상함
      그 자체는 좋지만, 도시전설이나 문화적 전설도 높은 순위에 오를 것 같음
      아주 인간적인 실수이긴 해도 여전히 실수임
      이를 넘어서려면 세계 모델을 만들고, 모순을 찾고, 그 모순을 해소할 새 증거를 찾아야 한다고 봄
  • 드디어 나왔음
    단일 에이전트가 모든 걸 맞히게 만드는 데 집중하지 말고 에이전트를 계층화해야 한다고 16개월쯤 말해왔는데, 이제 가리킬 논문이 생겨서 좋음
    작업별 수확 체감이 이상적인 인간 회의 규모와 비슷한 크기에서 빠르게 평평해진다는 점도 흥미로움: https://www.researchgate.net/figure/18-Optimal-Meeting-Sizes...
    에이전트 수를 더 촘촘한 단계로 실험했다면 저 숫자들과 얼마나 가까이 맞을지 궁금함
    나중에 각 에이전트를 조금씩 다른 목표에 맞춰 미세조정했을 때 성능이 얼마나 더 오르는지도 보고 싶음
    각 에이전트의 온도 값만 다르게 둬도 성능 향상이 있을 것 같음
    연구 커뮤니티가 이 방향으로 움직이기 시작해서 매우 반가움

    • 전적으로 동의함
      LLMWare의 SLIM agents도 볼 만함: https://github.com/llmware-ai/llmware/tree/main/examples/SLI...
      거의 정확히 이 주제에 집중하면서 여러 로컬 LLM을 연결함
      여기에 맞닿은 좋은 주제로, 모델의 용도에 따라 결정적 샘플링이 필요하다는 점도 있음
      용어가 조금 틀렸을 수는 있지만, LLMWare 팀이 이와 관련해 좋은 2부 영상을 만들었음: https://www.youtube.com/watch?v=7oMTGhSKuNY
      전용 소형 LLM이 앞으로의 길이라고 봄
      참고로 그들과 아무 관련은 없고, 그냥 정말 멋진 프로젝트라고 생각함
    • 인간도 이렇게 작동한다고 봄
      두개골 안에 우리 자신의 버전이 5개나 8개쯤 돌아다니고, 그중 하나가 어느 정도 감독자 역할을 하는 식임
    • 작년에 몇 달 동안 https://github.com/agi-merge/waggle-dance로 문제 해결용 다중 에이전트 시스템을 만들고 있었음
    • “각각 약간 다른 목표에 맞춰 미세조정”이라면, 말하자면 전문가 혼합 같은 것 아닌가
    • 연구자들이 사람들이 실험적으로 만들고 있는 걸 연구한다는 게 재미있음
      crewAI가 한 예임
  • 최근 ACM ByteCast의 Edward Chang 에피소드와 관련 있어 보임
    Stanford University 컴퓨터과학과 겸임교수인 Edward Chang이 나온 에피소드임: https://learning.acm.org/bytecast/ep50-edward-y-chang
    듣기 싫다면 대본도 있음
    그가 쓰는 접근은 요즘 LLM의 일반적인 질문/답변 형식 대신, 여러 LLM이 토론 주제에 대해 서로 대화하게 하고 인간은 사회자 역할을 하는 방식임
    같은 자원으로 여러 LLM이 대화를 통해 도달한 최종 답변은 정밀도와 정확도 모두에서 크게 향상된다고 함

    • 이 논문은 토론 부분이 필요 없다고 말하는 듯함
      그냥 LLM들이 문제를 독립적으로 풀게 한 뒤 가장 인기 있는 답을 고르면 됨
    • Haskell로 비슷한 걸 만들어봤음
      벤치마크는 해보지 않았지만 꽤 설득력 있게 느꼈음
      예를 들어 각 에이전트를 수학의 하위 분야별 다른 “전문가”로 정의했음: 증명 이론가, 추상대수 전문가 등
      도움이 되긴 했지만 신호 대 잡음비가 높았고, 많은 에이전트가 같은 요점을 반복했음
    • 이게 사실상 crewAI 같은 걸 설명하는 건가?
  • 이 모든 전문가 혼합 연구에서 답답했던 점이 있음
    무작위 알고리즘 입문이나 기본적인 확률적 추론만 봐도, 온도 매개변수가 0보다 크면 LLM에 N번 질의하고 다수결 결과를 고르는 방식은, 한 번만 물어보고 그 결과를 고르는 것보다 대체로 더 나은 성능을 낼 것임
    서로 다른 LLM을 특화해서 섞으면 추가 개선이 가능할 것 같고, 그런 경우 온도 0으로 돌릴 수도 있음
    또는 이 논문이 제안하듯 작업을 하위 작업으로 더 잘 나누는 방법도 가능함
    하지만 내가 보기엔 이런 가설적 이득을 단순한 무작위 반복 방식과 비교해 실제로 정량화한 사람이 없음
    특히 어떤 투표 전략이나 혼합 방식, 심지어 특정 모델에서는 MoE 같은 방식이 순진한 반복보다 엄격히 나쁠 수도 있음
    LLM 연구자는 아니고 걱정하는 시민에 가까워서 뭔가 놓쳤을 수도 있음
    그래도 LLM 연구자들이 Motwani/Raghavan의 첫 장을 잊은 것처럼 보여 이상함

    • 무작위로 선택된 토큰들 중 최고의 토큰을 고르는 것과, 무작위로 선택된 토큰 문자열들 중 최고의 문자열을 고르는 것 사이에는 차이가 있을 것 같음
  • 그래프를 대충 보면 이득의 대부분은 10개 에이전트에서 나오고, 20개에서 조금 더 늘어난 뒤 그다음부터는 수확 체감이 있음
    에이전트를 더 많이 붙이는 것만으로는 해결되지 않을 듯함

  • 공개 저장소가 있음: https://anonymous.4open.science/r/more_agent_is_all_you_need...
    벤치마크에 사용한 프롬프트는 여기 있음: https://anonymous.4open.science/r/more_agent_is_all_you_need...
    매우 흥미로움
    이런 식이지만 도구 세트를 사용하는 LLM 기반 에이전트를 벤치마크하는 것도 보면 좋겠음

  • 이건 엄청 비싸고 지속 불가능한 방법 아닌가?
    최신 모델들은 아마 수확 체감이 생길 테니 MoE가 갈 길이라는 분위기에는 동의함
    하지만 단일 프롬프트의 연산량이 갑자기 7~15배로 늘어나는 것 아닌가?

    • GPT-4가 GPT-3.5보다 20배 비싸지만, 비슷한 응답 품질을 얻는 데 GPT-3.5 실행 10번이면 충분하다면, 아마 더 빠르기까지 할 테니 그래도 이득임
    • “필요한 건 여섯 자리 OpenAI 청구서뿐”
    • 재생 불가능한 자원 사용량과 배출량도 7~15배 늘어남
    • 그래서 뭐가 문제임? GPU가 연산 부족에 시달리는 것도 아닌데
    • 맞음, GPT-3.5와 GPT-4 가격을 보면 됨
  • 현재 상위 댓글 몇 개만 읽어봐도 LLM 서비스를 제공하는 회사들의 사업 모델이 기묘하게 느껴짐
    A에서 B로 데려다주려면 n번 호출해야 하는 차량 서비스, 옷이 “아마도” 깨끗해지려면 세제를 n번 발라야 하는 세제 같음
    회사가 돈을 받고 “인공지능”을 제공한다면, 정답에 대해서만 비용을 내는 게 합리적이지 않나?
    차량 서비스를 제공한다면 목적지까지 데려다줬을 때만 돈을 내야 하지 않나?

    • 동의함
      충분히 자주 실패한다면 인간이나 범용적인 전통적 자동화가 더 나아지는 기준점이 꽤 낮아지는 것 아닌가?
      이 거품은 이런 식으로 터질 것 같음
      LLM이 획기적인 도구라는 데는 의심이 없지만, 아주 세분화된 응용을 제외하고는 진심으로 회의적임
      어쩌면 교훈은 LLM 에이전트의 책임을 분산시키는 방식이 기존 인간 조직의 실패 모델과 같다는 것일 수도 있음
    • 회사는 보통 서비스나 제품을 제공함
      합의한 것을 제공하지 못하면 고객은 시정을 요구할 수 있음
      택시기사가 불필요하게 복잡한 경로로 가거나, 과하게 요금을 받거나, 목적지에 데려다주지 않으면 택시 회사에 항의할 수 있음
      세탁이 제대로 안 됐다면 다시 해달라고 요구함
      하지만 많은 활동은 본질적으로 위험하거나 결과가 불확실함
      누구도 통제할 수 없는 요소가 항상 있기 때문임
      변호사는 소송에서 이긴다고 약속할 수 없지만, 최선을 다해 사건을 대변해야 함
      의사는 다시 건강해진다고 보장하지 않음
      어떤 택시기사도 제시간에 목적지에 도착한다고 보장하지는 않지만, 목적지까지는 데려다줌
      Atlassian은 관리형 JIRA 인스턴스를 쓴다고 릴리스 마감일을 맞춘다고 보장하지는 않지만, 데이터 손실을 막기 위해 최선을 다함
      기본적으로 챗봇 접근권을 파는 회사도 올바른 결과를 준다고 보장하지는 않을 것임
      아마 가용성 보장 정도는 가능함
    • 반론으로, National Weather Service의 예보가 항상 맞는 건 아니지만, 예보가 맞은 날에만 NWS에 비용을 내지는 않음
  • GPT-3.5 에이전트를 아무리 앙상블해도 GPT-4 한 번 호출보다 정확도가 낮음

    • 재미있는 건 GPT-4가 사실상 GPT-3.5들의 더미라는 점임
      제대로 구성하기만 하면 됨