Comece a usar recomendações de multimédia

Pode criar rapidamente uma app de recomendações de multimédia de última geração. As recomendações de multimédia permitem que os seus públicos-alvo descubram conteúdo mais personalizado, como o que ver ou ler a seguir, com resultados de qualidade Google personalizados por objetivos de otimização.

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 seu catálogo de conteúdo multimédia e eventos do utilizador para o Vertex AI Search e preparar um modelo de recomendação de filmes personalizado. O conjunto de dados MovieLens contém um catálogo de filmes (documentos) e classificações de filmes dos utilizadores (eventos do utilizador).

Neste tutorial, vai preparar um modelo de recomendação do tipo Outros utilizadores também gostaram, otimizado para a taxa de cliques (CTR). Após a preparação, o modelo pode recomendar filmes com base num ID do utilizador e num filme inicial.

Para cumprir os requisitos mínimos de dados do modelo, cada classificação positiva de um filme (4 ou superior) é tratada como um evento view_item.

Tempo estimado para concluir este tutorial:

  • Passos iniciais para começar a preparar o modelo: cerca de 1,5 horas.
  • A aguardar a preparação do modelo: ~24 horas. (Prepare o modelo)
  • Avaliar as previsões do modelo e fazer a limpeza: ~30 minutos. (Pré-visualizar recomendações)

Se concluiu o tutorial Começar a usar a pesquisa de multimédia e ainda tem 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 recomendações de conteúdo multimédia.

Objetivos

  • Saiba como importar documentos multimédia e dados de eventos do utilizador do BigQuery para a Pesquisa da Vertex AI.
  • Prepare e avalie modelos de recomendações.

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

    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 recomendações de multimédia. As recomendações de multimédia requerem dados de eventos do utilizador para criar um modelo. Para este guia, vai criar eventos view-item falsos 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 definido pela Google:

      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.

    Crie uma app para recomendações de conteúdo multimédia

    Os procedimentos nesta secção explicam como criar e implementar uma app de recomendações 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 Recomendações de multimédia, clique em Criar.

    4. No campo Nome da app, introduza um nome para a sua app, como quickstart-media-recommendations. O ID da app é apresentado por baixo do nome da app.

    5. Em Tipo de recomendações, certifique-se de que a opção Outras que podem interessar-lhe está selecionada.

    6. Em Objetivo da empresa, certifique-se de que a opção Taxa de cliques (CTR) está selecionada.

    7. Clique em Continuar.

    8. Crie um arquivo de dados.

      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.

    9. Selecione o arquivo de dados que acabou de criar e, de seguida, clique em Criar para criar a sua app.

    Importar dados

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

    Importe documentos

    Importe o documento movies_view criado na secção Crie vistas do BigQuery para o seu repositório de dados quickstart-media-data-store.

    1. Em Origens nativas na página Importar documentos, selecione BigQuery.

    2. Introduza o nome da moviesvisualização do BigQuery que criou e clique em Importar.

      PROJECT_ID.movielens.movies_view
      
    3. 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

    Importe os registos user_events criados na secção Criar vistas do BigQuery para o seu repositório de dados.

    1. No separador Eventos, clique em Importar eventos.

    2. Em Origens nativas na página Importar documentos, selecione BigQuery.

    3. Introduza o nome da vista do user_eventsBigQuery que criou e clique em Importar.

      PROJECT_ID.movielens.user_events
      
    4. Aguarde até que, pelo menos, um milhão de eventos tenham sido importados antes de avançar para o passo seguinte, de modo a cumprir os requisitos de dados para preparar um novo modelo.

      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.

    5. Para ver se os requisitos foram cumpridos, aceda ao separador Qualidade dos dados > Requisitos. Mesmo depois de os eventos do utilizador terem sido importados, pode demorar algum tempo até que o separador Requisitos atualize o respetivo estado para Requisitos de dados cumpridos.

    Prepare o modelo de recomendações

    1. Aceda à página Configurações.

    2. Clique no separador Publicação. Já foi criada uma configuração de publicação.

      Se quiser ajustar as definições de rebaixamento de recomendações ou diversificação de resultados, pode fazê-lo nesta página.

    3. Clique no separador Formação.

      Depois de cumprir os requisitos de dados, o modelo começa a ser preparado automaticamente. Pode ver o estado da preparação e da otimização nesta página.

      O modelo pode demorar alguns dias a ser treinado e ficar pronto para receber consultas. O campo Pronto para consultar indica Sim quando o processo estiver concluído. Tem de atualizar a página para ver a alteração de Não para Sim.

    Pré-visualize recomendações

    Depois de o modelo estar pronto para consulta:

    1. No menu de navegação, clique em Pré-visualizar.

    2. Clique no campo ID do documento. É apresentada uma lista de IDs de documentos.

    3. Introduza um ID de documento inicial (filme), como 4993 para "O Senhor dos Anéis: A Irmandade do Anel (2001)".

      Introduzir ID

    4. Selecione o nome da configuração de publicação no menu pendente.

    5. Clique em Receber recomendações. É apresentada uma lista de documentos recomendados.

    Implemente a sua app para dados estruturados

    Não existe nenhum widget de recomendações para implementar a sua app. Para testar a app antes da implementação:

    1. Aceda à página Dados, separador Documentos e copie o ID de um documento.

    2. Aceda à página Integração. Esta página inclui um comando de exemplo para o método servingConfigs.recommend na API REST.

    3. Cole o ID do documento que copiou anteriormente no campo ID do documento.

    4. Deixe o campo User Pseudo ID tal como está.

    5. Copie o pedido de exemplo e execute-o no Cloud Shell.

    Para obter ajuda na integração da app de recomendações na sua app Web, consulte os exemplos de código em Receba recomendações de multimédia.

    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 a pesquisa de multimédia no tutorial Comece a usar a pesquisa 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 o artigo Elimine uma app.
    4. Siga os passos em Desative a Pesquisa da 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?