Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
As funções de IA são funções internas que você pode usar para aplicar LLMs ou técnicas de pesquisa de última geração em dados armazenados em Azure Databricks para transformação e enriquecimento de dados. Eles podem ser executados a partir do Databricks SQL, notebooks, pipelines do Lakeflow e Workflows.
As funções de IA são simples de usar, rápidas e escalonáveis. Os analistas podem usá-los para aplicar inteligência de dados aos dados proprietários, enquanto engenheiros de dados, cientistas de dados e engenheiros de machine learning podem usá-los para criar pipelines de nível de produção em lote.
Quando você chama uma função de IA, sua consulta é executada no recurso computacional em que você a executa, como um SQL warehouse, notebook, cluster ou pipeline. Dependendo da função, a inferência do modelo pode rodar em infraestrutura gerenciada separadamente pelo Databricks, que é faturada além desse cálculo. Consulte Ver os custos das cargas de trabalho da Função de IA.
Requirements
- Funções de IA não estão disponíveis em warehouses SQL clássicos.
- É necessário o Databricks Runtime 15.4 LTS ou posterior. O Databricks Runtime 18.2 ou superior é recomendado para o melhor desempenho e acesso aos recursos mais recentes.
Tarefa específica e de finalidade geral
O AI Functions tem funções específicas de tarefa e de uso geral:
- Funções de IA específicas da tarefa – funções criadas com finalidade otimizadas para uma tarefa específica, como análise de documentos, extração de entidade, classificação e análise de sentimento. Essas funções são alimentadas por sistemas baseados em pesquisa e gerenciados pelo Azure Databricks. Algumas funções incluem experiências de interface do usuário. Consulte funções de IA específicas da tarefa para funções e modelos com suporte.
-
ai_query— A função de uso geral para flexibilidade de tarefa e modelo. Forneça um prompt e escolha qualquer API de Modelo Fundamental com suporte. Confira Usarai_query.
Para restringir quais funções de IA específicas para tarefas sua organização pode acessar, consulte as permissões do Unity Catalog para AI Functions.
Funções de IA específicas da tarefa
Funções específicas da tarefa são definidas para uma determinada tarefa, permitindo que você automatize transformações de rotina, como extração, tradução e classificação de entidades. O Databricks recomenda essas funções para começar porque elas invocam técnicas de pesquisa de última geração mantidas pelo Databricks e não exigem nenhuma personalização.
Consulte Analisar análises de clientes usando o AI Functions para obter um exemplo.
As funções a seguir são agrupadas por tarefa.
Processamento inteligente de documentos:
| Função | Descrição |
|---|---|
| ai_parse_document | Analise o conteúdo estruturado (texto, tabelas, descrições de figura) e layout de documentos não estruturados usando técnicas de pesquisa de última geração. |
| ai_extract | Extraia campos estruturados de documentos ou texto usando um esquema definido. |
| ai_classify | Classifique o texto de entrada de acordo com os rótulos que você fornece usando técnicas de pesquisa de última geração. |
| ai_prep_search (Beta) | Transforme documentos analisados ou texto simples e markdown em blocos prontos para busca, otimizados para pipelines de busca por IA e RAG. |
| ai_search (Beta) | Recupere documentos ranqueados e deduplicados e uma resposta fundamentada para uma consulta em linguagem natural sobre uma ou mais fontes de conhecimento. |
Transformar texto:
| Função | Descrição |
|---|---|
| ai_corrigir_gramática | Corrija erros gramaticais em textos usando um modelo de IA de última geração. |
| ai_translate | Traduza texto para um idioma alvo especificado usando um modelo de IA de última geração. |
| ai_summarize | Gerar um resumo do texto usando SQL e um modelo de IA de última geração. |
| ai_mask | Mascarar entidades especificadas no texto usando um modelo de IA de ponta. |
Analisar texto:
| Função | Descrição |
|---|---|
| ai_analyze_sentiment | Realize análise de sentimento no texto de entrada usando um modelo de IA de última geração. |
| ai_similarity | Compare duas strings e calcule a pontuação de similaridade semântica usando um modelo de IA de última geração. |
Gerar conteúdo. Para prompts personalizados ou um modelo específico, consulte Use ai_query:
| Função | Descrição |
|---|---|
| ai_gen | Responda a um prompt fornecido pelo usuário usando um modelo de IA de última geração. |
Previsão de séries temporais
| Função | Descrição |
|---|---|
| ai_forecast | Previsão de dados até um horizonte especificado. Essa função com valor de tabela foi projetada para extrapolar dados de série temporal no futuro. |
Analise as alterações de métrica:
| Função | Descrição |
|---|---|
| ai_top_drivers (Beta) | Classificar valores de dimensão que contribuem mais para uma alteração em uma métrica entre um grupo de controle e um grupo de teste. |
Pesquise com inserções de Pesquisa de IA:
| Função | Descrição |
|---|---|
| vector_search | Pesquise e consulte um índice de pesquisa de IA usando um modelo de IA de última geração. |
Usar funções de IA em fluxos de trabalho de produção
Para inferência em lotes em larga escala, você pode integrar funções de IA específicas para tarefas ou a função de finalidade geral ai_query em seus fluxos de trabalho de produção, como pipelines do Lakeflow, fluxos de trabalho do Databricks e Streaming Estruturado. Isso possibilita o processamento em escala de nível industrial.
Práticas recomendadas para funções de IA em produção:
Permitir que o AI Functions manipule sua carga de trabalho em escala: O AI Functions gerencia automaticamente paralelização, novas tentativas e dimensionamento. É recomendável enviar seu conjunto de dados completo em uma única consulta em vez de dividi-lo manualmente em lotes pequenos. O desempenho pode não ser dimensionado linearmente de cargas de trabalho muito pequenas para cargas de trabalho em grande escala.
Use modelos de base hospedados pelo Databricks: Ao usar a função de IA ai_query, use modelos de base hospedados pelo Databricks (prefixados com databricks-), não a taxa de transferência provisionada. Esses pontos de extremidade sem provisionamento são totalmente gerenciados e funcionam melhor para o processamento em lote.
Consulte Implantar pipelines de inferência em lote para obter exemplos e detalhes.
Monitorar o progresso do AI Functions
Para entender quantas inferências foram concluídas ou falharam e solucionar problemas de desempenho, você pode monitorar o progresso das funções de IA usando o recurso de perfil de consulta.
No Databricks Runtime 16.1 ML ou superior, na janela de consulta do editor de SQL em seu espaço de trabalho:
- Selecione o link Executando--- na parte inferior da janela Resultados brutos. A janela de desempenho aparece à direita.
- Clique em Ver o perfil de consulta para exibir detalhes de desempenho.
- Clique em Consulta de IA para ver as métricas dessa consulta específica, incluindo o número de inferências concluídas e com falha e o tempo total que a solicitação levou para ser concluída.
Visualizar custos para cargas de trabalho de funções de IA
Os recursos computacionais que executam sua consulta são sempre cobrados, como um warehouse SQL ou um cluster de trabalho. Se há um custo adicional de inferência do modelo depende da função:
-
Funções específicas de cada tarefa (por exemplo,
ai_classify,ai_summarize,ai_translate) executam inferência na infraestrutura de GPU serverless gerenciada pelo Databricks por meio do Model Serving. Você não provisiona essa infraestrutura, mas ela é cobrada separadamente da capacidade de computação das suas consultas. -
ai_queryé cobrado pelo endpoint de Model Serving que você especificar. Os endpoints do modelo de fundação hospedados em Databricks são faturados como as funções específicas da tarefa; os endpoints de modelo personalizado e throughput provisionado rodam em seu próprio computo dedicado de serviço e são faturados de acordo. -
ai_forecasteai_top_driverssão executados inteiramente nos recursos computacionais a partir dos quais você os envia, sem custo separado de inferência. -
vector_searchconsulta seu índice de AI Search através do serviço de AI Search gerenciado pela Databricks.
Os custos da Função de IA são registrados como parte do produto MODEL_SERVING no tipo de oferta BATCH_INFERENCE. Confira Exibir os custos das cargas de trabalho de inferência em lotes para obter uma consulta de exemplo.
Observação
Para ai_parse_document, ai_extracte ai_classify os custos são registrados como parte do AI_FUNCTIONS produto. Consulte Ver custos de execuções de ai_parse_document para uma consulta de exemplo.
Exibir custos para cargas de trabalho de inferência em lotes
Os exemplos a seguir mostram como filtrar cargas de trabalho de inferência em lote com base em trabalho, computação, warehouses SQL e pipelines do Lakeflow.
Consulte Monitorar custos de serviço de modelo para exemplos gerais de como visualizar os custos das cargas de trabalho de inferência em lote que usam Funções de IA.
Jobs
A consulta a seguir mostra quais tarefas estão sendo usadas para inferência em lote usando a tabela de sistemas system.workflow.jobs. Consulte Monitorar custos de trabalho e o desempenho de trabalhos usando tabelas do sistema.
SELECT *
FROM system.billing.usage u
JOIN system.workflow.jobs x
ON u.workspace_id = x.workspace_id
AND u.usage_metadata.job_id = x.job_id
WHERE u.usage_metadata.workspace_id = <workspace_id>
AND u.billing_origin_product = "MODEL_SERVING"
AND u.product_features.model_serving.offering_type = "BATCH_INFERENCE";
Computação
A seguir, é mostrado quais clusters estão sendo usados para inferência em lote utilizando a tabela de sistemas system.compute.clusters.
SELECT *
FROM system.billing.usage u
JOIN system.compute.clusters x
ON u.workspace_id = x.workspace_id
AND u.usage_metadata.cluster_id = x.cluster_id
WHERE u.usage_metadata.workspace_id = <workspace_id>
AND u.billing_origin_product = "MODEL_SERVING"
AND u.product_features.model_serving.offering_type = "BATCH_INFERENCE";
Pipelines Declarativos do Lakeflow Spark
Veja a seguir os pipelines do Lakeflow que estão sendo usados para inferência em lote usando a tabela de sistemas system.lakeflow.pipelines.
SELECT *
FROM system.billing.usage u
JOIN system.lakeflow.pipelines x
ON u.workspace_id = x.workspace_id
AND u.usage_metadata.dlt_pipeline_id = x.pipeline_id
WHERE u.usage_metadata.workspace_id = <workspace_id>
AND u.billing_origin_product = "MODEL_SERVING"
AND u.product_features.model_serving.offering_type = "BATCH_INFERENCE";
SQL Warehouse
Veja a seguir quais warehouses SQL estão sendo usados para inferência em lote usando a tabela de sistemas system.compute.warehouses.
SELECT *
FROM system.billing.usage u
JOIN system.compute.clusters x
ON u.workspace_id = x.workspace_id
AND u.usage_metadata.cluster_id = x.cluster_id
WHERE u.workspace_id = <workspace_id>
AND u.billing_origin_product = "MODEL_SERVING"
AND u.product_features.model_serving.offering_type = "BATCH_INFERENCE";
Exibir custos para ai_parse_document execuções
O exemplo a seguir mostra como consultar tabelas do sistema de cobrança para exibir os custos das execuções de ai_parse_document.
SELECT *
FROM system.billing.usage u
WHERE u.workspace_id = <workspace_id>
AND u.billing_origin_product = "AI_FUNCTIONS"
AND u.product_features.ai_functions.ai_function = "AI_PARSE_DOCUMENT";