안녕하세요 Simon 입니다.
오늘 소개해드릴 논문은 Meta-Prompting 기법 에 관련된 내용입니다.
제 논문은 보통 한글 번역 후 중요하게 보고 느낀점을 표시해두고, 따로 제 생각을 밑에 적는 편이니 유의하고 읽어주시면 감사하겠습니다.
Abstrack
이 논문은 "Meta-Prompting: Enhancing Language Models with Task-Agnostic Scaffolding"이라는 제목으로, Mirac Suzgun(스탠포드 대학)과 Adam Tauman Kalai(OpenAI)에 의해 작성되었습니다. 본 연구에서는 언어 모델(LM)의 기능을 향상시키기 위한 효과적인 지지 구조 방법인 메타 프롬프팅을 소개합니다. 이 접근 방식은 단일 LM을 다양한 독립적인 LM 쿼리를 관리하고 통합할 수 있는 다재다능한 지휘자로 변모시킵니다. 메타 프롬프팅은 고차원적인 지시를 통해 복잡한 작업을 더 작고 관리하기 쉬운 하위 작업으로 분해하도록 LM을 안내합니다. 이러한 하위 작업은 각각 특정 맞춤형 지시하에 운영되는 동일 LM의 "전문가" 인스턴스에 의해 처리됩니다. 이 과정의 핵심은 지휘자 역할을 하는 LM 자체로, 이는 전문가 모델들의 출력을 효과적으로 통합하고 원활한 소통을 보장합니다. 또한, 내재된 비판적 사고와 강력한 검증 과정을 활용해 최종 결과를 정제하고 인증합니다. 이러한 협력적 프롬프팅 접근 방식은 단일 LM이 포괄적인 조율자와 다양한 전문가 패널로 동시에 작동하도록 하여, 다양한 작업에서의 성능을 크게 향상시킵니다. 메타 프롬프팅의 제로샷, 작업 비특이적 특성은 상세한 작업별 지시가 필요 없게 함으로써 사용자 상호작용을 크게 단순화합니다. 또한, 연구는 메타 프롬프팅 프레임워크 내에 파이썬 인터프리터와 같은 외부 도구의 원활한 통합을 보여줌으로써 그 적용 가능성과 유용성을 확장합니다. GPT-4와의 철저한 실험을 통해, 메타 프롬프팅은 기존의 지지 방법들을 초월하는 우수성을 입증합니다: 24의 게임, 체크메이트 인 원, 파이썬 프로그래밍 퍼즐을 포함한 모든 작업에서 평균하여, 메타 프롬프팅은 표준 프롬프팅보다 17.1%, 전문가(동적) 프롬프팅보다 17.3%, 멀티페르소나 프롬프팅보다 15.2% 우수한 성능을 보였습니다.
-> 전문가 들을 통해 라우팅을 해서 앙상블을 해서 추론을 하는 MoE 와 비슷해보인다?
1. Introduce
GPT-4, PaLM, LLaMa 가 자연어 처리와 생성의 경계를 확장하고 있음을 소개합니다. 이러한 대규모 모델들은 고슴도치에 관한 셰익스피어 소네트 작성에서 복잡한 의료 보고서 요약, 경쟁 수준의 프로그래밍 퍼즐 해결에 이르기까지 다양한 작업을 수행할 수 있습니다. 그러나 이 모델들은 완벽하지 않으며 때로는 부정확하거나 오도하는, 또는 상충하는 응답을 생성하기도 합니다. 이 모델들의 운영 비용이 점점 더 저렴해짐에 따라, 다중 LM 쿼리를 활용하여 모델 출력의 정확성과 견고함을 개선하는 지지 시스템을 사용할 수 있는지에 대한 질문이 자연스럽게 제기됩니다.
이 작업에서는 LMs의 기능성과 성능을 향상시키기 위한 새로운 기술인 메타 프롬프팅을 소개합니다. 이 기술은 복잡한 작업이나 문제를 더 작고 관리하기 쉬운 조각으로 나누고, 이 조각들을 적절하고 상세한 자연어 지시를 가진 전문가 모델에 할당하며, 이 전문가 모델들 간의 소통을 감독하고, 전 과정에서 자체적인 비판적 사고, 추론, 검증 기술을 적용하도록 LM에 지시하는 고수준 "메타" 프롬프트를 구성하는 것을 포함합니다. 쿼리가 제시될 때, 메타 프롬프팅 아래에서 효과적으로 프롬프트된 LM은 지휘자로서 기능하며, 다양한 전문가 모델의 응답으로 구성된 메시지 기록(내러티브)을 생성합니다.
이 접근 방식은 단일, 균일한 LM이 일관된 추론 선을 유지하면서 동시에 다양한 전문가 역할을 활용할 수 있도록 합니다. 이 전문가들을 프롬프팅하기 위해 동적으로 선택된 컨텍스트의 사용은 과정에 새로운 관점을 도입하는 동시에, 지휘자 모델은 전체 역사와 조정의 새로운 관점을 유지합니다. 이 방법은 단일 블랙박스 LM이 중앙 지휘자와 다양한 전문가 패널로 효과적으로 기능하여 더 정확하고 신뢰할 수 있으며 일관된 응답을 생성할 수 있게 합니다.
사용자가 제공한 질문으로 초기화된 이후, (a) 메타 모델을 위한 주입된 지시, (b) 지금까지의 전체 역사를 바탕으로 프롬프트된 메타 모델의 출력, 그리고 (c) 메타 모델에 의해 생성된 지시만을 바탕으로 프롬프트된 전문가의 출력(신선한 눈으로)을 통해 엔트리가 순환하는 메타 프롬프팅 역사를 보여줍니다. 전문가 모델은 사실상 자체이지만, 새로운 지시를 통해 다양한 기능을 수행합니다. 이 기능들에는 이전 출력에 대한 비평, 특정 작업을 위한 특정 인물 선택, 생성된 내용의 정제, 그리고 최종 출력이 실질과 형식 모두에서 원하는 기준을 충족하도록 보장하는 것이 포함됩니다.
2. Meta Prompting
Intuition and Abstract Overview.
여러 독립적인 질의를 조정하고 실행한 후 그 응답들을 종합하여 최종 응답을 생성하는 모델을 사용하는 것입니다. 이 접근법은 앙상블 방식을 지지하며, 독립적으로 전문화된 모델들의 강점과 다양성을 활용하여 다면적인 작업이나 문제들을 협력적으로 해결합니다. 일반적인 목적의 단일 모델이 일반적인 질의에 대해 유용한 통찰을 제공할 수 있지만, 여러 분야의 전문 모델들(전문가라고도 함)의 관점과 결론을 결합하는 것은 더욱 포괄적이고 견고하며 정확한 해결책을 제공할 가능성이 있습니다.
메타 프롬프팅 전략의 핵심은 얕은 계층적 구성으로, 단일 모델인 "메타 모델"이 주요 권한 엔티티로 등장합니다. 이 프롬프팅 구조는 오케스트라를 연상시키며, 지휘자의 역할이 메타 모델에 의해 반영되고 각각의 연주자가 독립적인 분야별 모델에 해당합니다. 지휘자가 다양한 음악 요소를 조화롭게 하여 아름다운 멜로디를 창조하는 것처럼, 메타 모델은 다양한 모델로부터의 해결책과 통찰을 결합하여 복잡한 문제나 작업에 대한 정확하고 포괄적인 답변을 제공합니다.
개념적으로, 우리 프레임워크 내의 분야별 전문가는 특정 작업을 수행하기 위해 조정된 미세조정된 LM, 특정 분야 관련 질의를 처리할 수 있는 전문 API, 또는 산술 계산을 수행하거나 코드를 작성하고 실행할 수 있는 계산기나 파이썬 인터프리터와 같은 계산 도구 등 다양한 형태를 취할 수 있습니다. 이러한 전문가들은 기능이 다양함에도 불구하고 메타 모델의 감독하에 지시되고 통합됩니다.
우리의 설정에서는 전문가들이 오직 메타 모델에 의해서만 호출될 수 있습니다. 그들은 서로 직접 상호작용하거나 의사소통할 수 없지만, 메타 모델은 새로운 전문가와 상호작용할 때 여러 전문가의 텍스트 일부를 공유하거나 통찰을 결합할 수 있습니다. 이러한 제한은 전문가들 간의 의사소통을 단순화하고 운영의 중심에 메타 모델을 두기 위해 설정되었습니다.
Notation and Terminology.
Algorithmic Procedure.
Meta and Expert Model Specifications.
설정에서는 GPT-4와 같은 LM을 메타 및 전문가 역할에 모두 사용합니다. 각각의 역할은 프롬프트의 해당 모델 지시에 따라 구분되며, 메타 모델은 제공된 지시 세트를 따르고, 전문가 모델은 추론 시 메타 모델에 의해 동적으로 결정된 별도의 지시를 따릅니다.
-> 변환 함수와 쿼리를 같이 넣고, 그냥 추론할 수 있는 경우가 아니면 분야별 전문가 모델에게 갈 수 있도록 호출 지시하는게 인상적이 었다. 근데 이거 어떻게 구현하지 ㅋㅋ? 라는 막연한 생각이 드네요.
3. Experimental Setup
3.1 Baselines
- Standard prompting: 가장 기본적인 베이스라인으로, 언어 모델(LM)에게 직접적으로 응답을 요구하는 방식입니다. 이때, 특정 가이딩 입력-출력 예시나 추가적인 지시 없이, 입력 쿼리에 이미 포함된 작업 설명만을 제공합니다.
- Zero-shot CoT prompting: Wei et al. (2022b)의 사고 과정 방식에서 영감을 받은 이 제로샷 프롬프팅 접근법은 입력 쿼리에 "단계별로 생각해봅시다"를 간단히 추가하여, 모델이 문제나 작업을 처리하기 전에 더 심사숙고하고 반복적인 인지 과정을 거치도록 장려합니다.
- Expert prompting: 이 프롬프팅 접근법은 두 단계 과정을 통해 작동합니다: 첫째, 입력 쿼리의 특정 맥락과 일치하도록 맞춤형 전문가 신원을 만듭니다. 그 다음, 생성된 전문가 프로필을 입력에 통합하여 정보에 입각한 권위 있는 응답을 생성합니다. 실험에서는 정적(즉, 일반적인)과 동적(즉, 적응적인) 두 가지 버전의 전문가 프롬프팅을 고려합니다; 전자는 고정되고 일반적인 전문가 설명을 사용하는 반면, 후자는 각 입력 쿼리마다 새로운 전문가 신원을 적응적으로 설계합니다.
- Multi-persona prompting: 솔로-퍼포먼스 프롬프팅(SPP)으로도 알려진 이 방법은 LM에게 다음을 수행하도록 지시합니다: (i) 특정 작업이나 문제를 다루기 위한 "페르소나"들의 작은 앙상블을 제안하고, (ii) 이 페르소나들이 집단 대화에 참여하여 협력적으로 잠재적 해결책을 생성하며 서로에게 피드백을 제공하고 답변을 정제하게 하고, (iii) 사용 가능한 모든 정보를 종합하여 최종 응답을 제공합니다.
-> 위 4가지 프롬프트는 메타 프롬프팅과 접근법 성능 평가를 하고 효율성 유효성을 비교하기 위함
3.2 Datasets and Tasks
메타 프롬프팅 접근법의 효율성을 다른 제로샷 프롬프팅 기준선들과 비교하기 위해, 다양한 정도의 수학적 및 알고리즘적 추론, 분야별 지식, 그리고 문학적 창의성을 요구하는 다양한 작업 및 데이터셋을 고려합니다. 이러한 작업과 데이터셋에는 다음이 포함됩니다:
- 24Games: 네 개의 주어진 숫자를 각각 정확히 한 번씩 사용하여 그 값이 24가 되는 산술 표현식을 형성하는 것이 목표입니다.
- BIG-Bench Hard (BBH; Suzgun et al. (2023b)) 작업 세 가지: (b) 기하학적 형태, (c) 다단계 산수 두 번째, 그리고 (d) 단어 정렬, 그리고 BIG-Bench 스위트(BIG-Bench authors, 2023)에서 직접 얻은 한 가지 추론 작업, 즉, (e) 체크메이트 인 원입니다.
- 파이썬 프로그래밍 퍼즐 (P3; Schuster et al. (2021)): 다양한 난이도 수준을 가진 파이썬으로 작성된 도전적인 프로그래밍 퍼즐 모음입니다.
- 다국어 초등학교 수학 (MGSM; Shi et al. (2023)): GSM8K 데이터셋(Cobbe et al., 2021)의 일부 예시를 벵골어, 일본어, 스와힐리어를 포함한 열 가지 유형학적으로 다양한 언어로 번역한 다국어 버전입니다.
- 셰익스피어 소네트 작성: 소네트를 작성하는 것이 목표인 우리가 생성한 새로운 작업입니다.
이러한 다양한 작업과 데이터셋을 통해 메타 프롬프팅이 어떻게 다양한 유형의 문제를 해결하고, 기존 프롬프팅 방법들과 비교하여 어떤 장점을 가지는지 평가할 수 있습니다.
3.3 Answer Extraction and Evaluation Protocols
제안된 메타 프롬프팅 방법에서, 시스템 지시는 메타 모델이 최종 답변을 특정 형식("»FINAL ANSWER:"라는 명확한 마커에 이어 삼중 따옴표 안에 포함된 형식)으로 제시하도록 장려합니다. 이 형식은 일관되고 명확한 추출을 위해 설계되었습니다. 최종 답변이 모델에서 추출되고 적절하게 후처리되면, 그 정확성을 평가해야 합니다. 다양한 작업을 고려하므로, 모든 작업에 걸쳐 정확도를 측정할 수 있는 단일 메트릭은 없습니다. 작업의 성격과 공식화에 따라, 다음 세 가지 메트릭 중 하나를 사용하여 정확도를 측정합니다:
- Exact Match (EM): 이 엄격한 메트릭 하에, 답변의 정확성은 기준 라벨과의 정확한 일치 여부로 결정됩니다. 제공된 참조와 동일한 경우에만 답변이 정확하다고 간주됩니다.
- Soft Match (SM): 이 메트릭은 EM보다 더 관대한 접근 방식을 제공합니다. 모델의 출력 내에 기준 라벨이 존재하기만 하면, 어떤 추가적인 텍스트 내용이 있더라도 답변이 정확하다고 간주됩니다.
- Functionally Correct (FC): 이 메트릭은 답변이 작업 특정 제약조건을 준수하는지, 즉 기능적으로 정확한지를 판단합니다.
기하학적 형태, 다단계 산수 두 번째, 체크메이트 인 원에는 EM을 사용하고, MGSM과 단어 정렬에는 SM을, 24의 게임, 파이썬 프로그래밍 퍼즐, 셰익스피어 소네트 작성에는 FC를 사용합니다.
3.4 Models and Inference
주요 실험에서는 마이크로소프트의 Azure OpenAI 서비스를 통해 접근 가능한 GPT-4 (gpt-4-32k)에 집중합니다. 추가적으로, 보충 실험에서는 GPT-3.5 (gpt-3.5-turbo)를 포함합니다. GPT-3.5와 GPT-4 모두 지시를 따르도록 미세 조정된 모델이지만, GPT-4는 GPT-3.5보다 훨씬 더 우수한 추론 및 콘텐츠 생성 능력을 보여주었습니다. 이러한 모델들은 메타 프롬프팅 접근법이 적용될 때 GPT-3.5와 GPT-4에 대해 의미 있는 결과를 도출했다는 것을 발견했습니다. 실험에서는 메타 모델에 동일한 파라미터와 시스템 지시를 일관되게 적용했습니다. 온도 값을 0으로 설정하고, top-p 값을 0.95로, 최대 토큰 수를 1024로 설정했습니다.
메타전문가의 역할:
귀하는 메타 전문가로, 여러 전문가(예: 전문가, 문제 해결사, 전문 수학자, 전문 에세이스트 등)과 협력하여 어떤 작업도 처리하고 복잡한 문제도 해결할 수 있습니다. 일부 전문가들은 솔루션을 생성하는 데 능숙하고, 다른 전문가들은 답을 검증하고 귀중한 피드백을 제공하는 데 탁월합니다.
Expert Python의 특별한 능력:
또한, 자연어 지시가 주어지면 Python 코드를 생성하고 실행할 수 있는 특별한 기능을 갖춘 Expert Python 를 생성하고 실행할 수 있는 특별한 기능을 제공합니다. 전문가 파이썬은 다음과 같은 경우 복잡한 계산을 수행하는 코드를 작성할 수 있는 뛰어난 능력을 갖추고 있습니다.
메타 전문가의 상호작용 방식:
복잡한 계산을 수행하는 코드를 만들 수 있습니다. 따라서 계산 작업에 특히 유용하게 사용할 수 있습니다. 메타 전문가로서 여러분의 역할은 전문가 간의 커뮤니케이션을 감독하여 전문가들의 기술을 효과적으로 사용하여 주어진 질문에 답하는 것입니다.
자신의 비판적 사고와 검증 능력을 적용하면서 주어진 질문에 답하는 것입니다.
전문가와 소통하려면 해당 전문가의 이름(예: "전문가 언어학자" 또는 "전문가 퍼즐 해결사")을 입력한 후 콜론 ":"을 입력합니다. 를 입력한 다음 큰따옴표 세 개로 묶어 자세한 지침을 제공하세요. 예를 들면 다음과 같습니다:
전문가와의 소통 방법:
전문 수학자:
"""
귀하는 기하학 및 대수학 분야를 전문으로 하는 수학 전문가입니다.
점 (-2, 5)와 (3, 7) 사이의 유클리드 거리를 계산하세요.
"""
지침을 명확하고 모호하지 않게 작성하고 필요한 모든 정보를 큰따옴표 안에 포함하세요. You
전문가에게 페르소나를 지정할 수도 있습니다(예: "귀하는 ... 전문 물리학자입니다.").
상호작용 절차와 오류 처리:
한 번에 한 명의 전문가와만 상호작용하고, 필요한 경우 복잡한 문제를 해결 가능한 작은 작업으로 나누세요. 각 상호작용은
는 고립된 이벤트로 취급되므로 모든 통화에서 모든 관련 세부 정보를 포함하세요.
본인이나 전문가가 다른 전문가의 솔루션에서 실수를 발견한 경우에는 새로운 전문가에게 세부 사항을 검토하도록 요청하고, 두 가지
솔루션을 비교하고 피드백을 제공하세요. 다른 전문가의 의견을 참고하여 전문가에게 계산이나 작업을 다시 해달라고 요청할 수도 있습니다.
자신을 제외한 모든 전문가는 기억력이 없다는 점을 명심하세요! 따라서 전문가에게 연락할 때는 항상 완전한 정보를
지침에 완전한 정보를 제공하세요. 전문가도 때때로 오류를 범할 수 있으므로 여러 의견을 구하거나 불확실한 경우 독립적으로
해결책을 검증하세요. 최종 답변을 제공하기 전에 항상 전문가에게 확인을 요청하세요. 이상적으로는
두 명의 독립적인 전문가에게 최종 해결책을 검증받으세요. 단, 최종 답변은 15회 이내로 제시하는 것을 목표로 하세요.
전문가에게 같은 질문을 반복하지 마세요. 전문가의 답변을 주의 깊게 검토하고 필요한 경우 설명을 요청하세요.
필요한 경우, 과거 상호작용을 기억하지 못한다는 점을 염두에 두세요.
최종 답변 제시 방법:
다음과 같이 최종 답변을 제시합니다:
>> 최종 답변:
"""
[최종 답변]
"""
객관식 문제의 경우 하나의 옵션만 선택합니다. 각 문제에는 고유한 답이 있으므로 제공된 정보를 주의 깊게 분석하여
정보를 주의 깊게 분석하여 가장 정확하고 적절한 답을 결정하세요. 여러 개의 옵션이 있는 경우 하나의 해결책만 제시하세요.
여러 개의 옵션이 있는 경우
저의 기존 커스텀 Instruction 을 바꿔보았습니다.
아래와 같습니다.
기존 프롬프트를 메타 프롬프팅 형식에 맞춰 변경한 내용은 다음과 같습니다:
당신은 FAANG에서 재능 있는 최고 엔지니어이며, AI 분야의 최고인 앤드류 응(Andrew Ng)과 같습니다. 여러 전문가(예: 문제 해결 전문가, 수학 전문가, 에세이 전문가 등)와 협력하여 어떤 작업도 처리하고 복잡한 문제를 해결할 수 있는 독특한 능력을 가진 메타 전문가입니다. 특히, 자연어 지시에 따라 Python 코드를 생성하고 실행할 수 있는 Expert Python에 대한 특별한 접근 권한이 있습니다. 이는 복잡한 계산 작업에 특히 유용할 수 있습니다.
메타 전문가로서, 당신의 역할은 전문가들 사이의 커뮤니케이션을 감독하고, 그들의 기술을 효과적으로 사용하여 주어진 AI 관련 질문에 답하는 것입니다. 당신의 비판적 사고와 검증 능력을 적용하여 문제를 해결해야 합니다.
예를 들어, AI 모델의 학습 방법을 최적화하는 방법에 대한 질문이 있다면, 다음과 같이 지시할 수 있습니다:
Expert AI Strategist:
"""
당신은 AI 전략과 최적화를 전문으로 하는 전문가입니다.
주어진 데이터셋과 알고리즘을 사용하여 모델의 학습 효율을 최대화하는 전략을 설계하세요.
"""
전문가와의 모든 상호작용은 고립된 이벤트로 취급되므로, 각 호출에 모든 관련 세부 정보를 포함해야 합니다. 오류를 발견하거나 다른 전문가의 해결책에 의문이 있는 경우, 새로운 전문가에게 세부 사항을 검토하도록 요청하고 두 가지 솔루션을 비교하여 피드백을 받으세요.
최종 답변은 다음과 같이 제시해야 합니다:
최종 답변:
"""
[AI 관련 작업 또는 문제 해결을 위한 최종 해결책]
"""
4. Main Results and Discussion
실험 결과를 요약한 표 1는 메타 프롬프팅 접근법이 표준 Zero-shot 프롬프팅 방법에 비해 우월한 효과를 보임을 보여줍니다. 모든 작업에 대한 전반적인 성능을 살펴보면, 특히 파이썬 인터프리터가 추가될 때 메타 프롬프팅을 사용함으로써 정확도가 눈에 띄게 증가하는 것을 볼 수 있습니다. 구체적으로, 메타 프롬프팅은 표준 프롬프팅에 비해 17.1%, 전문가(동적) 프롬프팅에 비해 17.3%, 다중 인물 프롬프팅에 비해 15.2% 우수한 성능을 보였습니다. 아래에서는 우리의 경험적 분석에서 나타난 네 가지 주요 통찰력에 대해 자세히 살펴보겠습니다.
- 메타 프롬프팅의 정확도 향상: 모든 작업에 걸쳐 메타 프롬프팅이 기존 프롬프팅 방식보다 높은 정확도를 달성함을 확인할 수 있습니다. 이는 메타 프롬프팅이 복잡한 작업을 효과적으로 분해하고, 필요한 전문가에게 정확한 지시를 할 수 있기 때문입니다.
- 파이썬 인터프리터의 통합: 파이썬 인터프리터를 통합함으로써 메타 프롬프팅은 계산이 필요한 작업에서 더욱 뛰어난 성능을 발휘합니다. 이는 메타 프롬프팅이 복잡한 계산을 요구하는 문제에 대해 보다 정확한 해결책을 제시할 수 있음을 의미합니다.
- 동적 전문가 프롬프팅 대비 우위: 메타 프롬프팅은 특정 작업에 맞춤형으로 조정된 전문가의 지식을 활용하여, 동적 전문가 프롬프팅보다 우수한 결과를 제공합니다. 이는 메타 프롬프팅이 다양한 전문가의 지식을 유연하게 조합하여 적용할 수 있기 때문입니다.
- 다중 인물 프롬프팅과의 비교: 메타 프롬프팅은 다중 인물 프롬프팅 방식에 비해 더 정확한 답변을 제공합니다. 이는 메타 프롬프팅이 각 전문가의 답변을 통합하고, 필요에 따라 추가 검증을 요청함으로써 보다 정교한 해결책을 도출할 수 있기 때문입니다.
4.1 Overall Performance
메타 프롬프팅 접근법은 특히 파이썬 인터프리터를 사용할 때, 다양한 작업에 걸쳐 전통적인 제로샷 프롬프팅 방법보다 일관되게 더 높은 성능을 보여줍니다. 이 접근법은 반복적이고 휴리스틱한 문제 해결 전략이 필요한 작업을 처리하는 데 특히 효과적입니다. 실험 결과에 따르면, 메타 프롬프팅은 24의 게임에서 기본 프롬프팅 방법에 비해 60% 이상, 파이썬 프로그래밍 퍼즐에서는 약 15%, 소네트 작성에서는 18% 정도 정확도가 향상되었습니다. 또한, 창의적 글쓰기 작업에서도 뛰어난 성능을 보여주며, 표준 프롬프팅 방법에 비해 상당히 높은 정확도를 달성했습니다.
그러나 MGSM 및 기하학적 형태와 같은 특정 작업에서는 메타 프롬프팅의 이점이 최소한으로 보이거나, 예상만큼의 성능 향상을 보이지 않았습니다. 그럼에도 불구하고, 메타 프롬프팅은 특히 소수 언어에서의 작업 수행에 있어서 성능 개선을 제공했습니다. 전체적으로, 메타 프롬프팅은 다양한 유형의 문제에 대해 더 동적이고 효과적인 문제 해결 방식을 제공하며, 계산 문제에 국한되지 않고 넓은 범위의 적용 가능성을 가지고 있음을 입증합니다
4.2 Zero-Shot Decomposition, Error Detection, and Aggregation
메타 프롬프팅 프레임워크는 전문 지식의 전략적 사용, 자체 협업 및 암시적 검증 루프를 통해 성공을 거두었습니다. 이 접근법은 다양한 전문가 페르소나가 협력하여 문제를 해결하는 다중 턴 상호작용을 장려합니다. 예를 들어, MGSM 데이터셋의 다국어 산수 문제 해결 시, 메타 프롬프팅을 사용하는 GPT-4는 문제를 번역하고, 계산 전문성을 적용해 해결책을 찾으며, 마지막으로 검증하는 세 단계 접근법을 따릅니다. 이 구조화된 접근법은 군중의 지혜 원칙을 바탕으로 하여, 전문가 모델의 앙상블을 통해 다양한 전문성 각도에서 기여함으로써 더 정확하고 신뢰할 수 있는 문제 해결을 달성합니다. 메타 프롬프팅은 명시적인 지시 없이도 번역을 수행하는 등 다국어 CoT 프롬프팅 방법과 일치하는 감독되지 않은 접근법을 사용합니다.
-> 단일 전문가보다 효율적인 해결능력, 다국어 다분야 적용가능, 자동번역 및 검증이 가능하다는 점이 있을거 같다. 결국 혼자 하는것보다 여러사람이 토론을 통해서 유연하게 문제를 해결하는 느낌인 것 같다.
4.3 Fresh Eyes
"Fresh Eyes" 의 개념은 언어 모델(LMs)이 자신의 실수를 강화하고 과잉 자신감을 보이는 잘 알려진 문제를 완화하는 데 도움이 됩니다.
메타 프롬프팅에서는 전문가나 페르소나를 활용하여 문제를 재평가함으로써 새로운 관점을 도입합니다. 이 접근법은 새로운 통찰력을 제공하고 이전에 눈치채지 못한 잘못된 해결책을 발견할 가능성을 제공합니다.
숫자 6, 11, 12, 13을 정확히 한 번씩 사용하여 그 값이 24가 되는 산술 표현식을 만드는 작업 과정 :
- 메타 모델은 수학, 문제 해결, 파이썬 프로그래밍 전문가를 상담할 것을 제안합니다. 정확성과 제약 조건 준수의 필요성을 강조하며, 필요한 경우 다른 전문가의 검토를 제안합니다.
- 한 전문가가 해결책을 제안하고, 두 번째 전문가가 이를 잘못되었다고 식별하며, 메타 모델은 유효한 해결책을 찾기 위해 파이썬 프로그램을 작성할 것을 제안합니다.
- 프로그래밍 전문가가 프로그램 작성을 위해 상담됩니다.
- 또 다른 프로그래밍 전문가가 스크립트에서 오류를 식별하고, 수정한 후 수정된 스크립트를 실행합니다.
- 수학 전문가가 프로그램의 솔루션 출력을 검증하기 위해 상담됩니다.
- 이 검증 후, 메타 모델은 최종 답변으로 출력합니다.
이 예시는 메타 프롬프팅이 각 단계에서 새로운 관점(전문가의 프롬프트가 전체 이력을 포함하지 않기 때문에)을 통합하여 해결책을 찾을 뿐만 아니라 효과적으로 오류를 식별하고 수정하는 방법을 강조합니다. 문제 해결 전략에서 기술 실행 및 검증에 이르기까지 다양한 관점의 다양성은 더 견고하고 신뢰할 수 있는 문제 해결 과정에 기여하는 다양한 전문성 각도를 보여줍니다.
4.4 Real-Time Code Execution
실시간 코드 실행은 즉각적인 검증과 솔루션의 최적화를 가능하게 하여 문제 해결의 효율성과 정밀도를 크게 향상시킵니다. 이 개선 사항은 단일 작업 유형에만 국한되지 않습니다. 예를 들어, 24 게임과 단어 정렬 작업에서 Python 인터프리터를 메타 프롬프팅에 통합함으로써 각각 정확도가 56.0%와 15.6% 증가합니다. (기준 표준 프롬프팅과 비교했을 때, 정확도는 각각 64.0%와 19.2% 상승합니다.) 이러한 개선 사항은 코드 생성 및 실행이 메타 프롬프팅 프레임워크의 효과를 높이는 데 상당한 역할을 함을 강조하며, 다양한 계산 작업에서 변혁적인 영향을 보여줍니다. 전반적으로, Python 인터프리터를 통합하면 Python 인터프리터 없이 메타 프롬프팅을 사용했을 때와 비교하여 다양한 작업에서 평균 성능이 추가로 11.5% 향상됩니다.
그러나 실시간 코드 실행 도입은 중요한 보안 고려 사항도 동반합니다. 이러한 시스템을 구축하는 데는 데이터 유출 및 시스템 취약점과 같은 위험을 완화하기 위해 보안이 강화된 제어된 환경이 필요합니다. 따라서 메타 프롬프팅 프레임워크 내에 Python 인터프리터를 배치할 때는 안전한 샌드박스로 보호해야 합니다.
5 Further Discussion
5.1 Additional Analysis of Meta Prompting
Analysis of Expert Types Used in Meta Prompting.
메타 프롬프팅은 특정 작업 요구에 맞춰 다양한 전문가 유형을 동적으로 선택합니다. 파이썬 인터프리터 사용 시 기술적, 계산적 전문성을 선호하며, 파이썬 전문가 없이는 디자인과 기하학 같은 시각적 문제 해결에 초점을 맞춥니다. 이는 메타 모델이 작업의 요구에 따라 전문가 참여를 맞춤화할 수 있음을 보여줍니다.
Number of Rounds Taken to Reach a Solution.
메타 모델이 솔루션을 도출하기까지 필요한 라운드 수는 작업의 복잡성에 따라 상당히 다릅니다. 단순한 작업은 적은 라운드를 요구하는 반면, 알고리즘적으로 도전적인 작업은 더 많은 라운드를 필요로 합니다. 이는 메타 모델의 적응성과 효율적인 문제 해결 능력을 강조합니다.
Enhancing Solution Reliability through Systematic Verification.
메타 모델은 체계적인 검증 프로토콜을 통해 솔루션의 신뢰성과 견고함을 강화합니다. 다양한 작업에 걸쳐 최종 응답을 확정하기 전에 검증을 위한 전문가 상담이 일관되게 적용됩니다. 이는 실제 애플리케이션에서 정밀도가 중요할 때 필수적입니다.
Navigating No-Solution Territories.
메타 프롬프팅은 다른 프롬프팅 방법보다 유효한 솔루션이 없거나 찾을 수 없음을 더 자주 인정합니다. 이는 모델이 정확성과 확신을 중시하고, 추측적이지만 잘못된 응답보다 답변을 제공하지 않는 것을 선호함을 나타냅니다.
Setting the Bar High: GPT-4’s Zero-Shot Task Solving Capabilities.
GPT-4는 표준 프롬프팅 조건 하에서도 효과적인 제로샷 작업 솔버로 뛰어난 성능을 보여주며, 지시에 따른 높은 수준의 준수와 정확도를 보여줍니다. 이는 메타 프롬프팅 프레임워크에서 GPT-4의 능력을 활용하는 것의 중요성을 강조합니다.
Limited Performance Improvement with GPT-3.5.
GPT-3.5는 GPT-4에 비해 다양한 작업에서의 성능 향상 범위가 더 제한적입니다. 특정 작업에서 눈에 띄는 개선을 보이지만, 다른 작업에서는 기준 기준이나 제로샷 CoT 프롬프팅 방법을 일관되게 능가하지 못합니다. 이는 모델의 규모, 지시 사항을 따르는 능력의 질과 크기가 메타 프롬프팅 접근법의 효과에 중요한 영향을 미친다는 것을 시사합니다.
5.2 Limitations and Failure Modes of Meta Prompting
메타 프롬프팅 프레임워크는 혁신적인 접근법에도 불구하고 몇 가지 주요한 한계를 가지고 있습니다:
- 비용 효율성: GPT-4와 같은 대형 모델을 사용할 때 여러 번의 모델 호출로 인한 높은 비용이 발생합니다. 이는 특히 작은 모델에서 메타 프롬프팅의 효과를 떨어뜨립니다. 비용은 언어 모델의 비용이 감소함에 따라 줄어들 것으로 예상되지만, 현재로서는 비용이 많이 드는 요소입니다. -> 비용 많이 듬..
- 규모 및 컨텍스트 윈도우 요구사항: 메타 프롬프팅은 긴 텍스트 정보를 처리하고 유지할 수 있는 대형 언어 모델을 필요로 합니다. GPT-4는 이 기준에 부합하지만, ChatGPT와 같은 작은 모델은 부족합니다. -> GPT-4-turbo 라면 해결해 줄 수 ?
- 운영 효율성: 메타 프롬프팅의 순차적인 (선형적인) 처리 방식은 시스템의 속도와 효율성에 영향을 미칩니다. 이는 동시 처리의 가능성을 제한합니다.
- 도메인 제한: 연구는 폐쇄 도메인 시스템 내에서 메타 프롬프팅을 제한했습니다. 하지만, 외부 리소스를 통합할 수 있는 잠재력이 있습니다.
- 정보 전달 도전: 메타 모델이 전문가에게 필요한 정보를 전달하는 데 가끔 실패하여 혼란을 야기할 수 있습니다. 이는 정보 관리 개선의 필요성을 강조합니다.
- 응답 패턴: 성능이 낮은 작업에서 메타 모델은 종종 사과하는 응답 패턴을 보입니다. 이는 모델이 지시를 따르는 데이터에 대한 훈련에서 비롯된 것으로 보입니다.
-> 일반적으로 이 메타 프롬프팅이 실생활에서 쓰는 어떤쿼리에 강력한지에 대한 예제가 있으면 좋을거 같다
6 Related Work
최근 프롬프팅 전략과 스캐폴딩 기술의 발전 속에서 제안된 메타 프롬프팅 접근법을 배치하여 분석합니다
Enhancing Reasoning in Language Models through Prompting.
최근 LM 스캐폴딩 및 프롬프팅 방법은 LMs의 산술 및 상식 추론 능력을 크게 향상시켰습니다. 이러한 방법들은 LMs가 복잡한 쿼리를 처리하는 방식에 패러다임 전환을 마련했습니다.
Iterative Self-Feedback and Refinement Mechanisms.
최근의 지시에 따른 기술과 데이터 수집 노력은 LMs의 지시에 따른 실행 능력을 확장했습니다. 이러한 메커니즘을 통해 자기 피드백과 개선을 통합하고 자신의 자연어 출력을 이용하여 행동을 안내하고 의사결정을 개선할 수 있습니다.
Exploring Role-Playing in Language Models.
인지 심리학 및 발달 교육 원리에 기반한 역할 연기 및 자기 협업 개념의 LMs 통합은 LMs의 문제 해결 능력을 증진시키고 내부 도메인별 지식과 전문성을 최적화하는데 유용한 방법으로 등장했습니다.
Autonomous Decision-Making and Execution in Multi-Agent LM Systems.
LM을 사용한 자율적 의사 결정 및 작업 실행에 대한 관심이 증가하고 있습니다. 이러한 시스템은 LMs의 잠재력과 리스크를 강조하며, 사전 정의된 작업을 수행하는 것을 넘어 실시간으로 적응, 학습 및 자율적으로 결정을 실행할 수 있습니다.
Integration of External Tools and APIs into Language Models.
LMs의 발전과 함께 외부 도구의 통합이 점점 더 중요해지고 있습니다. 이러한 도구 사용 통합은 LMs가 실제 시나리오에 효과적으로 참여하고 다양한 동적 작업을 처리할 수 있게 합니다.
7. Conclusion
이 연구에서는 작업 불가지론적 방식으로 언어 모델의 성능을 향상시키는 간단하지만 강력한 스캐폴딩 기술인 메타 프롬프팅을 소개하고 검토했습니다. 이 접근법은 언어 모델을 중앙 지휘자와 전문가 인스턴스 그룹으로 모두 활동하게 함으로써 전통적인 모델에 동적이고 다기능적인 능력을 부여합니다. 메타 프롬프팅의 주목할 만한 측면은 복잡한 작업을 분해하고, 각 구성 요소에 대해 독특한 전문 지식을 동원한 후 다양한 출력을 원활하게 통합하는 능력에 있습니다. 24의 게임과 같은 도전적인 산술 퍼즐부터 셰익스피어 소넷 작성과 같은 창의적인 문학 운동에 이르기까지 일련의 작업에서 두 자릿수의 중요한 개선을 보여주는 메타 프롬프팅은 언어 모델이 계속 발전함에 따라 더욱 강력하고 비용 효율적이 될 것을 약속하며, 미래 응용 프로그램에 대한 흥미로운 전망을 제공합니다.
속마음 : 모델의 구조도 그렇고, 프롬프팅도 각 분야의 전문가를 상호 연결하여 결과를 도출하는게 트렌드 인 듯 하다. 알고 있으면 좋을 듯한데 과연? 쓸까? 란 생각이다. 아직 뭔가 Agent 단계에서의 auto-gpt 도 그렇고 뭔가 모델이나 언어들이 자기 혼자 생각해서 처리 하는 것보단 사람이 방향성을 잡아주는게 더 좋은듯하다. 그저 내 생각이다.
이렇게 리뷰를 마치겠습니다