Crie uma app de pesquisa

Esta página descreve como criar uma app de pesquisa.

Crie uma app

Consola

Para criar uma app de pesquisa através da Google Cloud consola, siga estes passos:

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

    Aplicações de IA

  2. Na página Apps, clique em Criar app.

  3. Na página Criar app, em Pesquisa no site com o modo de IA, clique em Criar.

  4. Decida se quer funcionalidades Enterprise para esta app e, em seguida, clique no botão para as ativar ou desativar. A ativação das funcionalidades da edição Enterprise é necessária para aceder a funcionalidades como a pesquisa de Websites e a escolha de uma região para a sua app. As funcionalidades da edição Enterprise implicam custos adicionais. Para mais informações, consulte as funcionalidades da edição Enterprise.

  5. Decida se quer funcionalidades de MDIs avançadas para esta app e, em seguida, clique no botão para as ativar ou desativar. A ativação das funcionalidades de MDIs avançadas é necessária para aceder a funcionalidades como resumos de pesquisa ou pesquisa com seguimentos. Para mais informações, consulte o artigo Funcionalidades avançadas do MDG.

  6. No campo Nome da sua app, introduza um nome para a app.

  7. No campo Nome externo da sua empresa ou organização, introduza o nome comum da sua empresa ou organização. Evite sufixos como Inc ou LLC. Este campo ajuda o MDG a identificar a empresa que a app representa.

  8. Selecione uma localização para a sua app. As funcionalidades empresariais têm de estar ativadas para escolher uma localização. A Google recomenda que use a opção predefinida, global (Global), a menos que tenha um motivo para restringir os seus dados a uma geografia específica.

  9. Clique em Continuar.

  10. Para estabelecer ligação a um arquivo de dados, na página Arquivos de dados, selecione um arquivo de dados que criou anteriormente ou crie um novo arquivo de dados.

    Escolha uma das seguintes opções:

    • Selecione um arquivo de dados existente: se anexar apenas um arquivo de dados, não pode removê-lo nem adicionar outros arquivos de dados à app mais tarde. Anexar várias lojas de dados permite-lhe atualizar as lojas de dados anexadas mais tarde, mas a app requer sempre, pelo menos, duas lojas de dados.
    • Crie um novo repositório de dados e carregue dados para o mesmo:
      1. Clique em Criar armazeno de dados e siga os passos na página Crie um novo armazeno de dados.
      2. Escolha o novo arquivo de dados e clique em Selecionar. Para mais informações, consulte o artigo Crie um arquivo de dados de pesquisa.

REST

Antes de usar a linha de comandos para criar uma app, tem de ter um arquivo de dados existente. Se não tiver um repositório de dados, crie um seguindo os passos em Crie um repositório de dados e carregue dados para a Pesquisa de IA Vertex.

Para usar o método engines.create para criar uma app de pesquisa a partir da linha de comandos, siga estes passos:

  1. Encontre o ID da loja de dados. Se já tiver o ID do armazenamento de dados, avance para o passo seguinte.

    1. Na Google Cloud consola, aceda à página Aplicações de IA e, no menu de navegação, clique em Armazenamentos de dados.

      Aceda à página Armazenamentos de dados

    2. Clique no nome do seu arquivo de dados.

    3. Na página Dados da sua loja de dados, obtenha o ID da loja de dados.

  2. Crie uma app de pesquisa e associe-a a um repositório de dados. Um arquivo de dados só pode ser anexado a uma app e não pode ser removido da app posteriormente.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines?engineId=APP_ID" \
    -d '{
      "displayName": "APP_DISPLAY_NAME",
      "dataStoreIds": ["DATA_STORE_ID"],
      "solutionType": "SOLUTION_TYPE_SEARCH",
      "industryVertical": "GENERIC",
      "searchEngineConfig": {
         "searchTier": "SEARCH_TIER",
         "searchAddOns": ["SEARCH_ADD_ON"]
       }
    }'
    

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto Google Cloud .
    • APP_ID: o ID da app do Vertex AI Search que quer criar.
    • APP_DISPLAY_NAME: o nome a apresentar da app Vertex AI Search que quer criar.
    • DATA_STORE_ID: o ID de um arquivo de dados do Vertex AI Search existente que quer adicionar à app Vertex AI Search.
    • SEARCH_TIER: o nível de pesquisa pode ser SEARCH_TIER_STANDARD ou SEARCH_TIER_ENTERPRISE. SEARCH_TIER_ENTERPRISE é necessário para aceder a funcionalidades como a pesquisa de Websites e a escolha de uma região para a sua app. As funcionalidades da edição Enterprise incorrem em custos adicionais. Para mais informações, consulte as funcionalidades da edição Enterprise.
    • SEARCH_ADD_ON: se quiser funcionalidades avançadas de MDIs para esta app, especifique SEARCH_ADD_ON_LLM. As funcionalidades avançadas do MDG incluem resumos de pesquisa e pesquisa com seguimentos.

      Se não quiser funcionalidades de MDG avançadas, especifique SEARCH_ADD_ON_UNSPECIFIED ou remova o campo searchAddOns.

      Para mais informações, consulte o artigo Funcionalidades avançadas do MDG.

Python

Para mais informações, consulte a documentação de referência da API Python de aplicações de IA.

Para se autenticar em aplicações de IA, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.

from typing import List

from google.api_core.client_options import ClientOptions
from google.cloud import discoveryengine_v1 as discoveryengine

# TODO(developer): Uncomment these variables before running the sample.
# project_id = "YOUR_PROJECT_ID"
# location = "YOUR_LOCATION" # Values: "global"
# engine_id = "YOUR_ENGINE_ID"
# data_store_ids = ["YOUR_DATA_STORE_ID"]


def create_engine_sample(
    project_id: str, location: str, engine_id: str, data_store_ids: List[str]
) -> str:
    #  For more information, refer to:
    # https://cloud.google.com/generative-ai-app-builder/docs/locations#specify_a_multi-region_for_your_data_store
    client_options = (
        ClientOptions(api_endpoint=f"{location}-discoveryengine.googleapis.com")
        if location != "global"
        else None
    )

    # Create a client
    client = discoveryengine.EngineServiceClient(client_options=client_options)

    # The full resource name of the collection
    # e.g. projects/{project}/locations/{location}/collections/default_collection
    parent = client.collection_path(
        project=project_id,
        location=location,
        collection="default_collection",
    )

    engine = discoveryengine.Engine(
        display_name="Test Engine",
        # Options: GENERIC, MEDIA, HEALTHCARE_FHIR
        industry_vertical=discoveryengine.IndustryVertical.GENERIC,
        # Options: SOLUTION_TYPE_RECOMMENDATION, SOLUTION_TYPE_SEARCH, SOLUTION_TYPE_CHAT, SOLUTION_TYPE_GENERATIVE_CHAT
        solution_type=discoveryengine.SolutionType.SOLUTION_TYPE_SEARCH,
        # For search apps only
        search_engine_config=discoveryengine.Engine.SearchEngineConfig(
            # Options: SEARCH_TIER_STANDARD, SEARCH_TIER_ENTERPRISE
            search_tier=discoveryengine.SearchTier.SEARCH_TIER_ENTERPRISE,
            # Options: SEARCH_ADD_ON_LLM, SEARCH_ADD_ON_UNSPECIFIED
            search_add_ons=[discoveryengine.SearchAddOn.SEARCH_ADD_ON_LLM],
        ),
        # For generic recommendation apps only
        # similar_documents_config=discoveryengine.Engine.SimilarDocumentsEngineConfig,
        data_store_ids=data_store_ids,
    )

    request = discoveryengine.CreateEngineRequest(
        parent=parent,
        engine=engine,
        engine_id=engine_id,
    )

    # Make the request
    operation = client.create_engine(request=request)

    print(f"Waiting for operation to complete: {operation.operation.name}")
    response = operation.result()

    # After the operation is complete,
    # get information from operation metadata
    metadata = discoveryengine.CreateEngineMetadata(operation.metadata)

    # Handle the response
    print(response)
    print(metadata)

    return operation.operation.name

Terraform

Para saber como aplicar ou remover uma configuração do Terraform, consulte os comandos básicos do Terraform. Para mais informações, consulte a Terraform documentação de referência do fornecedor.

Para criar uma app de pesquisa com o Terraform, consulte discovery_engine_search_engine.

O que se segue?