📝 Mixture of Agents(MoA) 프롬프팅

최근 LLM에게 여러 응답을 받아 그것을 취합하는 방식의 기법이 상당히 각광받고 있는데요. 대부분은 투표 절차를 통해 결과를 선택하는 방식이었는데, MoA는 결과를 취합하여 최종 응답을 생성하는 방식입니다.


MoA는 다음의 세 단계의 프롬프트 체이닝을 사용하는데요.


1️⃣ 사용자의 프롬프트에 대해 3개의 후보 응답을 생성합니다.


2️⃣ 각 후보 응답의 장단점을 분석하고 이에 대해 추론합니다.


3️⃣ 원래 입력, 후보 응답들, 그리고 추론 결과를 바탕으로 최종 응답을 생성합니다.


프롬프트의 예를 들면 다음과 같습니다.


Prompt 1: [사용자 입력]에 대해 3가지 다른 관점에서 답변을 생성하세요.


Prompt 2: 앞서 생성된 3가지 후보 응답에 대해 각각의 강점과 약점을 분석하고, 어떤 점에서 유용하거나 부족한지 설명하세요.


Prompt 3: 원래 사용자의 질문, 3가지 후보 응답, 그리고 각 응답에 대한 분석을 고려하여 가장 적절하고 포괄적인 최종 응답을 생성하세요.


이러한 방식을 통해 높은 성능 향상을 꾀할 수 있었고, 특히 챗봇 응답에서 인간 평가자에게 높은 선호도를 보였다고 합니다.


무엇보다 중요한 것은 이 방식을 통한 결과물을 학습데이터로 삼아 작은 모델을 파인튜닝을 하면 높은 성능 향상을 보일 수 있었다는 것 입니다.


이제 어느정도 수준의 LLM을 만드는 것은 쉬운 일이 되었지만, 성능 향상을 위한 데이터를 얻기는 여전히 쉽지 않은데요. 이를 잘 활용하면 충분히 좋은 수준의 커스텀 LLM을 만들 수 있지 않을까 싶습니다.

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 6월 22일 오전 3:00

 • 

저장 18조회 2,387

댓글 2