enriquecer dados usando AI Functions
Visualização
Esse recurso está em Public Preview.
AI Functions são funções integradas que você pode usar para aplicar Modelos de Aprendizagem Baseados em Liderança (LLMs) ou técnicas de pesquisa de ponta em dados armazenados no Databricks para transformações e enriquecimento de dados. Eles podem ser executados de qualquer lugar no Databricks, incluindo Databricks SQL, Notebook, pipeline declarativo LakeFlow Spark e fluxo de trabalho.
AI Functions são fáceis de usar, rápidas e escaláveis. Analistas podem usá-las para aplicar inteligência de dados aos seus dados proprietários, enquanto engenheiros de dados, data scientists e engenheiros machine learning podem usá-las para construir um pipeline de lotes de nível de produção.
tarefa específica e de propósito geral
AI Functions possui funções específicas para tarefas e funções de propósito geral:
- AI Functionsespecíficas para tarefas — Funções desenvolvidas especificamente para uma tarefa, otimizadas para tal, como análise de documentos, extração de entidades, classificação e análise de sentimentos. Essas funções são alimentadas por sistemas Databricks-gerenciar, baseados em pesquisa. Algumas funções incluem experiências de interface do usuário. Consulte as funções AI específicas da tarefa para obter informações sobre as funções e os modelos compatíveis.
ai_query— A função de propósito geral para flexibilidade de tarefas e modelos. Forneça uma solicitação e escolha qualquer API do Foundation Model compatível. Consulte o usoai_query.
específico da tarefa AI funções
As funções específicas da tarefa são definidas para uma determinada tarefa, permitindo automatizar transformações rotineiras, como extração de entidades, tradução e classificação. A Databricks recomenda estas funções para começar, pois elas utilizam técnicas de pesquisa de ponta mantidas pela Databricks e não exigem nenhuma personalização.
Consulte Analisar avaliações de clientes usando AI Functions para ver um exemplo.
A tabela a seguir lista as funções suportadas e as tarefas que elas executam.
Função | Descrição |
|---|---|
Analise conteúdo estruturado (texto, tabelas, descrições de figuras) e extraia informações de documentos não estruturados usando técnicas de pesquisa de última geração. | |
Extraia campos estruturados de documentos ou textos usando um esquema definido por você. | |
Classifique o texto de entrada de acordo com o rótulo fornecido, utilizando técnicas de pesquisa de ponta. | |
Realizar análise de sentimento no texto de entrada usando um modelo gerativo de última geração AI. | |
Corrija erros gramaticais em textos usando um modelo gerativo de última geração AI. | |
Responda ao prompt fornecido pelo usuário usando um modelo generativo de última geração AI. | |
Mascarar entidades especificadas no texto usando um modelo gerativo de última geração AI. | |
Extrair conteúdo estruturado de documentos não estruturados usando um modelo gerativo de última geração AI. | |
Transforma a saída do documento analisado em blocos prontos para pesquisa, otimizados para pesquisa vetorial e pipeline RAG. | |
Uma função AI de propósito geral para tarefas que vai além do que as funções específicas para cada tarefa oferecem. Forneça um prompt personalizado e escolha qualquer modelo de API do Foundation Model compatível. | |
Compare dois strings e compute a pontuação de similaridade semântica usando um modelo gerativo AI de última geração. | |
Gerar um resumo do texto usando o site SQL e o modelo gerativo de última geração AI. | |
Traduza o texto para um idioma de destino especificado usando um modelo gerativo de última geração AI. | |
Preveja dados até um horizonte especificado. Essa função com valor de tabela foi projetada para extrapolar dados de séries temporais para o futuro. | |
Pesquisar e consultar um Mosaic AI Vector Search usando um modelo generativo de última geração AI. |
Use AI Functions no fluxo de trabalho de produção
Para inferência de lotes em grande escala, você pode integrar AI Functions específicas de tarefas ou a função de uso geral ai_query em seu fluxo de trabalho de produção, como pipeline declarativo LakeFlow Spark , fluxo de trabalho Databricks e transmissão estruturada. Isso possibilita o processamento em escala de nível de produção.
Melhores práticas para funções AI em produção:
Deixe que AI Functions lidem com sua carga de trabalho em escala: AI Functions gerenciam automaticamente a paralelização, as novas tentativas e o escalonamento. Recomenda-se enviar todo o dataset em uma única consulta, em vez de dividi-lo manualmente em lotes menores. O desempenho pode não aumentar linearmente de cargas de trabalho muito pequenas para cargas de trabalho de grande escala.
Use modelos de base hospedados Databricks : Ao usar a função AI ai_query , use modelos de base hospedados Databricks(prefixados com databricks-), não provisionamento Taxa de transferência. Esses endpoints sem provisionamento são totalmente gerenciáveis e funcionam melhor para processamento em lote.
Consulte o pipeline de inferência de lotes de implante para exemplos e detalhes.
Monitorar o progresso AI Functions
Para entender quantas inferências foram concluídas ou falharam e solucionar problemas de desempenho, você pode monitorar o progresso das AI Functions usando o recurso de perfil de consulta.
Em Databricks Runtime 16.1 ML e acima, na janela de consulta do editor SQL em seu workspace:
- Selecione o link Running--- na parte inferior da janela de resultados brutos . A janela de desempenho é exibida à direita.
- Clique em See query profile (Ver perfil de consulta ) para view detalhes de desempenho.
- Clique em AI Query 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 da função AI
Os custos da função AI são registrados como parte do produto MODEL_SERVING sob o tipo de oferta BATCH_INFERENCE . Veja os custos de visualização para cargas de trabalho de inferência de lotes para um exemplo de consulta.
Para ai_parse_document, ai_extract e ai_classify os custos são registrados como parte do produto AI_FUNCTIONS . Veja os custos de visualização para a execução de ai_parse_document para um exemplo de consulta.
ver custos para cargas de trabalho de inferência de lotes
Os exemplos a seguir mostram como filtrar cargas de trabalho de inferência de lotes com base em Job, compute, SQL Warehouse e pipeline declarativo LakeFlow Spark .
Consulte Monitorar custos do modelo de abastecimento para obter exemplos gerais sobre como view custos para suas cargas de trabalho de inferência de lotes que usam AI Functions.
- Jobs
- Compute
- Lakeflow Spark Declarative Pipelines
- SQL warehouse
A consulta a seguir mostra quais tarefas estão sendo usadas para inferência de lotes usando a tabela de sistemas system.workflow.jobs . Veja Monitorar custos e desempenho do trabalho com 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";
A seguir são mostrados quais clusters estão sendo usados para inferência de lotes usando 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";
A seguir, são mostrados quais pipelines declarativos LakeFlow Spark estão sendo usados para inferência de lotes 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";
A seguir é mostrado qual warehouse SQL está sendo usado para inferência de lotes 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";
ver custos para execução de ai_parse_document
O exemplo a seguir mostra como consultar as tabelas do sistema de faturamento para view os custos da execução 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";