Esta página mostra como criar uma app e combinar componentes, como streams de entrada, modelos para análise e armazéns para armazenamento, para utilização na plataforma de apps do Vertex AI Vision.
Para criar uma app, tem de considerar as suas origens de dados, a análise que quer fazer e como quer armazenar os resultados. Uma app de ponta a ponta pode ter diferentes formas consoante o seu exemplo de utilização. Consequentemente, a forma como cria uma app depende do seu objetivo.
Antes de começar, avalie o seu exemplo de utilização e objetivo na perspetiva da IA responsável e considere o impacto que os seus modelos e aplicações podem ter nos utilizadores finais quando algo corre mal. Leia mais sobre os primeiros passos na avaliação do seu exemplo de utilização para garantir a equidade. Certifique-se também de que a sua utilização do Vertex AI Vision está em conformidade com os Termos de Utilização da Google Cloud ou uma variante offline, e os termos de URL incorporados, como a Política de Utilização Aceitável da Google Cloud. Google CloudGoogle Cloud
À medida que cria a sua aplicação, tenha em atenção que as tecnologias de visão de IA têm o potencial de reforçar ou introduzir preconceitos injustos e de afetar os direitos humanos fundamentais. O desenvolvimento da sua aplicação deve envolver uma reflexão ética baseada nos valores da sua empresa e a devida diligência legal para o seu exemplo de utilização específico, incluindo exemplos de utilização de alto risco. Tal como acontece com todas as tecnologias, tem de considerar todas as leis e regulamentos aplicáveis que regem a sua utilização de tecnologias de IA/AM na região em que está a implementar a tecnologia. Os clientes são responsáveis pela diligência devida necessária para implementar exemplos de utilização considerados de alto risco numa região específica.
Crie uma nova aplicação
Antes de poder adicionar componentes, como uma stream ou modelos, a uma app, tem de criar a própria app. Todas as apps têm de conter o seguinte para serem implementadas:
- Um nó de entrada de stream (origem de dados).
- Pelo menos outro nó de componente, como um modelo ou um armazém.
Crie uma nova aplicação personalizada
Consola
Crie uma app na Google Cloud consola.
Abra o separador Aplicações do painel de controlo do Vertex AI Vision.
Clique no botão
Criar.Introduza um nome para a app e escolha a sua região. Regiões suportadas.
Clique em Criar.
Crie uma aplicação com um modelo
Consola
Crie uma app na Google Cloud consola.
Abra o separador Aplicações do painel de controlo do Vertex AI Vision.
Clique no botão
Criar.Introduza um nome para a app e escolha a sua região. Regiões suportadas.
Clique em Criar.
Na página do criador de aplicações, clique no nó Modelo de aplicação.
No painel de definições lateral, clique no botão Selecionar modelo.
Selecione um modelo no menu pendente.
Adicione uma entrada de stream
Uma aplicação tem de conter um nó de stream de vídeo. Não pode implementar a aplicação se não adicionar um nó Streams.
Se a sua aplicação não estiver implementada, a atualização da entrada de stream é aplicada automaticamente à aplicação. Se a sua app já estiver implementada, tem de anular a implementação e atualizá-la para que as alterações sejam aplicadas. Consulte a secção atualizar uma app para ver mais detalhes.
Consola
Adicione uma stream a uma app na Google Cloud consola.
Abra o separador Aplicações do painel de controlo do Vertex AI Vision.
Clique em Ver app para a sua app.
Na lista lateral de componentes, escolha Streams de vídeo na lista de Conetores. O nó de stream é adicionado ao gráfico da app e é aberto um menu de streams de vídeo lateral.
Selecione Adicionar streams de vídeo.
Se optar por
Selecionar a partir de streams existentes, selecione a stream existente e, de seguida, Adicionar streams.Se optar por
Registar novas streams, adicione um nome para a nova stream e selecione Adicionar streams.
REST
Para adicionar uma stream a uma app, envie um pedido POST através do método projects.locations.applications.addStreamInput.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT: o seu Google Cloud ID do projeto ou número do projeto.
- LOCATION_ID: A região onde está a usar o
Vertex AI Vision. Por exemplo:
us-central1
,europe-west4
. Veja as regiões disponíveis. - APPLICATION_ID: o ID da sua aplicação de destino.
- STREAM_ID: o ID da stream de destino.
Método HTTP e URL:
POST https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput
Corpo JSON do pedido:
{ "applicationStreamInputs": [ { "streamWithAnnotation": { "stream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID" } }, { "streamWithAnnotation": { "stream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID" } } ] }
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput"
PowerShell
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput" | Select-Object -Expand Content
Deve receber um código de estado de êxito (2xx) e uma resposta vazia.
Adicione entrada de stream com anotações de nós
Quando cria uma stream de entrada de aplicações, pode adicionar anotações à stream através da Vertex AI Vision API. Também pode adicionar anotações a um nó naGoogle Cloud consola.
Consola
O exemplo seguinte adiciona anotações disponíveis (STREAM_ANNOTATION_TYPE_ACTIVE_ZONE
e STREAM_ANNOTATION_TYPE_CROSSING_LINE
) a um modelo de contagem de ocupação.
Abra o separador Aplicações do painel de controlo do Vertex AI Vision.
Selecione Ver app junto ao nome da sua aplicação na lista.
Na página do criador de aplicações, selecione o modelo com entrada de stream ao qual quer adicionar anotações.
No painel de definições do modelo lateral, expanda a secção "Definições avançadas". Depois de expandir a secção, clique no botão Criar zonas/linhas ativas.
Na vista de galeria de streams, selecione uma stream de entrada para desenhar zonas ativas ou linhas.
Na vista do editor, escolha adicionar linhas com vários pontos ou adicionar polígono simples para adicionar anotações. Use o painel lateral para mudar o nome da zona ou da linha, eliminar zonas/linhas existentes ou inverter a direção da linha.
REST e linha de comandos
O código seguinte adiciona anotações de streams.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT: o seu Google Cloud ID do projeto ou número do projeto.
- LOCATION_ID: A região onde está a usar o
Vertex AI Vision. Por exemplo:
us-central1
,europe-west4
. Veja as regiões disponíveis. - APPLICATION_ID: o ID da sua aplicação de destino.
- STREAM_ID: o ID da stream de destino.
- NODE_NAME: o nome do nó de destino do gráfico de apps. Por exemplo,
builtin-occupancy-count
. - ANNOTATION_ID: o ID da anotação de destino.
- ANNOTATION_DISPLAYNAME: o nome a apresentar especificado pelo utilizador da anotação de destino.
- ANNOTATION_TYPE: um dos valores enum disponíveis. Este tipo tem de corresponder ao objeto
annotation_payload
,activeZone
oucrossingLine
. Os valores disponíveis são:STREAM_ANNOTATION_TYPE_UNSPECIFIED
STREAM_ANNOTATION_TYPE_ACTIVE_ZONE
STREAM_ANNOTATION_TYPE_CROSSING_LINE
normalizedVertices
: cada vértice é especificado por valores de coordenadas x e y. As coordenadas são valores flutuantes normalizados [0,1] relativos à imagem original; 0,0 é X_MIN ou Y_MIN, 1,0 é X_MAX ou Y_MAX.
Método HTTP e URL:
POST https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput
Corpo JSON do pedido:
{ "applicationStreamInputs": [ { "streamWithAnnotation": { "stream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID", "nodeAnnotations": [ { "node": "NODE_NAME", "annotations": [ { "id": "ANNOTATION_ID", "displayName": "ANNOTATION_DISPLAYNAME", "sourceStream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID", "type": ANNOTATION_TYPE, "activeZone": { "normalizedVertices": { "x": 0.07434944, "y": 0.18061674 }, "normalizedVertices": { "x": 0.64684016, "y": 0.16079295 }, "normalizedVertices": { "x": 0.6047088, "y": 0.92070484 }, "normalizedVertices": { "x": 0.1251549, "y": 0.76651984 } } } ] } ] } } ] }
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput"
PowerShell
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:addStreamInput" | Select-Object -Expand Content
Deve receber um código de estado de êxito (2xx) e uma resposta vazia.
Remova a entrada de stream
REST
Para remover uma stream de uma app, envie um pedido POST através do método projects.locations.applications.removeStreamInput.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT: o seu Google Cloud ID do projeto ou número do projeto.
- LOCATION_ID: A região onde está a usar o
Vertex AI Vision. Por exemplo:
us-central1
,europe-west4
. Veja as regiões disponíveis. - APPLICATION_ID: o ID da sua aplicação de destino.
- STREAM_ID: o ID da stream de destino.
Método HTTP e URL:
POST https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:removeStreamInput
Corpo JSON do pedido:
{ "targetStreamInputs": [ { "stream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID" }, { "stream": "projects/PROJECT/locations/LOCATION_ID/clusters/application-cluster-0/streams/STREAM_ID" } ] }
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:removeStreamInput"
PowerShell
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://visionai.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/applications/APPLICATION_ID:removeStreamInput" | Select-Object -Expand Content
Deve receber um código de estado de êxito (2xx) e uma resposta vazia.
Adicione um modelo do Vertex AI Vision pré-preparado
Depois de criar uma app, pode adicionar um modelo e associá-lo a streams, outros modelos ou um armazém de multimédia.
Existem dois tipos de modelos: modelos pré-preparados ou modelos preparados pelo utilizador. Da mesma forma, os modelos preparados pelo utilizador também podem ser de dois tipos: AutoML ou preparados de forma personalizada:
- Os modelos pré-preparados cumprem um objetivo específico, são preparados com dados generalizados e estão prontos a usar.
- Os modelos personalizados ou do AutoML preparados pelo utilizador requerem que identifique e forneça dados de exemplo e, em seguida, prepare modelos mais adequados ao seu exemplo de utilização exclusivo. Prepara estes modelos com o Vertex AI, um produto que oferece duas opções de preparação: modelos preparados com o AutoML e modelos preparados de forma personalizada. Consulte o artigo Escolha um método de preparação para mais informações.
Siga estas instruções para adicionar um modelo Vertex AI Vision pré-preparado ao seu gráfico de apps.
Consola
Abra o separador Aplicações do painel de controlo do Vertex AI Vision.
Selecione Ver app junto ao nome da sua aplicação na lista.
Na página do criador de aplicações, selecione o modelo que quer adicionar a partir da lista Modelos de IA. Cada modelo tem definições de configuração individuais.
Para associar este modelo a um nó de origem de entrada, selecione o nó de origem e selecione
Adicionar saída.Selecione o nó do modelo de IA recém-criado na lista de nós disponíveis.
Adicione um modelo do Vertex AI preparado pelo utilizador
Depois de criar uma app, pode adicionar um modelo e associá-lo a streams, outros modelos ou um armazém de multimédia.
Existem dois tipos de modelos: modelos pré-preparados ou modelos preparados pelo utilizador. Da mesma forma, os modelos preparados pelo utilizador também podem ser de dois tipos: AutoML ou preparados de forma personalizada:
- Os modelos pré-preparados cumprem um objetivo específico, são preparados com dados generalizados e estão prontos a usar.
- Os modelos personalizados ou do AutoML preparados pelo utilizador requerem que identifique e forneça dados de exemplo e, em seguida, prepare modelos mais adequados ao seu exemplo de utilização exclusivo. Prepara estes modelos com o Vertex AI, um produto que oferece duas opções de preparação: modelos preparados com o AutoML e modelos preparados de forma personalizada. Consulte o artigo Escolha um método de preparação para mais informações.
Adicione um modelo de streaming de deteção de objetos do Vertex AI AutoML
Use as instruções seguintes para adicionar um modelo de streaming de deteção de objetos do Vertex AI AutoML que prepara ao gráfico da sua app.
Antes de poder preparar um modelo do Vertex AI AutoML, tem de preparar os dados de deteção de objetos e criar um conjunto de dados.
Prepare um modelo para usar no Vertex AI Vision
Depois de criar um conjunto de dados com uma recolha representativa de dados no Vertex AI, pode preparar um modelo para usar no Vertex AI Vision.
Consola
Na Google Cloud consola, no painel de controlo do Vertex AI, aceda à página Conjuntos de dados.
Clique no nome do conjunto de dados que quer usar para formar o modelo e abrir a respetiva página de detalhes.
Se o seu tipo de dados usar conjuntos de anotações, selecione o conjunto de anotações que quer usar para este modelo.
Clique em Formar novo modelo.
Na página Preparar novo modelo, conclua os seguintes passos para o seu modelo de deteção de objetos de imagem do AutoML:
Na secção Método de preparação do modelo, escolha
AutoML.Na secção Escolha onde usar o modelo, selecione
Vertex AI Vision.Clique em Continuar.
Preencha os valores das secções Detalhes do modelo, Opções de preparação e Cálculo e preços. Consulte o artigo Prepare um modelo do AutoML (consolaGoogle Cloud ) para ver informações mais detalhadas.
Clique em Iniciar preparação.
A preparação do modelo pode demorar muitas horas, consoante a dimensão e a complexidade dos seus dados e o orçamento de preparação, se tiver especificado um. Pode fechar este separador e regressar a ele mais tarde. Vai receber um email quando o modelo tiver concluído o treino.
Adicione o modelo preparado à sua app
Depois de a preparação do modelo estar concluída, pode adicioná-lo à sua app Vertex AI Vision.
Consola
Abra o separador Aplicações do painel de controlo do Vertex AI Vision.
Selecione Ver app junto ao nome da sua aplicação na lista.
Na página do criador de aplicações, selecione Adicionar modelo do Vertex AI na lista de componentes laterais. Se selecionar esta opção, é aberto um menu lateral.
No menu Adicionar modelo do Vertex AI, deixe a opção
Importar um modelo com preparação do Vertex AI selecionada e, de seguida, escolha o modelo na lista de modelos do Vertex AI AutoML existentes.Depois de escolher o modelo a importar, selecione Adicionar modelo.
Depois de clicar no botão Adicionar modelo, é apresentado um modelo pendente no lado da página do criador de gráficos. Após alguns segundos, o modelo está pronto a ser usado.
Adicione um modelo personalizado da Vertex AI
Também pode importar modelos preparados de forma personalizada do Vertex AI para o Vertex AI Vision para usar na análise de dados. Estes modelos personalizados preparados têm de ter as seguintes propriedades:
- O modelo tem de ser sem estado, uma vez que a entrada do modelo são as imagens provenientes de diferentes instâncias da aplicação (streams) e podem estar desordenadas. Se precisar de processamento de streaming com estado, pode ter de manter os estados no seu próprio contentor.
- O tamanho da entrada do seu modelo está limitado a 1,5 MB. Consequentemente, o Vertex AI Vision tem de comprimir a imagem RGB original num formato com perdas, como JPG.
Siga as instruções abaixo para adicionar um modelo de vídeo personalizado do Vertex AI existente que treinou ao gráfico da app.
Para obter informações sobre como criar um modelo preparado de forma personalizada do Vertex AI com um contentor personalizado, consulte o artigo Use um contentor personalizado para a previsão.
Especifique um ficheiro YAML de instâncias
Quando adiciona um modelo preparado de forma personalizada da Vertex AI, tem de especificar um ficheiro YAML de instâncias (instances.yaml
) armazenado no Cloud Storage. Este ficheiro especifica a entrada esperada para o contentor do modelo.
A Vertex AI envia o pedido de previsão num formato:
{
"instances": [
<value>|<simple/nested list>|<object>,
...
]
}
Aqui, instances.yaml
define o esquema da carga útil. Para mais informações,
consulte
Obtenha previsões online a partir de modelos personalizados.
O Vertex AI Vision só suporta modelos preparados de forma personalizada com exatamente uma entrada de previsão denominada. Este tipo de entrada tem de ser uma string JPEG codificada. O esquema da entrada de previsão tem de ser especificado com o ficheiro YAML do esquema de instâncias. Este ficheiro YAML de esquema tem de estar no formato de um objeto de esquema OpenAPI.
Por exemplo, o esquema seguinte recebe o pedido com a imagem codificada num campo denominado image_bytes
:
properties:
image_bytes:
type: string
O seu modelo personalizado recebe a entrada de previsão no seguinte formato:
{
"instances": [
{
"image_bytes" : {
"b64": "BASE64_ENCODED_IMAGE_BYTES"
}
}
]
}
Antes de importar o modelo para o Vertex AI Vision, verifique se o modelo funciona corretamente com esta entrada.
Especifique um ficheiro YAML de previsões
Quando adiciona um modelo preparado personalizado da Vertex AI, pode especificar um ficheiro YAML de previsões (predictions.yaml
) armazenado no Cloud Storage. Este ficheiro
especifica o resultado do contentor do modelo.
Este ficheiro é opcional, mas recomendado para informar o Vertex AI Vision sobre a estrutura de saída do seu modelo. Por exemplo, o seguinte ficheiro
classification_1.0.0.yaml
descreve as informações de saída do modelo para um modelo de classificação de imagens:
title: Classification
type: object
description: >
The predicted AnnotationSpecs.
properties:
ids:
type: array
description: >
The resource IDs of the AnnotationSpecs that had been identified.
items:
type: integer
format: int64
enum: [0] # As values of this enum all AnnotationSpec IDs the Model
# was trained on will be populated.
displayNames:
type: array
description: >
The display names of the AnnotationSpecs that had been identified,
order matches the IDs.
items:
type: string
enum: [""] # As values of this enum all AnnotationSpec display_names
# the Model was trained on will be populated.
confidences:
type: array
description: >
The Model's confidences in correctness of the predicted IDs, higher
value means higher confidence. Order matches the Ids.
items:
type: number
format: float
minimum: 0.0
maximum: 1.0
Adicione o modelo personalizado
Use o exemplo seguinte para adicionar o modelo preparado de forma personalizada do Vertex AI à sua app.
Consola
Abra o separador Aplicações do painel de controlo do Vertex AI Vision.
Selecione Ver app junto ao nome da sua aplicação na lista.
Na página do criador de aplicações, selecione Adicionar modelo do Vertex AI na lista de componentes laterais. Se selecionar esta opção, é aberto um menu lateral.
No menu Adicionar modelo do Vertex AI, deixe a opção
Importar um modelo com preparação do Vertex AI selecionada e, de seguida, escolha o modelo na lista de modelos do Vertex AI AutoML existentes.Atribua um nome ao modelo.
Especifique o ficheiro YAML de instâncias no Cloud Storage que define o formato de uma única instância usada em pedidos de previsão e explicação.
Opcional: especifique o ficheiro YAML do esquema de previsões no Cloud Storage que define o formato de uma única previsão ou explicação.
Depois de fornecer o nome do modelo, as instâncias e as informações de previsões, selecione Adicionar modelo.
Depois de clicar no botão Adicionar modelo, é apresentado um modelo pendente no lado da página do criador de gráficos. Após alguns segundos, o modelo está pronto a ser usado.
Opcional. Anexe metadados da aplicação
Além dos bytes de imagem, tem a opção de definir
attach_application_metadata
para pedir à plataforma de apps Vertex AI Vision
que inclua os metadados da aplicação a serem enviados para o contentor personalizado.
Os metadados têm o seguinte esquema:
'appPlatformMetadata': {
'application': STRING;
'instanceId': STRING;
'node': STRING;
'processor': STRING;
}
Opcional. Adicione um tópico do Pub/Sub de configuração dinâmica
Para controlar dinamicamente a taxa de frames que o operador personalizado do Vertex envia
frames de vídeo para contentores personalizados do Vertex, pode criar um tópico do Pub/Sub. Adicione-o à secção Dynamic Configuration
das definições do nó.
Se o tópico Pub/Sub estiver configurado, a velocidade de frames inicial é 0. Durante o processamento de vídeo, pode enviar mensagens do Pub/Sub para o tópico do Pub/Sub no seguinte formato em tempo real para alterar a taxa de frames:
{
"stream_id": "input-stream-id",
"fps": 5,
}
O campo stream_id
deve corresponder ao ID da stream de entrada da aplicação.
Conta de serviço e autorizações
A credencial de serviço predefinida do contentor personalizado foi configurada para a conta de serviço pertencente à Google da plataforma de apps Vertex AI Vision.
Para aceder a outros Google Cloud
serviços a partir do contentor, conceda a autorização adequada a:
service-<var>PROJECT_NUMBER</var>@gcp-sa-visionai.iam.gserviceaccount.com
Opcional. Modele a notificação de eventos com funções do Cloud Run e o Pub/Sub
No Vertex AI Vision, os modelos recebem dados de multimédia de dispositivos como câmaras, executam previsões de IA nos dados e produzem anotações continuamente. Envia frequentemente esses dados processados para um destino de dados ("data sink"), como um armazém de multimédia ou o BigQuery, para mais tarefas analíticas. No entanto, pode ter um caso em que algumas anotações têm de ser processadas de forma diferente ou as necessidades de anotação são sensíveis ao tempo. As integrações com as funções do Cloud Run e o Pub/Sub ajudam a satisfazer estas necessidades.
Modelos suportados
Os seguintes modelos oferecem a geração de eventos de funções do Cloud Run e integrações de notificações de eventos do Pub/Sub:
- Modelo de estatísticas de ocupação
- Modelos preparados de forma personalizada do Vertex AI
Configure funções do Cloud Run para processar a saída do modelo
Para acionar notificações baseadas em eventos, primeiro, tem de configurar funções do Cloud Run para processar a saída do modelo e gerar eventos.
A sua função do Cloud Run liga-se ao modelo e ouve a respetiva saída
como ação de pós-processamento. A função do Cloud Run deve devolver um AppPlatformCloudFunctionResponse
. Os eventos
(appplatformeventbody
) são
enviados para o tópico Pub/Sub que configurar no passo seguinte.
Para ver uma função de exemplo do Cloud Run, consulte o artigo Ative a notificação de eventos do modelo com o Cloud Functions e o Pub/Sub.
Use as seguintes instruções para enviar o fluxo de saída do modelo para a sua função do Cloud Run:
Consola
Abra o separador Aplicações do painel de controlo do Vertex AI Vision.
Selecione
Ver app junto ao nome da sua aplicação na lista.Clique no modelo suportado para abrir o painel lateral de detalhes do modelo.
Na lista de pós-processamento da secção Notificação de eventos, selecione a sua função do Cloud Run existente ou crie uma nova.
Ative a notificação de eventos do modelo com o Pub/Sub
Depois de configurar as funções do Cloud Run para processar o resultado do modelo e gerar eventos, pode configurar a notificação de eventos com o Pub/Sub. Para ler mensagens de um tópico, também tem de escolher e criar uma subscrição do Pub/Sub.
Consola
Abra o separador Aplicações do painel de controlo do Vertex AI Vision.
Selecione
Ver app junto ao nome da sua aplicação na lista.Clique no modelo suportado para abrir o painel lateral de detalhes do modelo.
Na secção Notificação de eventos, selecione Configurar notificação de eventos.
Na janela de opção Configurar o Pub/Sub para notificações de eventos que é aberta, escolha o tópico Pub/Sub existente ou crie um novo.
No campo Frequência, defina um valor inteiro para o valor de frequência em segundos em que pode ser enviada uma notificação para o mesmo tipo de evento.
Clique em Configurar.
Associe a saída do modelo a um nó a jusante
Depois de criar um nó de modelo, pode ligar a respetiva saída a outro nó.
Consola
Abra o separador Aplicações do painel de controlo do Vertex AI Vision.
Selecione Ver app junto ao nome da sua aplicação na lista.
Clique num nó de modelo que produza dados no criador de gráficos de aplicações (por exemplo, o nó de modelo Occupancy Count).
No painel de definições lateral, clique no botão Adicionar saída.
Adicione uma nova saída e escolha um novo nó de saída para adicionar ou selecione um Nó disponível existente para enviar a saída.
Associe a saída a um destino de dados
Depois de criar a stream de carregamento de dados e adicionar os nós de processamento à sua app, tem de escolher para onde enviar os dados processados. Este destino de dados é o ponto final do gráfico da sua app que aceita dados de stream sem produzir dados de stream. O destino que escolher depende da forma como usa os dados de saída da app.

Pode associar os dados de saída da app aos seguintes destinos de dados:
Vision Warehouse: armazene dados de vídeo originais ou analisados que pode ver e consultar.
Para mais informações sobre o envio de dados de saída da app para um armazém do Vision, consulte o artigo Associe e armazene dados num armazém.
BigQuery: armazene dados no BigQuery para usar as respetivas capacidades de estatísticas offline.
Para mais informações sobre o envio de dados de saída da app para o BigQuery, consulte o artigo Associe e armazene dados no BigQuery.
Dados de streams em direto: se quiser um controlo mais detalhado para agir com base em estatísticas em tempo real, pode receber o resultado em direto da sua app.
Para mais informações sobre o streaming direto de dados de saída da app, consulte o artigo Ative a saída de streams em direto.
Atualize uma app
Apps não implementadas
Faça as modificações que quiser à app (como adicionar ou remover nós de componentes). O Vertex AI Vision armazena automaticamente as alterações.
O que se segue?
- Saiba como implementar a sua app para carregar e analisar dados em Implementar uma aplicação.
- Leia as instruções sobre como iniciar a ingestão de dados a partir da stream de entrada de uma app em Criar e gerir streams.
- Saiba como listar apps e ver as instâncias de uma app implementada em Gerir aplicações.
- Saiba como ler dados de entrada de apps a partir de uma stream de carregamento ou dados de saída de modelos analisados em Ler dados de stream.