REST Resource: projects.locations.apps.assistantSessions

리소스: AssistantSession

어시스턴트 세션은 사용자와 어시스턴트 에이전트 간의 대화를 나타냅니다.

JSON 표현
{
  "name": string,
  "requestor": string,
  "messages": [
    {
      object (AssistantMessage)
    }
  ],
  "state": enum (AssistantSessionState),
  "createTime": string,
  "updateTime": string,
  "userResponseSuggestions": {
    object (UserResponseSuggestions)
  },
  "displayName": string,
  "artifacts": [
    {
      object (AssistantSessionArtifact)
    }
  ],
  "sessionCheckpoint": {
    object (SessionCheckpoint)
  },
  "activeTurn": {
    object (ActiveTurnInfo)
  },
  "touchedApps": [
    string
  ]
}
필드
name

string

필수 항목입니다. 식별자. 세션의 고유 식별자입니다. 형식: projects/{project}/locations/{location}/apps/{app}/assistantSessions/{session}

requestor

string

출력 전용입니다. 세션을 시작한 사용자입니다.

messages[]

object (AssistantMessage)

선택사항입니다. 세션의 메시지 기록입니다.

state

enum (AssistantSessionState)

출력 전용입니다. 어시스턴트 세션의 상태입니다.

createTime

string (Timestamp format)

출력 전용입니다. 어시스턴트 세션이 생성된 시간입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

updateTime

string (Timestamp format)

출력 전용입니다. 어시스턴트 세션이 마지막으로 업데이트된 시간입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

userResponseSuggestions

object (UserResponseSuggestions)

출력 전용입니다. 어시스턴트 에이전트의 추천 사용자 응답입니다.

displayName

string

선택사항입니다. 어시스턴트 세션의 표시 이름입니다.

artifacts[]

object (AssistantSessionArtifact)

출력 전용입니다. 이 세션에서 어시스턴트가 생성한 문서 아티팩트(예: 마크다운으로 생성된 TDD)입니다. 포인터만 해당하며 파일 콘텐츠는 고객의 Cloud Storage 버킷에 있습니다.

sessionCheckpoint

object (SessionCheckpoint)

출력 전용입니다. 사용자 의도 및 연속 기록 요약이 포함된 세션 체크포인트입니다.

activeTurn

object (ActiveTurnInfo)

출력 전용입니다. 이 세션의 현재 실행 중인 차례의 첨부파일 정보입니다. 실행 중인 차례가 없으면 설정되지 않습니다.

touchedApps[]

string

출력 전용입니다. 기록 태그의 경우 이 세션에서 타겟팅하거나 변경한 앱(프로젝트 범위 세션만 해당)입니다. 형식: projects/{project}/locations/{location}/apps/{app}

AssistantMessage

어시스턴트 세션의 메시지입니다.

JSON 표현
{
  "role": string,
  "chunks": [
    {
      object (AssistantChunk)
    }
  ],
  "eventTime": string,
  "attachedGcsUris": [
    string
  ]
}
필드
role

string

필수 항목입니다. 대화 내 역할('user' 또는 'model')입니다.

chunks[]

object (AssistantChunk)

선택사항입니다. 메시지 콘텐츠(청크)입니다.

eventTime

string (Timestamp format)

필수 항목입니다. 메일이 전송되거나 수신된 시점의 타임스탬프입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

attachedGcsUris[]

string

선택사항입니다. 이 차례에 사용자가 업로드한 파일의 Cloud Storage URI입니다. 이렇게 하면 세션 기록 UI에서 첨부파일을 유지하고 렌더링할 수 있습니다. 예: 'gs://cxas-transient-uploads/uuid/prd.pdf'

AssistantChunk

어시스턴트 메시지의 데이터 청크입니다.

JSON 표현
{
  "createTime": string,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "text": string,
  "thought": string,
  "payload": {
    object
  },
  "typedPayload": {
    object (TypedPayload)
  }
  // End of mutually exclusive fields.
}
필드
createTime

string (Timestamp format)

선택사항입니다. 청크가 생성되거나 내보내진 타임스탬프입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

청크의 데이터입니다. 다음은 상호 배타적인 필드 목록입니다. 응답에서 최대 하나의 필드가 설정됩니다.
text

string

선택사항입니다. 텍스트 데이터.

thought

string

선택사항입니다. 모델에서 생성된 사고입니다.

payload

object (Struct format)

선택사항입니다. 품질 보고서, 상담사 버전 이름, 추천 응답 등 구조화된 응답이 포함된 페이로드입니다.

typedPayload

object (TypedPayload)

선택사항입니다. 구조화된 응답이 포함된 입력된 페이로드입니다.

상호 배타적 필드의 끝입니다.

TypedPayload

유형이 있는 페이로드입니다. 어시스턴트 기록(AssistantChunk) 및 스트리밍 typedPayload 이벤트에서 사용됩니다. assistant_service.proto와 session_service.proto 모두에 필요하므로 여기에 있습니다.

JSON 표현
{
  "displayName": string,
  "type": string,
  "value": {
    object
  },
  "metadata": {
    object
  }
}
필드
displayName

string

필수 항목입니다. 페이로드의 표시 이름입니다.

type

string

필수 항목입니다. 페이로드 유형입니다.

value

object (Struct format)

필수 항목입니다. 페이로드의 값입니다.

metadata

object (Struct format)

선택사항입니다. 페이로드의 메타데이터입니다.

AssistantSessionState

어시스턴트 세션의 상태입니다.

열거형
ASSISTANT_SESSION_STATE_UNSPECIFIED 기본값입니다. 이 값은 상태가 지정되지 않은 경우에 사용됩니다.
PROCESSING 어시스턴트 에이전트가 요청을 장기 실행 작업으로 처리하고 있습니다.
IDLE 어시스턴트 에이전트가 유휴 상태이며 대기 중인 요청이나 응답이 없습니다.
PENDING_REVIEW 어시스턴트 에이전트가 장기 실행 작업 처리를 완료했으며 사용자에게 제공할 대답이 준비되었습니다.

UserResponseSuggestions

어시스턴트 에이전트의 추천 사용자 응답입니다.

JSON 표현
{
  "suggestions": [
    string
  ]
}
필드
suggestions[]

string

필수 항목입니다. 어시스턴트가 사용자 응답을 추천했습니다. 어시스턴트와 상호작용하는 방법에 관한 사용자 추천입니다.

AssistantSessionArtifact

세션 내에서 어시스턴트가 생성한 문서 아티팩트로, 고객의 Cloud Storage 버킷에 파일로 저장됩니다.

JSON 표현
{
  "id": string,
  "displayName": string,
  "gcsUri": string,
  "mimeType": string,
  "createTime": string,
  "turnIndex": integer
}
필드
id

string

출력 전용입니다. 세션 내 아티팩트의 고유 식별자입니다.

displayName

string

출력 전용입니다. 사용자에게 표시되는 파일 이름입니다(예: 'hotel_booking_tdd.md').

gcsUri

string

출력 전용입니다. 아티팩트 콘텐츠를 보유하는 Cloud Storage 객체입니다. 예: 'gs://{project}-agent-assist-artifacts/agent-assist-generated/1_tdd.md'

mimeType

string

출력 전용입니다. 아티팩트 콘텐츠의 IANA 미디어 유형입니다(예: 'text/markdown').

createTime

string (Timestamp format)

출력 전용입니다. 아티팩트가 유지된 시간입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

turnIndex

integer

출력 전용입니다. 기록이 복원될 때 아티팩트 칩을 배치하기 위해 아티팩트를 생성한 차례의 [AssistantSession.messages] 에 있는 메시지의 색인입니다.

SessionCheckpoint

세션 제목 및 UI에 대한 추론된 사용자 의도가 포함된 세션 체크포인트입니다.

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

string

세션의 추론된 사용자 목표 또는 주제입니다(예: '이커머스 지원 에이전트 빌드').

ActiveTurnInfo

현재 실행 중이거나 클라이언트에서 연결이 끊겼거나 다른 서버 태스크에서 선택하기 위해 대기 중인 세션 차례의 실시간 연결 정보입니다.

JSON 표현
{
  "turnId": string,
  "status": enum (ActiveTurnInfo.Status),
  "startTime": string,
  "lastProgressTime": string,
  "orphanDeadlineTime": string
}
필드
turnId

string

차례를 식별합니다. 스트리밍 API의 재개 스냅샷에서 에코됩니다.

status

enum (ActiveTurnInfo.Status)

현재 첨부파일 상태입니다.

startTime

string (Timestamp format)

출력 전용입니다. 차례가 시작된 시간입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

lastProgressTime

string (Timestamp format)

출력 전용입니다. 차례가 마지막으로 진행 상황을 유지한 시간입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

orphanDeadlineTime

string (Timestamp format)

출력 전용입니다. 클라이언트가 연결되지 않은 경우 차례가 종료되는 시점입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

ActiveTurnInfo.Status

실행 중인 차례가 현재 클라이언트 및 서버 작업과 어떻게 관련되는지 보여줍니다.

열거형
STATUS_UNSPECIFIED 지정되지 않음.
RUNNING 하나 이상의 클라이언트가 연결된 상태에서 차례가 실행 중입니다.
DISCONNECTED 연결된 클라이언트 없이 차례가 실행되고 있습니다.
RESUMING 차례가 수령을 위해 대기 중입니다. 다음 연결에서 계속됩니다.
ABANDONED 차례의 서버 임대가 만료되었으며 이를 구동하는 태스크가 없습니다. 다음 읽기에서 커밋된 부분으로 봉인합니다. 연결할 수 없습니다.

메서드

cancelAssistantTurn

어시스턴트 세션의 진행 중인 차례를 취소합니다(있는 경우). 스트림과 분리되어 실행 중인 차례에 대한 명시적인 사용자 중지입니다.

create

지정된 앱에서 새 어시스턴트 세션을 만듭니다.

delete

지정된 어시스턴트 세션을 삭제합니다.

get

지정된 어시스턴트 세션의 세부정보를 가져옵니다.

list

지정된 앱의 모든 어시스턴트 세션을 나열합니다.

streamChatAiAssistant

지정된 어시스턴트 세션에 대해 AI 어시스턴트인 Arc를 스트리밍 방식으로 실행합니다.