생성형 지식 지원은 사용자가 제공한 문서의 정보를 기반으로 에이전트의 질문에 답변을 제공합니다. 흐름 기반 데이터 스토어 에이전트또는 플레이북 기반 데이터 스토어 에이전트의 도메인 이름을 지정하거나 문서를 업로드할 수 있습니다. 생성형 지식 지원은 진행 중인 대화와 사용 가능한 고객 메타데이터를 사용하여 정보를 합성하여 에이전트에게 더 관련성 있고 시기적절한 답변을 제공합니다.
시작하기 전에
프로젝트 소유자가 아닌 경우 데이터 스토어 에이전트를 만들려면 다음 역할이 필요합니다.
- Dialogflow API Admin
- Discovery Engine Admin
흐름 기반 데이터 스토어 에이전트 만들기
Vertex AI 콘솔에서 AI 애플리케이션 API를 활성화합니다.
에이전트를 만들려면 흐름 기반 데이터 스토어 에이전트의 단계를 따르세요.
플레이북 기반 데이터 스토어 에이전트 만들기
Vertex AI 콘솔에서 AI 애플리케이션 API를 활성화합니다.
에이전트를 만들려면 플레이북 기반 데이터 스토어 에이전트의 단계를 따르세요.
에이전트를 데이터 스토어에 연결하려면 데이터 스토어 도구를 만듭니다. 자세한 내용은 플레이북 데이터 스토어 도구 예시를 참고하세요.
상담사의 질문에 답변하기
흐름 기반 또는 플레이북 기반 데이터 스토어 에이전트는 사용자가 제공한 문서를 기반으로 상담사의 질문에 답변할 수 있습니다.
1단계: 대화 프로필 만들기
대화 프로필을(를) Agent Assist 콘솔 또는 API를 사용하여 만듭니다.
콘솔에서 만들기
- 생성형 지식 지원 추천 유형을 사용 설정하고 이전 단계의 흐름 기반 또는 플레이북 기반 데이터 스토어 에이전트에 연결해야 합니다.
- 선택사항: 에이전트 검색어 로깅 사용 중지 체크박스를 사용하여 Google에서 잠재적인 품질 개선을 위해 보안 수정된 검색어를 수집하고 저장할지 여부를 나타냅니다.
- 대화 증강 쿼리 사용 설정 체크박스를 사용하여 검색어에 대한 답변을 생성할 때 상담사와 사용자 간의 대화 컨텍스트를 고려할지 여부를 나타낼 수 있습니다.

API에서 만들기
다음 단계에서는 ConversationProfile 객체로 HumanAgentAssistantConfig을 만드는 방법을 보여줍니다. Agent Assist 콘솔을 사용하여 이러한 작업을 수행할 수도 있습니다.
대화 프로필을 만들려면 ConversationProfile 리소스에서 create 메서드를 호출합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.- PROJECT_ID: 프로젝트 ID입니다.
- LOCATION_ID: 내 위치의 ID입니다.
- AGENT_ID: 이전 단계의 흐름 기반 또는 플레이북 기반 데이터 스토어 에이전트 ID입니다.
{ "displayName": "my-conversation-profile-display-name", "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "featureConfigs": [ { "suggestionFeature": { "type": "KNOWLEDGE_SEARCH" }, "queryConfig": { "dialogflowQuerySource": { "humanAgentSideConfig": { "agent": "projects/PROJECT_ID/locations/LOCATION_ID/agents/AGENT_ID" } } }, "disableAgentQueryLogging": false, "enableConversationAugmentedQuery": false, } ] } } }
Agent Assist 콘솔에서 대화 프로필을 만들면 Agent Assist에서 생성형 지식 지원을 자동으로 사용 설정합니다.
2단계: 데이터 스토어 에이전트 사용
선택적으로
SearchKnowledge
API를 사용하여 데이터 스토어 에이전트에서 답변을 가져옵니다. SearchKnowledge 요청의 일부로 다음 구성을 사용할 수도 있습니다.
querySource: 에이전트가 쿼리를 입력했는지 아니면 생성형 지식 지원에서 자동으로 제안했는지 나타내도록 이 필드를 설정합니다.exactSearch: 쿼리 재작성 없이 정확한 입력 쿼리를 검색할지 여부를 나타내도록 이 필드를 설정합니다.endUserMetadata: 생성된 답변을 개선하는 최종 사용자에 대한 추가 정보를 포함하도록 이 필드를 설정합니다. 자세한 내용은 데이터 스토어 에이전트 성능 맞춤설정 페이지를 참고하세요.searchConfig: 기술 문서를 부스팅하고 필터링하기 위한 추가 제어를 위해 이 필드를 설정합니다. 자세한 내용은 데이터 스토어 에이전트 성능 검색 구성 페이지를 참고하세요.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: 프로젝트 ID입니다.
- LOCATION_ID: 내 위치의 ID입니다.
- CONVERSATION_PROFILE_ID: 이전 단계의 대화 프로필 ID입니다.
- SESSION_ID: 검색 세션 ID입니다. 동일한 세션의 검색 기록은 검색 결과에 영향을 미칠 수 있습니다. 세션 ID에 다음 대화 ID를 사용할 수 있습니다.
- CONVERSATION_ID: 검색 요청이 트리거되는 대화 (상담사와 최종 사용자 간의 대화)입니다.
- MESSAGE_ID: 검색 요청이 트리거될 때의 최신 대화 메시지입니다.
다음은 JSON 요청 예시입니다.
{ "parent": "projects/PROJECT_ID/locations/LOCATION_ID" "query": { "text": "What is the return policy?" } "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID" "sessionId": "SESSION_ID "conversation": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID" "latestMessage": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID "querySource": AGENT_QUERY "exactSearch": false "searchConfig": { "filterSpecs": { "filter": "category: ANY(\"persona_B\")" } } "endUserMetadata": { "deviceOwned": "Google Pixel 7" } }
선택적으로 에이전트의 검색이 사용자와의 대화 중에 발생하는 경우 conversation 및 latest_message 리소스 이름을 제공합니다. enable_conversation_augmented_query 옵션을 사용 설정하고 에이전트와 사용자 간의 대화 컨텍스트로 쿼리 답변 환경을 개선하려는 경우 이 두 필드가 필요합니다.
시뮬레이터
Agent Assist 시뮬레이터에서 흐름 기반 또는 플레이북 기반 데이터 스토어 에이전트를 테스트합니다.

위의 예에서 흐름 기반 데이터 스토어 에이전트는 사용자 쿼리 What is the refund
processing time?에 다음과 같은 정보로 답변합니다.
- 생성형 AI 생성 답변: 반품된 상품이 판매자의 반품 센터에 도착하면 처리하는 데 영업일 기준 최대 7일이 추가로 소요될 수 있습니다. 주문 페이지에서 반품 운송장 번호를 확인하여 환불 상태를 확인하세요.
- 관련 기술 문서 제목: 반품 및 환불.
의견 보내기
의견을 보내는 단계는 Agent Assist에 의견 보내기를 참고하세요.
에이전트 질문에 답변하기
다음은 에이전트 질문에 답변하는 것에 대한 의견을 보내기 위한 JSON 요청 예시입니다.
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/answerRecords/ANSWER_RECORD_ID", "answerFeedback": { "displayed": true "clicked": true "correctnessLevel": "FULLY_CORRECT" "agentAssistantDetailFeedback": { "knowledgeSearchFeedback": { "answerCopied": true "clickedUris": [ "url_1", "url_2", "url_3", ] } } } }
메타데이터
기술 문서의 메타데이터를 구성하면 생성형 지식 지원과 사전 생성형 지식 지원 모두 응답과 함께 문서의 메타데이터를 반환합니다.
예를 들어 메타데이터를 사용하여 기술 문서가 내부 비공개 문서인지 외부 공개 문서인지 표시할 수 있습니다. Agent Assist 시뮬레이터와 UI 모듈 모두에서 생성형 지식 지원과 사전 생성형 지식 지원은 특정 키의 문서 메타데이터 값을 자동으로 표시합니다.
gka_source_label: 값은 추천 카드에 직접 표시됩니다.gka_source_tooltip: 값이struct유형인 경우 소스 링크 위에 커서를 가져가면 값이 툴팁에 확장되어 표시됩니다.
기술 문서에 다음 메타데이터가 있는 경우 추천 카드에 소스가 External Doc으로 표시되고 툴팁에 doc_visibility: public doc이 추가됩니다.
메타데이터:
None
{
"title": "Public Sample Doc",
"gka_source_label": "External Doc",
"gka_source_tooltip": {
"doc_visibility": "public doc"
}
}
최종 사용자 메타데이터
최종 사용자 메타데이터를 연결하여 데이터 스토어 에이전트에서 생성된 답변을 개선하고 맞춤설정합니다. 생성형 지식 지원의 경우 최종 사용자 메타데이터를 end_user_metadata 필드에 연결하거나 IngestContextReferences API를 사용하여 대화에 수집할 수 있습니다. 수집된 최종 사용자 메타데이터는 생성형 지식 지원과 사전 생성형 지식 지원 모두에 사용할 수 있습니다.
예 1: 최종 사용자 메타데이터 연결
{
"query": {
"text": "test query"
},
"conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
"sessionId": "SESSION_ID",
"conversation": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID",
"querySource": "AGENT_QUERY",
"endUserMetadata": {
"Name": "Jack",
"Age": 33,
"City": "Tokyo"
}
}
예 2: 최종 사용자 메타데이터 수집
{
"conversation": "projects/PROJECT_ID/locations/global/conversations/CONVERSATION_ID",
"contextReferences": {
"gka_end_user_metadata": {
"contextContents": [{
"content": "{\"Name\":\"Jack\",\"Age\":33,\"city\":\"Tokyo\"}",
"contentFormat": "JSON"
}],
"updateMode": "OVERWRITE",
"languageCode": "en-US"
}
}
}
데이터 스토어의 최종 사용자 메타데이터에 대한 자세한 내용은 Dialogflow 맞춤설정에 관한 정보를 참고하세요.
언어 지원
지원되는 언어의 전체 목록을 참고하세요.