Example Store를 사용하면 퓨샷 예시를 저장하고 동적으로 검색할 수 있습니다. 퓨샷 예시를 사용하면 LLM에 예상되는 응답 패턴을 보여줌으로써 유사한 쿼리에 대한 응답의 품질, 정확성, 일관성을 개선할 수 있습니다.
퓨샷(few-shot) 예시란 무엇인가요?
퓨샷 예시는 LLM 사용 사례에 특화된 라벨이 지정된 데이터입니다. 여기에는 모델 요청에 대한 예상 모델 응답을 보여주는 입력-출력 쌍이 포함됩니다. 예시를 사용하여 LLM의 예상 동작이나 응답 패턴을 보여줄 수 있습니다.
관련된 예 몇 개만 사용하면 프롬프트의 크기나 복잡성을 그에 맞게 늘리지 않고도 가능한 결과, 의도된 동작, 사용자 입력의 더 큰 집합을 다룰 수 있습니다. 이는 관련성 높은 예시만 포함하고 (예시의 수를 줄임) 예상되는 동작을 '말이 아니라 보여주'는 방식으로 모두 달성할 수 있습니다.
퓨샷 예시를 사용하는 것은 컨텍스트 내 학습의 형태 중 하나입니다. 예시는 모델이 콘텐츠를 생성하는 방법을 설명하지 않으면서 입력과 출력의 명확한 패턴을 보여줍니다. 프롬프트 크기나 코드 복잡성을 늘리지 않고도 상대적으로 적은 예시만으로 가능한 결과나 사용자 질문을 더 많이 다룰 수 있습니다. 예시를 사용해도 사전 학습된 모델의 파라미터를 업데이트할 필요가 없으며 LLM의 지식 범위에 영향을 미치지 않습니다. 따라서 예시를 사용한 컨텍스트 내 학습은 LLM이 이전에 본 적 없는 프롬프트에 대한 추론과 응답을 맞춤설정하거나 수정하거나 개선하는 데 비교적 가볍고 간결한 접근 방식입니다.
사용자 쿼리를 대표하는 관련 예시를 수집하면 모델이 주의를 유지하고, 예상되는 패턴을 보여주고, 잘못되거나 예상치 못한 동작을 수정하는 데 도움이 됩니다. 이는 예상되는 응답을 생성하는 다른 요청에는 영향을 미치지 않습니다.
모든 프롬프트 엔지니어링 전략과 마찬가지로 퓨샷 예시를 사용하면 미세 조정 또는 RAG와 같은 다른 LLM 최적화 기술을 보완할 수 있습니다.
Example Store 사용 방법
다음 단계에서는 Example Store를 사용하는 방법을 간략히 설명합니다.
ExampleStore리소스('Example Store 인스턴스'라고도 함)를 만들거나 재사용합니다.- 리전 및 프로젝트마다 최대 50개의 Example Store 인스턴스를 보유할 수 있습니다.
LLM 응답을 기반으로 예시를 작성하고 업로드합니다. 다음과 같은 두 가지 시나리오가 있습니다.
LLM의 동작 및 응답 패턴이 예상대로면 이러한 응답을 기반으로 예시를 작성하고 Example Store 인스턴스에 업로드합니다.
LLM에 예상치 못한 동작이나 응답 패턴이 표시되면 응답을 수정하는 방법을 보여주는 예시를 작성한 후 Example Store 인스턴스에 업로드합니다.
업로드된 예시는 Example Store 인스턴스와 연결된 에이전트 또는 LLM 애플리케이션에서 즉시 사용할 수 있습니다.
Vertex AI 에이전트 개발 키트를 기반으로 하는 에이전트가 Example Store 인스턴스에 연결된 경우 에이전트는 예를 자동으로 검색하여 LLM 요청에 포함합니다.
다른 모든 LLM 애플리케이션의 경우 예시를 검색하고 가져온 다음 프롬프트에 포함해야 합니다.
LLM에서 예상치 못한 성능이 관찰되거나 악의적이거나 예상치 못한 사용자 쿼리가 발생할 때마다 Example Store 인스턴스에 예시를 반복적으로 추가할 수 있습니다. 코드를 업데이트하거나 새로운 버전의 LLM 애플리케이션을 다시 배포할 필요가 없습니다. 예시를 Example Store 인스턴스에 업로드하는 즉시 에이전트 또는 애플리케이션에서 사용할 수 있습니다.
또한 다음을 수행할 수 있습니다.
저장된 예시의 검색 키와 쿼리의 검색 키 간에 코사인 유사성 검색을 실행하여 예시를 가져옵니다.
함수 이름으로 예시를 필터링하고 후보 예시 목록을 LLM의 가능한 응답을 나타내는 예시로 구체화합니다.
에이전트 또는 LLM 애플리케이션을 반복적으로 개선합니다.
여러 에이전트 또는 LLM 애플리케이션과 예시를 공유합니다.
퓨샷 예시 작성 가이드라인
모델 성능에 미치는 예시의 영향은 프롬프트에 포함된 예시의 종류와 포함 방식에 따라 달라집니다.
다음은 일반적으로 예시 작성에 권장되는 방법입니다.
관련성 및 유사성: 예시는 특정 작업 또는 도메인과 밀접하게 관련되어야 합니다. 이를 통해 모델은 지식의 가장 관련성 높은 측면에 집중하고, 토큰 사용량을 줄이며, 성능을 유지하거나 개선할 수 있습니다. 대화와 관련된 예시가 있다면 더 적은 예시가 필요합니다. 사용 가능한 예시의 코퍼스는 가능한 사용자 쿼리를 나타내야 합니다. 또한 예시는 특정 사용자 질문과 관련이 있어야 합니다.
복잡성: LLM의 성능을 개선하려면 복잡성이 낮은 예시를 사용하여 예상되는 추론을 보여주세요.
가능한 모델 결과의 대표: 예시의 예상 응답은 가능한 결과와 일치해야 합니다. 이를 통해 예시에서 프롬프트에 대한 LLM의 예상 추론과 일치하는 추론을 명확하게 보여줄 수 있습니다.
형식: 최상의 성능을 위해 프롬프트의 퓨샷 예시를 LLM 학습 데이터와 일치하고 대화 기록과 차별화되는 방식으로 포맷하세요. 프롬프트의 예시 형식은 LLM 성능에 상당한 영향을 미칠 수 있습니다.
예시 사용 사례: 함수 호출
퓨샷 예시를 사용하여 함수 호출 성능을 개선할 수 있습니다.
일관된 패턴으로 사용자 질문에 대한 예상 함수 호출을 나타낼 수 있습니다. 이 예시에서는 호출해야 하는 함수와 함수 호출에 포함할 인수를 포함하여 요청에 대한 예상 응답을 모델링할 수 있습니다. 함수 get_store_location가 매장의 위치와 설명을 반환하는 사용 사례를 생각해 보세요. 쿼리가 예상대로 이 함수를 호출하지 않거나 예상치 못한 출력을 표시하는 경우 퓨샷 예시를 사용하여 후속 쿼리에 대한 이 동작을 수정할 수 있습니다.
함수 호출에 대한 자세한 내용은 함수 호출을 참고하세요.
자세한 내용은 Example Store 빠른 시작을 참고하세요.
다음 단계
Example Store 생성 방법 알아보기