- Recurso: AssistantSession
- AssistantMessage
- AssistantChunk
- TypedPayload
- AssistantSessionState
- UserResponseSuggestions
- AssistantSessionArtifact
- SessionCheckpoint
- ActiveTurnInfo
- ActiveTurnInfo.Status
- Métodos
Recurso: AssistantSession
Uma sessão do assistente representa uma conversa entre um usuário e o agente assistente.
| Representação JSON |
|---|
{ "name": string, "requestor": string, "messages": [ { object ( |
| Campos | |
|---|---|
name |
Obrigatório. Identificador. O identificador exclusivo da sessão. Formato: |
requestor |
Apenas saída. O usuário que iniciou a sessão. |
messages[] |
Opcional. Histórico de mensagens na sessão. |
state |
Apenas saída. O status da sessão do assistente. |
createTime |
Apenas saída. A hora em que a sessão do assistente foi criada. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
updateTime |
Apenas saída. A hora em que a sessão do assistente foi atualizada pela última vez. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
userResponseSuggestions |
Apenas saída. Respostas sugeridas do usuário pelo agente assistente. |
displayName |
Opcional. O nome de exibição da sessão do assistente. |
artifacts[] |
Apenas saída. Artefatos de documentos (por exemplo, TDDs gerados em markdown) produzidos pelo assistente nesta sessão. Apenas ponteiros. O conteúdo do arquivo fica no bucket do Cloud Storage do cliente. |
sessionCheckpoint |
Apenas saída. Ponto de verificação da sessão que contém a intenção do usuário e o resumo do histórico contínuo. |
activeTurn |
Apenas saída. Informações de anexo para a vez em execução desta sessão. Não definido quando nenhuma curva está em execução. |
touchedApps[] |
Apenas saída. Apps que essa sessão segmentou ou mudou (somente sessões com escopo de projeto), para tags de histórico. Formato: |
AssistantMessage
Uma mensagem em uma sessão do assistente.
| Representação JSON |
|---|
{
"role": string,
"chunks": [
{
object ( |
| Campos | |
|---|---|
role |
Obrigatório. Função na conversa "usuário" ou "modelo". |
chunks[] |
Opcional. Conteúdo da mensagem como blocos. |
eventTime |
Obrigatório. Carimbo de data/hora de quando a mensagem foi enviada ou recebida. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
attachedGcsUris[] |
Opcional. URIs do Cloud Storage para arquivos enviados pelo usuário durante essa rodada. Isso permite que os anexos sejam mantidos e renderizados na UI do histórico de sessões. Exemplo: "gs://cxas-transient-uploads/uuid/prd.pdf" |
AssistantChunk
Um bloco de dados em uma mensagem do assistente.
| Representação 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 ( |
| Campos | |
|---|---|
createTime |
Opcional. Carimbo de data/hora de quando o bloco foi criado ou emitido. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
| Dados no bloco. Confira a seguir uma lista de campos mutuamente exclusivos. No máximo um dos campos será definido em uma resposta: | |
text |
Opcional. Dados de texto. |
thought |
Opcional. Pensamento gerado pelo modelo. |
payload |
Opcional. Payload que contém respostas estruturadas, como o relatório de qualidade, o nome da versão do agente, as respostas sugeridas etc. |
typedPayload |
Opcional. Payload digitado que contém respostas estruturadas. |
| Fim dos campos mutuamente exclusivos. | |
TypedPayload
Payload com um tipo. Usado pelo histórico do assistente (AssistantChunk) e pelo evento de streaming typedPayload. Ele fica aqui porque tanto assistant_service.proto quanto session_service.proto precisam dele.
| Representação JSON |
|---|
{ "displayName": string, "type": string, "value": { object }, "metadata": { object } } |
| Campos | |
|---|---|
displayName |
Obrigatório. O nome de exibição do payload. |
type |
Obrigatório. O tipo do payload. |
value |
Obrigatório. O valor do payload. |
metadata |
Opcional. Os metadados do payload. |
AssistantSessionState
O status da sessão do assistente.
| Tipos enumerados | |
|---|---|
ASSISTANT_SESSION_STATE_UNSPECIFIED |
O valor padrão. Esse valor será usado se o status não for especificado. |
PROCESSING |
O agente assistente está processando a solicitação como uma tarefa de longa duração. |
IDLE |
O agente assistente está inativo e não tem solicitações ou respostas pendentes. |
PENDING_REVIEW |
O agente assistente terminou de processar uma tarefa de longa duração e tem uma resposta pronta para o usuário. |
UserResponseSuggestions
Respostas sugeridas do usuário pelo agente assistente.
| Representação JSON |
|---|
{ "suggestions": [ string ] } |
| Campos | |
|---|---|
suggestions[] |
Obrigatório. As respostas do usuário sugeridas pelo assistente. São sugestões para o usuário sobre como interagir com o assistente. |
AssistantSessionArtifact
Um artefato de documento gerado pelo assistente em uma sessão, armazenado como um arquivo no bucket do Cloud Storage do cliente.
| Representação JSON |
|---|
{ "id": string, "displayName": string, "gcsUri": string, "mimeType": string, "createTime": string, "turnIndex": integer } |
| Campos | |
|---|---|
id |
Apenas saída. O identificador exclusivo do artefato na sessão. |
displayName |
Apenas saída. O nome do arquivo mostrado ao usuário, por exemplo, "hotel_booking_tdd.md". |
gcsUri |
Apenas saída. O objeto do Cloud Storage que contém o conteúdo do artefato. Exemplo: "gs://{project}-agent-assist-artifacts/agent-assist-generated/1_tdd.md" |
mimeType |
Apenas saída. O tipo de mídia IANA do conteúdo do artefato, por exemplo, "text/markdown". |
createTime |
Apenas saída. Quando o artefato foi mantido. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
turnIndex |
Apenas saída. Índice da mensagem em [AssistantSession.messages] que produziu o artefato, para colocar o ícone do artefato quando o histórico for restaurado. |
SessionCheckpoint
Checkpoint da sessão que contém a intenção do usuário inferida para o título da sessão e UI.
| Representação JSON |
|---|
{ "userIntent": string } |
| Campos | |
|---|---|
userIntent |
Meta ou tópico inferido do usuário para a sessão (por exemplo, "Criar um agente de suporte de e-commerce"). |
ActiveTurnInfo
Informações de anexo em tempo real para uma sessão que está em execução, desconectada do cliente ou estacionada para ser retirada por outra tarefa do servidor.
| Representação JSON |
|---|
{
"turnId": string,
"status": enum ( |
| Campos | |
|---|---|
turnId |
Identifica a vez. É repetido por snapshots de retomada na API de streaming. |
status |
Status atual do anexo. |
startTime |
Apenas saída. Quando a vez começou. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
lastProgressTime |
Apenas saída. Quando o turno persistiu o progresso pela última vez. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
orphanDeadlineTime |
Apenas saída. Quando a vez será encerrada se nenhum cliente se conectar. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: |
ActiveTurnInfo.Status
Como a vez em andamento se relaciona com as tarefas do cliente e do servidor.
| Tipos enumerados | |
|---|---|
STATUS_UNSPECIFIED |
Não especificado. |
RUNNING |
A rodada está sendo executada com pelo menos um cliente conectado. |
DISCONNECTED |
A vez está sendo executada sem nenhum cliente anexado. |
RESUMING |
A vez é estacionada para retirada: a próxima anexação continua. |
ABANDONED |
A concessão do servidor da rodada expirou, e nenhuma tarefa está conduzindo-a. A próxima leitura a sela para uma parcial confirmada. Não é possível anexar. |
Métodos |
|
|---|---|
|
Cancela a vez em andamento da sessão do assistente, se houver: a interrupção explícita do usuário para uma vez em execução separada de qualquer stream. |
|
Cria uma nova sessão do assistente no app especificado. |
|
Exclui a sessão do assistente especificada. |
|
Recebe detalhes da sessão do assistente especificada. |
|
Lista todas as sessões do assistente no app especificado. |
|
Executa o Arc, o assistente de IA, para a sessão de assistente especificada em um modo de streaming. |