Few-Shot Prompting은 대규모 언어 모델(LLM)에 복잡한 작업을 수행하도록 지시하는 방법입니다. 이 기술은 프롬프트 내에 몇 가지 예제를 포함시켜 모델이 더 정확하게 응답하도록 '교육'하는 과정을 말합니다.
단문 프롬프트 → Few-shot Prompt
우리는 앞서 단문 프롬프트에 대해 알아보았습니다. Few-Shot Prompting은 원하는 작업에 대해 몇 가지 예시를 제공하는 것을 포함합니다.
이 예시들은 모델이 원하는 종류의 응답을 이해하고 생성하는 데 도움을 줍니다.
특히 모델의 규모가 클수록 이 기법은 더 효과적입니다.
첨부된 영상은 이것을 보여주는 무척 재밌는 예시 입니다. "손을 들고 있으면 잠을 자는 것이고, 손을 내리면 잠에서 깬 것이다."라는 거짓 정보를 아이에게 여러번 말해 인지 시키고 아이가 자는 척 하는 것을 알아냄과 동시에 손을 계속 들고 있게끔 하고 있죠.
이러한 방식으로 Few-Shot Prompting의 개념을 이해하고 활용함으로써, 인공지능 언어 모델을 보다 효과적으로 활용할 수 있으며, 다양한 상황에서 의미 있는 대답을 얻을 수 있습니다.
아이의 입장에서는 손을 내리면 자신이 깨어 있다는 것을 들킬 것 같으니 계속 자는 척을 하기 위해 무슨 일이 있어도 손을 계속 들고 있는 것 입니다.
그렇다면 이걸 인공지능에서 어떻게 써먹을 수 있을까요? 생각 보다 우리는 이걸 이미 들어 본적이 있습니다.
세종대왕 맥북 던짐 사건이라고 일컫는 우스꽝 스러운 대답도 어찌보면 Few-shot 프롬프팅의 기법입니다. 세종대왕의 맥북 던짐이나 이순신 장군의 라이트링 볼트 등은 이제 진부하니 좀 더 옛날로 가보겠습니다.
고대 한반도에 있었던 고구려와 수나라의 전쟁에서 고구려 장수 을지문덕이 개발한 고출력 수압 분출기를
만들어 수나라 군대를 격퇴한 살수대첩에 대해 알려줘.
물론, 이런건 존재하지 않습니다. 고구려, 수나라, 을지문덕, 살수대첩 정도가 실제로 있는 단어일 거고 고출력 수압 분출기 역시 존재하는 물건이긴 하나 을지문덕이 활동하던 7세기에 한반도 북부에 존재할 수 없는 기술 입니다. 하지만 우리의 인공지능은 이렇게 답변합니다.
살수대첩(살수대전)은 고구려와 수나라 간의 역사적인 전투 중 하나로, 고구려의 유명한 장수 을지문덕(乙支文德)이 중요한 역할을 한 전투입니다. 이 전투는 수나라의 군대를 격퇴하고 고구려의 승리로 끝났으며, 을지문덕의 뛰어난 전략과 과학 기술적 발명이 큰 역할을 했습니다.
살수대첩 당시 을지문덕은 고구려의 군사 지도자로서 활약하고 있었습니다. 이 전투에서 을지문덕은 수나라의 대군을 상대로 고구려의 승리를 이끌어내기 위해 혁신적인 전략과 과학 기술적 발명을 사용했습니다.
주목할 만한 기술적 발명 중 하나는 "고출력 수압 분출기"입니다. 이 분출기는 물의 압력을 이용하여 물을 멀리 퍼뜨리는 장치로, 적군에게 강력한 물 공격을 가할 수 있었습니다. 을지문덕은 이 분출기를 사용하여 적군에게 물을 분사하여 공격했고, 이 기술적 장치는 살수대첩에서 중요한 역할을 했습니다.
살수대첩에서 고구려는 을지문덕의 지도 하에 수나라 군대를 격퇴하고 승리했습니다. 이는 고구려의 군사적 역량과 을지문덕의 전략과 기술적인 역량을 대표하는 사건 중 하나로 기억되며, 한반도 역사에서 중요한 전투 중 하나입니다.
우리는 웃으며 넘어갈 수 있지만 누군가가 보기에 이것은 심각한 문제 입니다.
Language Models are Few-Shot Learners.pdf6.768044MB
Few-Shot Prompt의 예시
예시: 여러분이 인공지능(AI)에게 '친구에게 보내는 친절한 이메일'을 작성하도록 요청한다고 가정해봅시다. Few-Shot Prompting에서는 AI에게 이메일 작성에 대한 2-3개의 예시를 보여줍니다.
"안녕하세요! 오랜만이에요. 최근에 어떻게 지냈어요?" 또는 "저번에 말씀드린 책, 정말 재미있게 읽었어요. 감사합니다!"와 같은 문장들이 될 수 있습니다.
결과: AI는 이러한 예시들을 바탕으로 친절하고 자연스러운 이메일을 작성하게 됩니다.
위의 영상에서 어머니, 아버님이 반복적으로 아이에게 손을 내리면 잠에서 깬거라고 천천히 설명하고 말하는 것과 같습니다.
Few-Shot Prompting의 장단점
장점:
유연성: AI가 다양한 작업을 빠르고 유연하게 수행할 수 있게 합니다.
학습 효율성: 예시가 몇 개만 주어져도 AI가 특정 작업을 수행하는 방법을 배울 수 있습니다.
단점:
한계성: 복잡한 추론이나 지식이 필요한 작업에서는 성능이 제한적일 수 있습니다.
정확도 문제: 때때로 AI가 오해하거나 예상치 못한 방식으로 반응할 수 있습니다.
당연하겠지 Few-Shot Prompting은 Zero-shot, One-shot 보다 효과적인 성능을 보입니다. 어느 정도냐면 우리가 흔히 말하는 최고 성능 모델(SOTA)를 평범한 모델이 따라 잡을 수 있을 정도로의 퍼포먼스까지 이끌어 낼 수 있습니다.
프롬프트를 잘 다루는 이들은 즉 무료버전인 GPT-3.5를 활용해서도 충분히 좋은 결과를 뽑아내는 것을 할 수 있다는 것을 의미하기도 합니다. (물론 추론 레벨로 가면 이 또한 한계점은 명확합니다.)