이 페이지에서는 시스템 요청 사항을 통해 효과적인 프롬프트를 작성하고 BigQuery 데이터의 경우 구조화된 컨텍스트를 추가로 제공하여 Conversational Analytics API 데이터 에이전트에게 작성된 컨텍스트를 가장 잘 제공하는 방법을 설명합니다. 작성된 컨텍스트를 제공하는 것은 선택사항이지만 잘 구성된 작성된 컨텍스트는 API가 제공하는 대답의 정확성과 관련성을 개선할 수 있습니다.
작성된 컨텍스트란 무엇인가요?
작성된 컨텍스트는 개발자가 데이터 에이전트의 동작을 형성하고 API의 응답을 미세 조정하기 위해 제공할 수 있는 안내입니다. 이 안내에는 자유 형식 시스템 요청 사항과 BigQuery 데이터 소스의 경우 테이블 설명, 샘플 쿼리와 같은 정보가 포함된 구조화된 컨텍스트 필드가 포함됩니다. 질문에 답변하기 위해 에이전트는 이 작성된 컨텍스트를 데이터 소스 (예: BigQuery 테이블, Looker Explore, Looker Studio 데이터 소스)의 정보 및 대화 기록 (멀티턴 대화의 경우)과 결합합니다.
구조화된 컨텍스트 필드와 자유 형식 시스템 요청 사항을 통해 명확한 안내를 제공하면 에이전트가 사용자 질문을 해석하고 유용하고 정확한 답변을 생성하는 능력을 개선할 수 있습니다. 잘 정의된 컨텍스트는 BigQuery 테이블 등의 데이터에 연결하는 경우 특히 유용합니다. 예를 들어 작성된 컨텍스트를 사용하여 다음과 같은 유형의 안내를 에이전트에게 제공할 수 있습니다.
- 비즈니스별 로직: 특정 기간 내에 5회 넘게 구매한 고객을 '충성도 높은' 고객으로 정의합니다.
- 대답 형식: 사용자의 시간을 절약하기 위해 데이터 에이전트의 모든 대답을 20단어 이하로 요약합니다.
- 데이터 표시: 모든 숫자의 형식을 회사의 스타일 가이드에 맞게 지정합니다.
작성된 컨텍스트 제공
제공할 수 있는 구체적인 정보는 데이터 소스에 따라 다릅니다.
- BigQuery 데이터의 경우 구조화된 컨텍스트와 시스템 요청 사항을 모두 정의할 수 있습니다. 최상의 결과를 얻으려면 먼저 사용 가능한 구조화된 필드를 통해 상담사에게 컨텍스트를 제공하세요. 그런 다음 시스템 안내를 정의하여 보충 안내를 제공할 수 있습니다.
- Looker 데이터의 경우 작성된 컨텍스트는 시스템 요청 사항을 통해서만 제공됩니다.
- 데이터베이스 데이터 소스의 경우 데이터베이스에 업로드된 에이전트 컨텍스트에 해당하는 컨텍스트 세트 ID를 통해 컨텍스트를 정의할 수 있습니다.
표 설명, 샘플 쿼리와 같은 세부정보를 위해 API 필드에 구조화된 컨텍스트를 제공합니다. system_instruction 파라미터를 사용하여 시스템 요청 사항을 YAML 형식 문자열로 제공합니다.
작성된 컨텍스트를 정의한 후 다음 호출 중 하나에서 API에 제공할 수 있습니다.
- 영구 데이터 에이전트 만들기: 요청 본문의
published_context객체 내에 작성된 컨텍스트를 포함하여 여러 대화에서 지속되는 에이전트 동작을 구성합니다. 자세한 내용은 데이터 에이전트 만들기(HTTP) 또는 스테이트풀(Stateful) 또는 스테이트리스(Stateless) 채팅의 컨텍스트 설정(Python SDK)을 참조하세요. - 스테이트리스(Stateless) 요청 보내기: 채팅 요청의
inline_context객체 내에 작성된 컨텍스트를 제공하여 해당 특정 API 호출에 대한 에이전트의 동작을 정의합니다. 자세한 내용은 스테이트리스(Stateless) 멀티턴 대화 만들기(HTTP) 또는 인라인 컨텍스트를 사용하여 스테이트리스(Stateless) 채팅 요청 보내기(Python SDK)를 참조하세요. - 쿼리 데이터 요청 보내기: 데이터베이스 데이터 소스의 경우 쿼리 데이터 요청의
agent_context_reference객체 내에서 작성된 컨텍스트의 컨텍스트 세트 ID를 제공합니다. 자세한 내용은 데이터베이스 데이터 소스의 데이터 에이전트 컨텍스트 정의를 참고하세요.
에이전트 빌드 권장사항: 작성된 컨텍스트에 버전 관리 사용
Conversational Analytics API로 에이전트를 빌드할 때 stagingContext, publishedContext, lastPublishedContext 필드를 사용하여 컨텍스트 버전을 제어합니다. 다음 사용 사례에서는 이러한 필드를 사용하여 에이전트 컨텍스트의 스테이징 및 프로덕션 버전을 만드는 방법을 보여줍니다.
publishedContext 필드가 있는 기존 에이전트를 사용하지만 에이전트를 업데이트해야 한다고 가정해 보겠습니다 (예: 모든 차트를 파란색 대신 녹색으로 만들기).
변경사항을 적용하고 게시하기 전에 테스트하려면 다음 단계를 따르세요.
stagingContext필드에서 에이전트를 변경하고 변경사항을 적용하여 에이전트를 테스트합니다.- 변경사항이 준비되면
stagingContext의 변경사항으로publishedContext필드를 업데이트합니다. - 필요한 경우
publishedContext를lastPublishedContext로 업데이트하여 이전 에이전트로 되돌릴 수 있습니다.
관련 리소스
- HTTP 및 Python을 사용하여 데이터 에이전트 빌드
- Python SDK를 사용하여 데이터 에이전트 빌드
- BigQuery 데이터 소스의 데이터 에이전트 컨텍스트 정의
- Looker 데이터 소스의 데이터 에이전트 컨텍스트 정의
- 데이터베이스 데이터 소스의 데이터 에이전트 컨텍스트 정의