스마트 답장은 상담사와 최종 사용자 간의 대화를 따라가며 상담사에게 추천 응답을 표시합니다. 추천 응답은 자체 대화 데이터를 기반으로 학습된 맞춤 모델에 의해 계산됩니다.
이 문서에서는 API를 사용하여 스마트 답장을 구현하고 이 기능으로 추천을 받는 과정을 안내합니다. 원하는 경우 설계 중에 Agent Assist 콘솔을 사용하여 데이터를 업로드하고 모델을 학습시키며 스마트 답장 결과를 테스트할 수 있습니다. 런타임 중에 스마트 답장 추천을 보려면 API를 직접 호출해야 합니다. Agent Assist 콘솔을 사용하여 모델을 학습시키고 성능을 테스트하는 방법에 대한 자세한 내용은 스마트 답장 튜토리얼을 참고하세요.
Agent Assist는 공개적으로 사용 가능한 대화 데이터와 선행 학습된 모델 및 허용 목록도 제공합니다. 이러한 리소스를 사용하여 스마트 답장의 작동 방식을 확인하거나 자체 데이터를 업로드하기 전에 통합을 테스트할 수 있습니다. 자세한 내용은 대화 데이터 형식 문서를 참고하세요.
시작하기 전에
이 가이드를 시작하기 전에 다음을 수행해야 합니다.
- 자체 스크립트 데이터를 사용하여 대화 데이터 세트를 만듭니다.
- 대화 데이터 세트를 사용하여 스마트 답장 모델을 학습시킵니다.
개인 식별 정보 및 아동 데이터
이 API로 데이터를 전송하면 API에서 모든 개인 식별 정보(PII)를 수정하려고 시도합니다. 모델에 PII가 포함되지 않도록 하려면 데이터를 API로 보내기 전에 삭제해야 합니다. 삭제된 단어를 삭제하는 대신 `REDACTED_NUMBER` 또는 `REDACTED_NAME` 과 같은 자리표시자로 바꿉니다.
또한 아동에게서 수집한 정보가 데이터에 포함된 경우 아동 데이터를 API로 보내기 전에 삭제해야 합니다.
모델 학습 및 배포
Agent Assist 스마트 답장 모델은 대화 데이터 세트를 사용하여 학습됩니다. 대화 데이터 세트에는 내가 업로드한 스크립트 데이터가 포함됩니다. 이 섹션에서는 대화 데이터 세트를 만들고, 대화 데이터를 데이터 세트에 업로드하고, 모델을 학습 및 배포하는 과정을 안내합니다. API를 직접 호출하지 않으려면 Agent Assist 콘솔을 사용하여 이러한 작업을 수행할 수도 있습니다.
대화 데이터 세트 만들기
대화 스크립트 업로드를 시작하려면 먼저 대화 데이터 세트를 만들어야 합니다. ConversationDataset
리소스에서 create
메서드를 호출하여 대화 데이터 세트를 만듭니다.
응답에 대화 데이터 세트 ID가 포함됩니다.
대화 데이터 세트에 대화 스크립트 가져오기
Agent Assist에서 처리할 수 있도록 채팅 대화 데이터를 대화 데이터 세트에 업로드합니다.
각 대화의 스크립트가 JSON
형식이며 Cloud Storage 버킷에 저장되어 있는지 확인합니다.
대화 데이터 세트에 30,000개 이상의 대화가 포함되어 있어야 합니다. 그렇지 않은 경우 모델 학습이 실패합니다. 일반적으로 대화가 많을수록 모델 품질이 향상됩니다. 최대한 많은 사용 사례를 충분히 다루려면 적어도 3개월 간의 대화를 업로드하는 것이 좋습니다. 대화 데이터 세트의 최대 메시지 수는 1,000,000개입니다.
ConversationDataset
리소스에서 importConversationData
메서드를 호출하여 대화를 가져옵니다.
필수 필드:
- 이전에 만든 대화 데이터 세트 ID입니다.
inputConfig
경로는 Cloud Storage 버킷의 대화 스크립트 데이터로 연결됩니다.
응답은 완료 여부를 확인하기 위해 폴링할 수 있는 장기 실행 작업입니다.
대화 모델 만들기
ConversationModel
리소스에서 create
메서드를 호출하여 대화 모델을 만듭니다. 이 작업은 모델의 허용 목록도 만듭니다.
필수 필드:
datasets
에서 이전에 만든 대화 데이터 세트 ID를 사용하여 단일 데이터 세트를 제공합니다.smartReplyModelMetadata
를 빈 객체로 설정하거나 필드를 채워 기본값을 재정의합니다.
응답은 완료 여부를 확인하기 위해 폴링할 수 있는 장기 실행 작업입니다. 완료되면 모델 ID 및 허용 목록 ID가 작업의 메타데이터에 포함됩니다.
- 모델 ID:
name
- 허용 목록 ID:
smart_reply_model_metadata.associated_allowlist_info.document
대화 모델 배포
ConversationModel
리소스에서 deploy
메서드를 호출하여 대화 모델을 배포합니다.
필수 입력란:
conversationModels
사용: 이전에 만든 대화 모델 ID를 입력합니다.
허용 목록 관리
각 모델에는 대화 모델을 만들 때 자동으로 생성되는 허용 목록이 연결되어 있습니다. 허용 목록에는 런타임 시 상담사에게 표시할 수 있는 대화 데이터 세트에서 생성된 모든 응답이 포함됩니다. 이 섹션에서는 허용 목록 생성 및 관리에 대해 설명합니다. API를 직접 호출하지 않으려면 Agent Assist 콘솔을 사용하여 이러한 작업을 수행할 수도 있습니다.
허용 목록 콘텐츠를 CSV
파일로 내보내기
모델을 만들면 새 모델과 연결된 허용 목록이 자동으로 생성됩니다. 허용 목록은 고유 ID가 있는 문서 리소스입니다. 이 ID는 모델이 생성될 때 smart_reply_model_metadata.associated_allowlist_info.document
에서 반환됩니다. 허용 목록의 메시지를 검토하고 변경하려면 Cloud Storage 버킷으로 내보내야 합니다.
Document
리소스에서 export
메서드를 호출하여 문서를 Cloud Storage 버킷의 CSV
파일로 내보냅니다.
smart_messaging_partial_update
필드는 선택사항이지만 향후 이 허용 목록을 업데이트하는 방법에 영향을 줍니다. true
로 설정하면 내보낸 CSV
파일에 각 메시지의 고유 ID가 포함된 열이 포함됩니다. 메시지 ID를 사용하여 전체 문서 대신 지정된 메시지만 업데이트할 수 있습니다. smart_messaging_partial_update
가 false
로 설정되거나 설정되지 않은 경우 추가 열이 파일에 표시되지 않으며 허용 목록을 업데이트하려면 전체 문서를 업데이트해야 합니다.
필수 입력란:
gcsDestination
경로는 Cloud Storage 버킷으로 이동합니다.
응답은 완료 여부를 확인하기 위해 폴링할 수 있는 장기 실행 작업입니다. 그런 다음 요청에 제공한 CSV
파일에 응답 후보가 채워집니다.
허용 목록 검토
생성된 허용 목록에는 대화 데이터를 기반으로 스마트 답장이 자동으로 생성한 응답이 포함됩니다. 이제 필요에 따라 이러한 응답을 검토하고 업데이트할 수 있습니다. Cloud Storage 버킷에서 CSV
파일을 다운로드하고 필요에 맞게 수정한 후 파일을 Cloud Storage 버킷에 다시 업로드합니다. 허용 목록에 있는 대답만 상담사에게 표시될 수 있습니다.
응답을 수정하는 경우 맞춤법과 문법만 수정하고 메시지의 의미는 변경하지 않는 것이 좋습니다. 수정된 텍스트가 모델의 의미에서 벗어날수록 메시지가 표시될 가능성이 낮아집니다.
필요한 경우 새 메시지를 만들 수도 있습니다. 수정된 메시지와 마찬가지로 생성된 메시지는 런타임 중에 표시될 가능성이 낮습니다.
허용 목록 업데이트
CSV
파일 업데이트를 완료한 후 이 파일을 사용하여 Document
리소스를 업데이트할 수 있습니다. 전체 허용 목록을 업데이트하거나 지정된 메시지만 업데이트할 수 있습니다. 지정된 메시지만 업데이트하려면 허용 목록을 내보낼 때 smart_messaging_partial_update
를 true
로 설정해야 합니다.
이미 이 작업을 완료한 경우 내보낸 CSV
파일에서 자동으로 생성된 열을 사용하여 업데이트할 메시지를 표시합니다.
Document
리소스에서 reload
메서드를 호출하여 허용 목록을 업데이트합니다. 지정된 메시지만 업데이트하려면 ReloadDocumentRequest
에서 smart_messaging_partial_update
를 true
로 설정합니다. 전체 허용 목록을 업데이트하려면 smart_messaging_partial_update
를 설정하지 않거나 false
로 설정합니다.
필수 필드:
gcsSource
은CSV
파일의 Cloud Storage 경로입니다.name
의 경우 대화 모델을 만들 때 생성된 허용 목록 리소스 이름을 사용합니다.
요청 예시:
{ "name":"projects/project-id/knowledgeBases/knowledge-base-id/documents/allowlist-id", "gcsSource" { "uri": "gs://revised_smart_reply_allowlist_path" } }
학습된 모델의 성능 평가
모델을 배포하고 허용 목록을 만든 후 모델의 성능을 테스트할 수 있습니다. 테스트 데이터 세트도 제공해야 합니다. 학습된 스마트 답장 모델에서 생성된 응답과 관련 허용 목록은 테스트 데이터 세트의 실제 상담사 메시지와 비교됩니다. 테스트 데이터 세트는 실제 대화 데이터로 구성되어야 하지만 모델을 학습하는 데 사용한 대화 데이터 세트의 데이터는 포함해서는 안 됩니다. 예를 들어 1개월 분량의 대화 트래픽이 있다면 3주 분량의 대화 데이터를 사용하여 대화 데이터 세트를 만들고 나머지 1주 분량의 데이터를 사용하여 테스트 데이터 세트를 만들 수 있습니다. 테스트 데이터 세트에는 최소 1, 000개의 대화가 포함되어야 하지만 일반적으로 테스트 데이터 세트의 대화가 많을수록 평가 측정항목의 신뢰성이 높아집니다. 테스트 데이터 세트 형식은 대화 데이터 세트 형식과 동일합니다.
새 모델 평가를 만들려면 ConversationModel
리소스에서 CreateConversationModelEvaluation
메서드를 호출합니다. 이 메서드는 장기 실행 작업을 반환합니다. 작업을 폴링하여 상태를 확인할 수 있으며, 이때 INITIALIZING
, RUNNING
, SUCCEEDED
, CANCELLED
, FAILED
중 하나가 반환됩니다.
필수 필드:
InputDataset
: 모델의 성능을 테스트하는 데 사용되는 테스트 데이터 세트입니다.allowlist_document
: 테스트할 스마트 답장 모델과 연결된 허용 목록입니다.
장기 실행 작업이 완료되면 ConversationModelEvaluation
리소스가 반환됩니다. 다음 두 가지 측정항목이 포함됩니다.
allowlist_coverage
: 허용 목록에 포함된 테스트 데이터 세트의 상담사 메시지 비율입니다.recall
: 허용 목록에 포함되어 있고 또한 스마트 답장 모델에서 표시한 추천 3개에 포함된 테스트 데이터 세트의 상담사 메시지 비율입니다.
대화 프로필 구성하기
대화 프로필은 대화 중 에이전트에 제공되는 추천을 제어하는 매개변수 집합을 구성합니다. 다음 단계에서는 HumanAgentAssistantConfig
객체로 ConversationProfile
을 만듭니다. API를 직접 호출하지 않으려면 Agent Assist 콘솔을 사용하여 이러한 작업을 수행할 수도 있습니다.
대화 프로필 만들기
대화 프로필을 만들려면 ConversationProfile
리소스에서 create
메서드를 호출합니다.
KB ID, 문서 ID, 프로젝트 ID, 모델 ID를 입력합니다.
{ "displayName":"smart_reply_assist", "humanAgentAssistantConfig":{ "humanAgentSuggestionConfig":{ "featureConfigs":[ { "suggestionFeature": { "type":"SMART_REPLY" }, "queryConfig": { "documentQuerySource":{ "documents": ["projects/PROJECT_ID/knowledgeBases/KNOWLEDGE_BASE_ID/documents/DOCUMENT_ID"] }, "maxResults": 3 }, } }, "conversationModelConfig":{ "model": "projects/PROJECT_ID/conversationModels/MODEL_ID" } } ] } } }
SuggestionFeatureConfig.enable_inline_suggestion
값을 설정하는 것이 좋습니다.
이 값이 true이면 나중에 AnalyzeContent
를 호출하면 추천 목록이 포함된 응답이 반환됩니다.
응답에 새 대화 프로필 ID가 포함됩니다.
대화 프로필을 구성하고, 런타임에 대화를 처리하고, 결과를 테스트하고, Agent Assist에 의견을 보내는 방법에 관한 안내는 생성형 스마트 답장을 참고하세요.