Method: projects.locations.collections.engines.assistants.streamAssist

스트리밍 방식으로 사용자의 질문을 지원합니다.

HTTP 요청

POST https://discoveryengine.googleapis.com/v1beta/{name=projects/*/locations/*/collections/*/engines/*/assistants/*}:streamAssist

URL은 gRPC 트랜스코딩 문법을 사용합니다.

경로 매개변수

매개변수
name

string

필수 항목입니다. Assistant의 리소스 이름입니다. 형식: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}

요청 본문

요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.

JSON 표현
{
  "query": {
    object (Query)
  },
  "session": string,
  "userMetadata": {
    object (AssistUserMetadata)
  },
  "agentsSpec": {
    object (AgentsSpec)
  },
  "toolsSpec": {
    object (ToolsSpec)
  },
  "generationSpec": {
    object (GenerationSpec)
  }
}
필드
query

object (Query)

(선택사항) 현재 사용자 쿼리입니다.

빈 쿼리는 fileIds가 제공된 경우에만 지원됩니다. 이 경우 해당 컨텍스트 파일을 기반으로 답변이 생성됩니다.

session

string

(선택사항) 요청에 사용할 세션입니다. 지정된 경우 어시스턴트는 세션 기록에 액세스할 수 있으며 질문과 답변이 여기에 저장됩니다.

-이 세션 ID로 지정되거나 비워 두면 자동으로 생성된 ID로 새 세션이 생성됩니다.

형식: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/sessions/{session}

userMetadata

object (AssistUserMetadata)

(선택사항) 쿼리를 시작하는 사용자에 대한 정보입니다.

agentsSpec

object (AgentsSpec)

(선택사항) 요청을 처리하는 데 사용되는 에이전트의 사양입니다.

toolsSpec

object (ToolsSpec)

(선택사항) 요청을 처리하는 데 사용되는 도구의 사양입니다.

generationSpec

object (GenerationSpec)

(선택사항) 요청의 생성 구성 사양입니다.

응답 본문

AssistantService.StreamAssist 메서드에 대한 응답입니다.

성공한 경우 응답 본문은 다음과 같은 구조의 데이터를 포함합니다.

JSON 표현
{
  "answer": {
    object (AssistAnswer)
  },
  "sessionInfo": {
    object (SessionInfo)
  },
  "assistToken": string
}
필드
answer

object (AssistAnswer)

사용자의 질문에 대한 어시스턴트의 최종 답변 일부를 포함하는 assistants.assist answer 리소스 객체입니다.

현재 응답이 이전에 전송된 AssistAnswer.replies에 아무것도 추가하지 않으면 표시되지 않습니다.

AssistAnswer.state를 관찰하여 더 많은 부분이 예상되는지 확인합니다. 상태가 IN_PROGRESS인 동안 각 응답의 AssistAnswer.replies 필드에는 이전 응답에서 수신된 응답에 추가할 대답 (대답 프래그먼트)이 포함됩니다. AssistAnswer.name이 채워지지 않습니다.

상태가 SUCCEEDED, FAILED 또는 SKIPPED이면 응답은 마지막 응답이고 AssistAnswer.name에 값이 있습니다.

sessionInfo

object (SessionInfo)

세션 정보입니다. 응답 스트림의 최종 StreamAssistResponse에만 포함됩니다.

assistToken

string

현재 요청과 응답 스트림을 식별하는 전역 고유 ID입니다. 의견 및 지원에 사용됩니다.

승인 범위

다음 OAuth 범위 중 하나가 필요합니다.

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/discoveryengine.readwrite
  • https://www.googleapis.com/auth/discoveryengine.assist.readwrite

자세한 내용은 Authentication Overview를 참조하세요.

IAM 권한

name 리소스에 대해서는 다음 IAM 권한이 필요합니다.

  • discoveryengine.assistants.assist

자세한 내용은 IAM 문서를 참조하세요.

AgentsSpec

요청을 처리하는 데 사용되는 에이전트의 사양입니다.

JSON 표현
{
  "agentSpecs": [
    {
      object (AgentSpec)
    }
  ]
}
필드
agentSpecs[]

object (AgentSpec)

(선택사항) 요청을 처리하는 데 사용되는 에이전트의 사양입니다.

AgentSpec

에이전트 사양입니다.

JSON 표현
{
  "agentId": string
}
필드
agentId

string

필수사항입니다. 요청을 처리하는 에이전트 리소스를 식별하는 ID입니다.

이 필드는 RFC-1034를 준수해야 하며 길이 제한은 63자(영문 기준)입니다.

ToolsSpec

요청을 처리하는 데 사용되는 도구의 사양입니다.

JSON 표현
{
  "vertexAiSearchSpec": {
    object (VertexAiSearchSpec)
  },
  "webGroundingSpec": {
    object (WebGroundingSpec)
  },
  "imageGenerationSpec": {
    object (ImageGenerationSpec)
  },
  "videoGenerationSpec": {
    object (VideoGenerationSpec)
  }
}
필드
vertexAiSearchSpec

object (VertexAiSearchSpec)

(선택사항) Vertex AI Search 도구의 사양입니다.

webGroundingSpec

object (WebGroundingSpec)

(선택사항) 웹 그라운딩 도구의 사양입니다. 필드가 있으면 웹 검색을 사용한 그라운딩을 사용 설정합니다. Assistant.web_grounding_type이 [WEB_GROUNDING_TYPE_GOOGLE_SEARCH][] 또는 [WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH][]인 경우에만 작동합니다.

imageGenerationSpec

object (ImageGenerationSpec)

(선택사항) 이미지 생성 도구의 사양입니다.

videoGenerationSpec

object (VideoGenerationSpec)

(선택사항) 동영상 생성 도구의 사양입니다.

VertexAiSearchSpec

Vertex AI Search 도구의 사양입니다.

JSON 표현
{
  "dataStoreSpecs": [
    {
      object (DataStoreSpec)
    }
  ],
  "filter": string
}
필드
dataStoreSpecs[]

object (DataStoreSpec)

(선택사항) 검색 호출에서 필터링할 DataStore와 해당 데이터 저장소의 구성을 정의하는 사양입니다. 데이터 스토어가 여러 개인 Engine에만 적용됩니다.

filter

string

(선택사항) 필터 구문은 필터링되는 문서의 하나 이상의 필드에서 조건자를 구성하기 위한 표현식 언어로 구성됩니다. 필터 표현식은 대소문자를 구분합니다.

이 필드를 인식할 수 없으면 INVALID_ARGUMENT가 반환됩니다.

Vertex AI Search의 필터링은 LHS 필터 키를 Vertex AI Search 백엔드에 정의된 키 속성에 매핑하여 실행됩니다. 이 매핑은 고객이 스키마에 정의합니다. 예를 들어 미디어 고객의 스키마에 'name' 필드가 있을 수 있습니다. 이 경우 필터는 다음과 같습니다. filter --> name:'ANY("king kong")'

구문 및 필터 연산자를 비롯한 필터링에 대한 자세한 내용은 필터를 참고하세요.

WebGroundingSpec

이 유형에는 필드가 없습니다.

웹 그라운딩 도구의 사양입니다.

ImageGenerationSpec

이 유형에는 필드가 없습니다.

이미지 생성 도구의 사양입니다.

VideoGenerationSpec

이 유형에는 필드가 없습니다.

동영상 생성 도구의 사양입니다.

GenerationSpec

요청의 어시스턴트 생성 사양입니다. 이렇게 하면 엔진 수준에서 기본 생성 구성을 재정의할 수 있습니다.

JSON 표현
{
  "modelId": string
}
필드
modelId

string

(선택사항) 생성형 모델에 사용되는 Vertex AI modelId입니다. 설정하지 않으면 기본 어시스턴트 모델이 사용됩니다.

SessionInfo

세션에 관한 정보입니다.

JSON 표현
{
  "session": string
}
필드
session

string

새로 생성되거나 계속된 세션의 이름입니다.

형식은 projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/sessions/{session}입니다.