[최신] 벨루가 에이전트 빌더 기능 출시 
Show more
Sign In
벨루가 블로그

QnA 프롬프트 체인 기본 개념

S
SangYeon_Lee
Category
Empty

프롬프트 체인?

대규모 언어 모델 관련 일들은 저글링과 같다고 생각할 수 있습니다. 한 번의 프롬프트에서 처리해야 하는 작업이 많을수록 무언가를 놓치거나 단일 작업을 제대로 수행하지 못할 가능성이 높아집니다. 따라서 여러 단계 또는 하위 작업이 필요한 복잡한 작업의 경우 이러한 작업을 하위 작업으로 나누고 프롬프트를 연결하여 모든 단계에서 최고 품질의 성능을 보장하는 것이 좋습니다.

프롬프트 체이닝이란 무엇인가요?

프롬프트 체이닝은 한 프롬프트의 출력을 다른 프롬프트의 입력으로 사용하는 것을 말합니다. 프롬프트를 서로 연결함으로써 관리하기 쉬운 일련의 작은 작업을 통해 궁극적으로 복잡한 목표를 달성할 수 있습니다.

프롬프트 체인에는 몇 가지 장점이 있습니다:

각 개별 단계에서 생성되는 출력의 정확성과 일관성 향상
특히 오류가 발생하기 쉽거나 처리하기 어려운 특정 하위 작업을 분리하여 문제 해결이 더 쉬워집니다.

어떤 경우 사용하나요?

다음과 같은 시나리오에서 프롬프트 체이닝을 사용하는 것이 좋습니다:
다단계 작업:
주제 조사,
문서 개요 작성,
문서 작성,
문서 서식 지정 등 여러 단계를 거쳐야 하는 작업의 경우
시나리오 기반의 챗봇
에이전트 같은 다양한 일을 처리하는 경우
프롬프트를 연결하면 각 단계에 집중하여 높은 수준의 작업을 수행할 수 있습니다.
복잡한 지시 사항: 하나의 프롬프트에 너무 많은 지침이나 세부 사항이 포함되어 있으면 일관성 있게 따라가는 데 어려움을 겪을 수 있습니다.
작업을 일련의 연쇄적인 하위 작업으로 나누면 각 하위 작업의 성능을 향상시킬 수 있습니다.

실제 예시 보기

구분선 안의 내용 전체가 하나의 프롬프트 입니다.

1. 질문 처리 및 초기 검색

지침: 사용자가 질문을 제출하면 시작. 질문이 영어가 아닌 다른 언어로 작성된 경우 정확성을 위해 번역합니다. 질문이 모호하거나 넓거나 구체적인 정보가 부족한 경우 추가 세부 정보나 명확한 설명을 요청합니다. 번역 및 명확화된 사용자 질문과 관련된 정보를 데이터베이스에서 철저히 검색합니다.
입력:
user_question
출력:
검색 결과 또는 추가 세부 정보 요청
JSON 형식:
{ "step": "질문 처리 및 초기 검색", "user_question": "<user_question>", "search_results": "<search_results>" }

2. 결과 평가 및 개선

지시사항: 검색 결과의 관련성과 품질을 평가하세요. 관련이 없거나 일부 관련이 있는 결과가 여러 개인 경우, 관련성을 개선하세요. 관련된 데이터를 찾지 못한 경우, 해당 주제와 일반적인 정보를 제공하거나 사용자로부터 더 구체적이거나 다른 질문을 요청하세요.
입력:
search_results
출력:
개선된 결과 또는 새로운 입력을 요청합니다.
JSON 형식:
{ "step": "결과 평가 및 개선", "refined_results": "<개선된_결과>", "user_question": "<사용자_질문>" }

3. 사용자 상호작용 및 피드백 통합

지시사항: 이해할 수 있는 형식으로 개선된 정보를 사용자에게 제시하세요. 정보의 관련성과 포괄성에 대한 사용자의 피드백을 요청하세요. 사용자 피드백을 기반으로 검색 및 개선 과정을 조정하세요. 이는 추가 세부 정보, 설명 또는 쿼리에 대한 새로운 방향을 포함할 수 있습니다.
입력:
refined_results, user_feedback
출력:
피드백에 기반한 업데이트된 정보입니다.
JSON 형식:
{ "step": "사용자 상호작용 및 피드백 통합", "updated_information": "<업데이트된_정보>", "user_feedback": "<사용자_피드백>" }

4. 최종 응답

지침: 명확하고 간결하며 사용자의 질문과 피드백을 직접적으로 다루는 최종 답변을 작성하세요. 응답이 사용자가 이해할 수 있는 언어로 되어 있는지 확인하세요. 응답이 복잡한 주제와 관련된 경우 추가 자료를 위해 단순화하거나 추가 리소스를 제공하는 것을 고려하십시오.
입력:
updated_information
출력:
사용자에 대한 최종 답변 또는 응답.
JSON 형식:
{ "step": "최종 응답 공식화", "final_response": "<최종 응답>", "updated_information": "<updated_information>" }

5. 종료 및 지속적인 개선

지침: 사용자에게 응답에 만족하는지 또는 추가 질문이 있는지 묻습니다. 후속 질문에 답하거나 새로운 질문에 대한 프로세스를 반복할 준비를 하십시오. 시스템의 정확성과 사용자 경험을 향상시키기 위해 분석을 위해 전체 상호 작용을 기록합니다.
입력:
final_response, additional_user_feedback
출력:
사용자 만족도 확인 또는 추가 질의 처리.
JSON 형식:
{ "step": "폐쇄 및 지속적인 개선", "process_ended": "<true_or_false>", "additional_user_feedback": "<additional_user_feedback>" }
Subscribe to 'velugadoc'
Subscribe to my site to be the first to receive notifications and emails about the latest updates, including new posts.
Join Slashpage and subscribe to 'velugadoc'!
Subscribe
😍
1
👍
2
😀
1