Visão geral da IA generativa
Neste documento, descrevemos as funções de inteligência artificial (IA) generativa compatíveis com o BigQuery. Essas funções aceitam entradas de linguagem natural e usam modelos da Vertex AI e modelos integrados do BigQuery pré-treinados.
Visão geral
O BigQuery oferece várias funções de IA para ajudar em tarefas como:
- Gerar conteúdo criativo.
- Analisar, detectar sentimentos e responder a perguntas sobre texto ou dados não estruturados, como imagens.
- Resuma as principais ideias ou impressões transmitidas pelo conteúdo.
- Extrair dados estruturados de texto.
- Classificar texto ou dados não estruturados em categorias definidas pelo usuário.
- Gere embeddings para pesquisar textos, imagens e vídeos semelhantes.
- Classifique as entradas para classificá-las por qualidade, semelhança ou outros critérios.
Há duas categorias principais de funções de IA para ajudar você a realizar essas tarefas:
Funções de IA de uso geral:essas funções oferecem controle total e transparência na escolha do modelo, do comando e dos parâmetros a serem usados.
Realizar inferência, como responder a perguntas sobre seus dados
AI.GENERATEé a função de inferência mais flexível, que permite analisar qualquer combinação de texto e dados não estruturados e gerar dados estruturados que correspondem ao seu esquema personalizado.Se você precisar de uma saída de um tipo específico, selecione uma das seguintes funções de inferência mais especializadas:
AI.GENERATE_BOOLAI.GENERATE_DOUBLEAI.GENERATE_INT
Gerar saída estruturada, como extrair nomes e endereços de texto não estruturado
AI.GENERATE, quando você especifica umoutput_schemaAI.GENERATE_TABLE
Gerar texto com uma versão de função com valor de tabela de
AI.GENERATEAI.GENERATE_TEXT
Gerar embeddings para pesquisa semântica e agrupamento
AI.EMBEDAI.GENERATE_EMBEDDINGAI.SIMILARITY
Funções de IA gerenciadas:essas funções têm uma sintaxe simplificada e são otimizadas para custo e qualidade. O BigQuery escolhe um modelo para você.
Filtrar dados com condições de linguagem natural
AI.IF
Classificar a entrada, como por qualidade ou sentimento
AI.SCORE
Classificar entradas em categorias definidas pelo usuário
AI.CLASSIFY
Funções de IA de uso geral
As funções de IA de uso geral oferecem controle total e transparência na escolha do modelo, do comando e dos parâmetros a serem usados. A saída inclui informações detalhadas sobre a chamada ao modelo, incluindo o status e a resposta completa do modelo, que pode incluir informações sobre a classificação de segurança ou citações.
Gerar dados estruturados
A geração de dados estruturados é muito semelhante à geração de texto, exceto que você pode formatar a resposta do modelo especificando um esquema SQL. Por exemplo, é possível gerar uma tabela que contenha o nome, o número de telefone, o endereço, o pedido e a cotação de preços de um cliente com base na transcrição de uma ligação.
Há duas maneiras de gerar dados estruturados:
A função
AI.GENERATEchama um endpoint da Vertex AI e pode gerar um valorSTRUCTcom seu esquema personalizado.Para testar, saiba como usar saída estruturada ao chamar a função
AI.GENERATE.A função
AI.GENERATE_TABLEchama um modelo remoto e é uma função com valor de tabela que gera uma tabela com seu esquema personalizado.Para criar dados estruturados, consulte Gerar dados estruturados usando a função
AI.GENERATE_TABLE.
Gerar valores de um tipo específico por linha
É possível usar funções escalares de IA generativa com modelos do Gemini para analisar dados em tabelas padrão do BigQuery. Os dados incluem dados de texto e não estruturados de colunas que contêm valores ObjectRef.
Para cada linha na tabela, essas funções geram uma saída que contém um tipo específico. Por exemplo, você pode analisar imagens de móveis para gerar texto para uma coluna design_type, de modo que o SKU dos móveis tenha uma descrição associada, como mid-century modern ou farmhouse.
As seguintes funções de IA estão disponíveis:
Ao usar a função AI.GENERATE com
modelos do Gemini compatíveis,
é possível usar a
capacidade de processamento provisionada da Vertex AI
para oferecer uma alta capacidade de processamento consistente para solicitações. Para mais informações, consulte
Usar a taxa de transferência provisionada da Vertex AI.
Gerar texto com uma TVF
É possível realizar tarefas de IA generativa usando a função com valor de tabela
GENERATE_TEXT, que usa modelos remotos no
BigQuery ML para referenciar modelos implantados
na ou hospedados na Vertex AI. É possível criar os seguintes tipos de modelos remotos:
- Modelos remotos em qualquer um dos modelos do Gemini em disponibilidade geral ou em pré-lançamento.
Modelos remotos em relação aos seguintes modelos de parceiros:
Depois de criar um modelo remoto, use a
função AI.GENERATE_TEXT
para interagir com ele:
Para modelos remotos baseados em modelos do Gemini, é possível fazer o seguinte:
Use a função
AI.GENERATE_TEXTpara gerar texto com base em um comando especificado em uma consulta ou extraído de uma coluna em uma tabela padrão. Ao especificar o comando em uma consulta, é possível fazer referência aos seguintes tipos de colunas de tabela:- Colunas
STRINGpara fornecer dados de texto. - Colunas
STRUCTque usam o formatoObjectRefpara fornecer dados não estruturados. Use a funçãoOBJ.GET_ACCESS_URLno comando para converter os valoresObjectRefemObjectRefRuntime.
- Colunas
Use a função
AI.GENERATE_TEXTpara analisar texto, imagem, áudio, vídeo ou PDF de uma tabela de objetos com um comando que você fornece como argumento de função.
Para todos os outros tipos de modelos remotos, use a função
AI.GENERATE_TEXTcom um comando fornecido em uma consulta ou de uma coluna em uma tabela padrão.
Use os tópicos a seguir para testar a geração de texto no BigQuery ML:
- Gerar texto usando um modelo do Gemini e a função
AI.GENERATE_TEXT. - Gerar texto usando um modelo Gemma e a função
AI.GENERATE_TEXT. - Analisar imagens com um modelo do Gemini.
- Gerar texto usando a função
AI.GENERATE_TEXTcom seus dados. - Ajustar um modelo usando seus dados.
É possível usar
embasamento
e
atributos de segurança
ao usar modelos do Gemini com a função AI.GENERATE_TEXT,
desde que você esteja usando uma tabela padrão para entrada. O embasamento permite que
Gemini usa informações adicionais da Internet para
gerar respostas mais específicas e factuais. Os atributos de segurança permitem que
Gemini filtram as respostas que retorna com base
que você especificar.
Em alguns modelos, é possível configurar o ajuste supervisionado, que permite treinar o modelo com seus próprios dados para que ele se adapte melhor ao seu caso de uso. Toda inferência ocorre na Vertex AI. Os resultados são armazenados no BigQuery.
Para modelos do Gemini compatíveis, use o Provisioned Throughput da Vertex AI para fornecer uma taxa de transferência alta e consistente para solicitações. Para mais informações, consulte Usar a taxa de transferência provisionada da Vertex AI.
Gerar embeddings
Um embedding é um vetor numérico de alta dimensão que representa uma determinada entidade, como um texto ou um arquivo de áudio. A geração de embeddings permite capturar a semântica dos dados de uma forma que facilita o raciocínio e a comparação.
Confira alguns casos de uso comuns para a geração de embeddings:
- Usar a geração aumentada de recuperação (RAG) para aumentar as respostas do modelo às consultas do usuário referenciando dados adicionais de uma fonte confiável. A RAG oferece melhor acurácia factual e consistência de resposta, além de acesso a dados mais recentes que os dados de treinamento do modelo.
- Realizando a pesquisa multimodal. Por exemplo, usar a entrada de texto para pesquisar imagens.
- Realizar pesquisa semântica para encontrar itens semelhantes para recomendações, substituição e remoção de registros duplicados.
- Como criar embeddings para usar com um modelo k-means para clustering.
Para mais informações sobre como gerar embeddings e usá-los para realizar essas tarefas, consulte a Introdução a embeddings e pesquisa vetorial.
Funções de IA gerenciadas
As funções gerenciadas de IA são criadas para automatizar tarefas rotineiras, como classificação, ordenação ou filtragem. Essas funções usam o Gemini e não exigem personalização. O BigQuery usa a engenharia de comando e seleciona o modelo e os parâmetros adequados para a tarefa específica, otimizando a qualidade e a consistência dos resultados.
Cada função retorna um valor escalar, como BOOL, FLOAT64 ou STRING, e não inclui informações de status adicionais do modelo.
As seguintes funções gerenciadas de IA estão disponíveis:
AI.IF: filtra texto ou dados multimodais, como em uma cláusulaWHEREouJOIN, com base em um comando. Por exemplo, você pode filtrar as descrições de produtos por aquelas que descrevem um item que seria um bom presente.AI.SCORE: Avalie as entradas com base em um comando para classificar as linhas por qualidade, similaridade ou outros critérios. É possível usar essa função em uma cláusulaORDER BYpara extrair os K itens principais de acordo com a pontuação. Por exemplo, você pode encontrar as 10 avaliações de usuários mais positivas ou negativas de um produto.AI.CLASSIFY: classifica o texto em categorias definidas pelo usuário. É possível usar essa função em uma cláusulaGROUP BYpara agrupar entradas de acordo com as categorias definidas. Por exemplo, você pode classificar os tíquetes de suporte de acordo com o assunto: faturamento, frete, qualidade do produto ou outro.
Para um tutorial com exemplos de como usar essas funções, consulte Realizar análise semântica com funções gerenciadas de IA.
Para um tutorial em notebook que mostra como usar funções de IA gerenciadas e de uso geral, consulte Análise semântica com funções de IA.
Locais
Os locais aceitos para modelos de geração e embedding de texto variam de acordo com o tipo e a versão do modelo que você usa. Para mais informações, consulte Locais.
Preços
Você recebe cobranças pelos recursos de computação usados para executar consultas em modelos. Os modelos remotos fazem chamadas para modelos da Vertex AI. Portanto, as consultas feitas a eles também geram cobranças da Vertex AI.
Para mais informações, consulte os preços do BigQuery ML.
Monitorar custos
As funções de IA generativa no BigQuery enviam solicitações para a Vertex AI, o que pode gerar custos. Para acompanhar os custos da Vertex AI gerados por um job executado no BigQuery, siga estas etapas:
- Confira seus relatórios de faturamento no Cloud Billing.
Use filtros para refinar os resultados.
Em "Serviços", selecione Vertex AI.
Para conferir as cobranças de um job específico, filtre por rótulo.
Defina a chave como
bigquery_job_id_prefixe o valor como o ID do job. Se o ID do job tiver mais de 63 caracteres, use apenas os primeiros 63. Se o ID do seu job tiver caracteres maiúsculos, mude para minúsculos. Você também pode associar trabalhos a um rótulo personalizado para facilitar a pesquisa depois.
Pode levar até 24 horas para que algumas cobranças apareçam no Cloud Billing.
A seguir
- Para uma introdução à IA e ao ML no BigQuery, consulte Introdução à IA e ao ML no BigQuery.
- Para mais informações sobre como realizar inferência em modelos de machine learning, consulte Visão geral da inferência de modelos.
- Para mais informações sobre as instruções e funções SQL compatíveis com modelos de IA generativa, consulte Jornadas do usuário completas para modelos de IA generativa.