프롬프트 단계는 검색기에서 검색된 문서들을 바탕으로 언어 모델이 사용할 질문이나 명령을 생성하는 과정입니다. 이 단계는 검색된 정보를 바탕으로 최종 사용자의 질문에 가장 잘 대응할 수 있는 응답을 생성하기 위해 필수적인 단계입니다.
프롬프트의 필요성
- 문맥(Context) 설정: 프롬프트는 언어 모델이 특정 문맥에서 작동하도록 설정하는 역할을 합니다. 이를 통해 모델은 제공된 정보를 바탕으로 보다 정확하고 관련성 높은 답변을 생성할 수 있습니다.
- 정보 통합: 여러 문서에서 검색된 정보는 서로 다른 관점이나 내용을 포함할 수 있습니다. 프롬프트 단계에서 이러한 정보를 통합하고, 모델이 이를 효율적으로 활용할 수 있는 형식으로 조정합니다.
- 응답 품질 향상: 질문에 대한 모델의 응답 품질은 프롬프트의 구성에 크게 의존합니다. 잘 구성된 프롬프트는 모델이 보다 정확하고 유용한 정보를 제공하게 돕습니다.
RAG 프롬프트 구조
- 지시사항(Instruction)
- 질문(사용자 입력 질문)
- 문맥(검색된 정보)
프롬프트의 중요성
프롬프트 단계는 RAG 시스템에서 중요한 역할을 합니다. 이 단계를 통해 언어 모델은 사용자의 질문에 대해 최적화된 방식으로 응답을 생성할 수 있으며, 시스템 전체의 성능과 사용자 만족도에 직접적인 영향을 미칩니다. 프롬프트가 잘 구성되어 있지 않으면, 모델이 비효율적으로 작동할 수 있으며, 결과적으로 사용자의 요구에 부응하지 못하는 응답을 생성할 가능성이 높아집니다.
제로샷, 원샷, 퓨샷의 개념
LLM으로부터 더 좋은 응답을 하기 위해 사용자가 예시를 주는 것을 원샷, 퓨샷 프롬프트라고 합니다. 원샷 (One shot)은 예시를 하나만 주는 것이고 퓨샷 (Few shot)은 2개 이상 예시를 제공해 주는 것이죠. ‘샷’은 프롬프트 엔지니어링에서 ‘예시’라는 뜻으로 사용됩니다. 제로샷은 예시없이 응답을 구하는 것입니다. 예시가 없으면 자신이 원하는 대답이 나오지 않을 확률이 올라가긴 하지만 AI의 자율성과 창의성이 가미된 대답이 나오곤 합니다.