Comece a usar a pesquisa de multimédia

Pode criar rapidamente uma app de pesquisa de multimédia de última geração. A pesquisa de multimédia permite que os seus públicos descubram conteúdo com resultados de qualidade Google.

Para obter informações gerais sobre o Vertex AI Search for media, consulte o artigo Introdução à pesquisa e às recomendações de conteúdo multimédia.

Neste tutorial de introdução, vai usar o conjunto de dados Movielens para demonstrar como carregar o catálogo de conteúdo multimédia para o Vertex AI Search. O conjunto de dados Movielens contém um catálogo de filmes (documentos).

Depois de carregar os dados de filmes, cria uma app de pesquisa e testa-a através da página de pré-visualização.

Se concluiu o tutorial Comece a usar as recomendações de multimédia e ainda tiver o arquivo de dados (nome sugerido quickstart-media-data-store), pode usar esse arquivo de dados em vez de criar outro. Neste caso, deve começar o tutorial em Crie uma app para a pesquisa de multimédia.

Tempo estimado para concluir este tutorial: ~1 hora.

Objetivos

  • Saiba como importar documentos multimédia para criar um repositório de dados multimédia.
  • Crie, configure e teste uma app de pesquisa.

Antes de seguir este tutorial, certifique-se de que concluiu os passos em Antes de começar.


Para seguir orientações passo a passo para esta tarefa diretamente na Google Cloud consola, clique em Orientar-me:

Visita guiada


Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the AI Applications, Cloud Storage, BigQuery APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the AI Applications, Cloud Storage, BigQuery APIs.

    Enable the APIs

  8. Prepare o conjunto de dados

    Nota: se concluiu o tutorial Comece a usar as recomendações de multimédia e ainda tem o arquivo de dados (nome sugerido: quickstart-media-data-store), avance para Crie uma app para pesquisa de multimédia.

    Usa o Cloud Shell para importar o conjunto de dados MovieLens e reestruturar o conjunto de dados para o Vertex AI Search for media.

    Abra o Cloud Shell

    1. Abra a Google Cloud consola.
    2. Selecione o seu projeto do Google Cloud .
    3. Tome nota do ID do projeto no cartão Informações do projeto na página do painel de controlo. Vai precisar do ID do projeto para os procedimentos seguintes.
    4. Clique no botão Ativar Cloud Shell na parte superior da consola. Uma sessão do Cloud Shell é aberta num novo frame na parte inferior daGoogle Cloud consola e apresenta um comando.

      Cloud Shell

    Importe o conjunto de dados

    O conjunto de dados MovieLens está disponível num contentor público do Cloud Storage para facilitar a importação.

    1. Execute o seguinte comando com o ID do seu projeto para definir o projeto predefinido para a linha de comandos.

      gcloud config set project PROJECT_ID
      
    2. Crie um conjunto de dados do BigQuery:

      bq mk movielens
      
    3. Carregue movies.csv para uma nova tabela do BigQuery movies:

      bq load --skip_leading_rows=1 movielens.movies \
        gs://cloud-samples-data/gen-app-builder/media-recommendations/movies.csv \
        movieId:integer,title,genres
      
    4. Carregue ratings.csv para uma nova tabela do BigQuery ratings:

      bq load --skip_leading_rows=1 movielens.ratings \
        gs://cloud-samples-data/gen-app-builder/media-recommendations/ratings.csv \
        userId:integer,movieId:integer,rating:float,time:timestamp
      

    Crie visualizações do BigQuery

    Neste passo, vai reestruturar o conjunto de dados do MovieLens para que siga o formato esperado para as bases de dados de multimédia.

    Para este guia, vai criar eventos de utilizador view-itemfalsos durante os últimos 90 dias a partir de classificações positivas (< 4).

    1. Crie uma vista que converta a tabela de filmes no esquema Document:

      bq mk --project_id=PROJECT_ID \
       --use_legacy_sql=false \
       --view '
        WITH t AS (
          SELECT
            CAST(movieId AS string) AS id,
            SUBSTR(title, 0, 128) AS title,
            SPLIT(genres, "|") AS categories
            FROM `PROJECT_ID.movielens.movies`)
          SELECT
            id, "default_schema" as schemaId, null as parentDocumentId,
            TO_JSON_STRING(STRUCT(title as title, categories as categories,
            CONCAT("http://mytestdomain.movie/content/", id) as uri,
            "2023-01-01T00:00:00Z" as available_time,
            "2033-01-01T00:00:00Z" as expire_time,
            "movie" as media_type)) as jsonData
          FROM t;' \
      movielens.movies_view
      

      Agora, a nova vista tem o esquema que a API AI Applications espera.

    2. Aceda à página BigQuery na Google Cloud consola.

      Aceda ao BigQuery

    3. No painel Explorador, expanda o nome do projeto, expanda o conjunto de dados movielens e clique em movies_view para abrir a página de consulta desta vista.

      Vista Produtos

    4. Aceda ao separador Explorador de tabelas.

    5. No painel Consulta gerada, clique no botão Copiar para consulta. O editor de consultas é aberto.

    6. Clique em Executar para ver os dados de filmes na vista que criou.

    7. Crie eventos de utilizador fictícios a partir de classificações de filmes executando o seguinte comando do Cloud Shell:

      bq mk --project_id=PROJECT_ID \
       --use_legacy_sql=false \
       --view '
       WITH t AS (
        SELECT
          MIN(UNIX_SECONDS(time)) AS old_start,
          MAX(UNIX_SECONDS(time)) AS old_end,
          UNIX_SECONDS(TIMESTAMP_SUB(
          CURRENT_TIMESTAMP(), INTERVAL 90 DAY)) AS new_start,
          UNIX_SECONDS(CURRENT_TIMESTAMP()) AS new_end
        FROM `PROJECT_ID.movielens.ratings`)
        SELECT
          CAST(userId AS STRING) AS userPseudoId,
          "view-item" AS eventType,
          FORMAT_TIMESTAMP("%Y-%m-%dT%X%Ez",
          TIMESTAMP_SECONDS(CAST(
            (t.new_start + (UNIX_SECONDS(time) - t.old_start) *
            (t.new_end - t.new_start) / (t.old_end - t.old_start))
          AS int64))) AS eventTime,
          [STRUCT(movieId AS id, null AS name)] AS documents,
        FROM `PROJECT_ID.movielens.ratings`, t
        WHERE rating >= 4;' \
        movielens.user_events
      

    Ative as aplicações de IA

    1. Na Google Cloud consola, aceda à página Aplicações de IA.

      Aplicações de IA

    2. Opcional: clique em Permitir que a Google faça uma amostragem seletiva da entrada do modelo e das respostas.

    3. Clique em Continuar e ativar a API.

    Os procedimentos nesta secção explicam como criar e implementar uma app de pesquisa de multimédia.

    1. Na Google Cloud consola, aceda à página Aplicações de IA.

      Aplicações de IA

    2. Clique em Criar app.

    3. Na página Criar app, em Pesquisa no catálogo de multimédia, clique em Criar.

    4. No campo Nome da sua app, introduza um nome para a sua app, como quickstart-media-search. O ID da app é apresentado abaixo do nome do motor.

    5. Clique em Continuar.

    6. Se concluiu o tutorial Comece a usar as recomendações de multimédia e ainda tiver o arquivo de dados (nome sugerido: quickstart-media-data-store), selecione-o, clique em Criar e avance para Pré-visualizar pesquisa.

    7. Se não tiver um repositório de dados que contenha o conjunto de dados movielens, crie um novo repositório de dados e selecione-o:

      1. Na página Armazenamentos de dados, clique em Criar armazenamento de dados.

      2. Introduza um nome a apresentar para o seu repositório de dados, como quickstart-media-data-store e, de seguida, clique em Criar.

      3. Selecione o arquivo de dados que acabou de criar e, de seguida, clique em Criar para criar a sua app. É feito o redirecionamento para a página Selecionar uma origem de dados.

    Importar dados

    Em seguida, importe os dados de filmes e eventos do utilizador que foram formatados anteriormente.

    Importe documentos

    1. Se não for automaticamente redirecionado para a página Selecione uma origem de dados:

      • Abra o separador Documentos.
      • Clique em Importar dados.
    2. Na página Selecione uma origem de dados, selecione BigQuery.

    3. Introduza o nome da visualização do movies BigQuery que criou e clique em Importar.

      PROJECT_ID.movielens.movies_view
      
    4. Aguarde até que todos os documentos sejam importados. Este processo deve demorar cerca de 15 minutos. Quando estiver concluída, devem existir 86537 documentos.

      Pode verificar o estado da operação de importação no separador Atividade. Quando a importação estiver concluída, o estado da operação de importação é alterado para Concluído.

    Importe eventos do utilizador

    1. Abra o separador Eventos.

    2. Clique em Importar eventos.

    3. Selecione BigQuery.

    4. Introduza o nome da visualização do user_events BigQuery que criou e clique em Importar.

      PROJECT_ID.movielens.user_events
      
    5. Pode avançar para o passo seguinte antes de os eventos serem importados, mas os resultados da pesquisa ainda não vão conter o conjunto de dados completo.

      Pode verificar o estado da operação no separador Atividade. O processo demora cerca de uma hora a concluir porque está a importar milhões de linhas.

    1. No menu de navegação, clique em Configurações.

    2. Na caixa Pesquisar aqui, escreva o nome de um filme, como "O Senhor dos Anéis".

    3. Repare que os resultados da pesquisa são relevantes para o título do filme introduzido.

    4. Nesta página, pode personalizar a forma como o widget de pesquisa apresenta as informações dos resultados da pesquisa. Consulte o artigo Configure os resultados para o widget de pesquisa para saber mais.

      Para apps de pesquisa de conteúdo multimédia, pode:

      Depois de fazer alterações, clique em Guardar e publicar para atualizar o widget.

    Implemente o widget de pesquisa

    1. No menu de navegação, clique em Integração.

    2. Certifique-se de que o separador Widget está selecionado.

    3. Selecione Com base em JWT ou OAuth como tipo de autorização do widget.

    4. No campo Domínio, introduza o nome do domínio da página Web onde vai colocar o widget. Por exemplo, se for copiar o widget para a página Web example.com/ai.html, introduza example.com como domínio.

    5. Clique em Adicionar e, de seguida, clique em Guardar.

    6. Copie o fragmento do código fornecido na secção Copie o seguinte código para a sua aplicação Web.

    7. No seu código base, gere um token de autorização.

    8. Para transmitir o token de autorização ao seu widget, use o fragmento do código "Definir token de autorização" fornecido na secção Copie o seguinte código para a sua aplicação Web e substitua o texto <JWT or OAuth token provided by you backend> pelo seu token de autorização.

    9. Para obter ajuda na integração da app de pesquisa na sua app Web, consulte os exemplos de código em Obtenha resultados da pesquisa.

    Limpar

    Para evitar incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.

    Pode reutilizar o arquivo de dados que criou para recomendações de multimédia no tutorial Comece a usar as recomendações de multimédia. Experimente esse tutorial antes de fazer este procedimento de limpeza.

    1. Para evitar custos Google Cloud desnecessários, use o Google Cloud console para eliminar o seu projeto se não precisar dele.
    2. Se criou um novo projeto para saber mais sobre as aplicações de IA e já não precisar do projeto, elimine-o.
    3. Se usou um Google Cloud projeto existente, elimine os recursos que criou para evitar incorrer em cobranças na sua conta. Para mais informações, consulte os artigos Elimine uma app, Limpe dados de um arquivo de dados e Elimine um arquivo de dados.
    4. Siga os passos em Desative a Pesquisa do Vertex AI.
    5. Se criou um conjunto de dados do BigQuery, elimine-o no Cloud Shell:

      bq rm --recursive --dataset movielens
      

    O que se segue?