Anunciando a disponibilidade geral do preenchimento automático do Databricks Assistant


Hoje temos o prazer de anunciar o disponibilidade geral de Preenchimento automático do assistente de databricks em todas as plataformas de nuvem. O Assistant Autocomplete fornece sugestões de código personalizadas com tecnologia de IA conforme você digita para Python e SQL.

Anunciando a disponibilidade geral do preenchimento automático do Databricks Assistant

Preenchimento automático do assistente

Diretamente integradas ao pocket book, ao editor SQL e aos painéis de IA/BI, as sugestões do Assistant Autocomplete se integram perfeitamente ao seu fluxo de desenvolvimento, permitindo que você mantenha o foco em sua tarefa atual.

2

“Embora eu geralmente seja um pouco cético em relação à GenAI, descobri que a ferramenta Databricks Assistant Autocomplete é um dos poucos casos de uso realmente excelentes para a tecnologia. Geralmente é rápido e preciso o suficiente para economizar um número significativo de pressionamentos de tecla, permitindo-me concentrar-me mais totalmente na tarefa de raciocínio em vez de digitar. Além disso, ele substituiu quase inteiramente minhas viagens regulares à Web por uma sintaxe de API semelhante a um padrão (por exemplo, anotação de plotagem, and many others.). – Jonas Powell, cientista de dados da equipe, Rivian

Estamos entusiasmados em trazer essas melhorias de produtividade para todos. Nas próximas semanas, habilitaremos o preenchimento automático do Databricks Assistant em espaços de trabalho qualificados.

Um sistema composto de IA

IA composta refere-se a sistemas de IA que combinam vários componentes interativos para lidar com tarefas complexas, em vez de depender de um único modelo monolítico. Esses sistemas integram vários modelos de IA, ferramentas e etapas de processamento para formar um fluxo de trabalho holístico que é mais flexível, eficiente e adaptável do que as abordagens tradicionais de modelo único.

O preenchimento automático do assistente é um sistema de IA composto que aproveita de forma inteligente o contexto de células de código relacionadas, consultas relevantes e blocos de anotações usando tabelas semelhantes, metadados do Unity Catalog e variáveis ​​DataFrame para gerar sugestões precisas e sensíveis ao contexto enquanto você digita.

Nossa equipe de IA aplicada utilizou estruturas Databricks e Mosaic AI para ajustar, avaliar e servir o modelo, visando sugestões precisas específicas de domínio.

Aproveitando metadados de tabela e consultas recentes

Considere um cenário em que você criou uma tabela de métricas simples com as seguintes colunas:

  • knowledge (STRING)
  • contagem de cliques (INT)
  • mostrar_contagem (INT)

O preenchimento automático do assistente facilita o cálculo da taxa de cliques (CTR) sem a necessidade de recuperar manualmente a estrutura da sua tabela. O sistema usa geração aumentada de recuperação (RAG) para fornecer informações contextuais sobre as tabelas com as quais você está trabalhando, como definições de coluna e padrões de consulta recentes.

Por exemplo, com metadados de tabela, seria sugerida uma consulta simples como esta:

5

Se você já calculou a taxa de cliques usando uma porcentagem, o modelo pode sugerir o seguinte:

c

Usar RAG para contexto adicional mantém as respostas fundamentadas e ajuda a prevenir alucinações de modelo.

Aproveitando variáveis ​​DataFrame de tempo de execução

Vamos analisar a mesma tabela usando PySpark em vez de SQL. Ao utilizar variáveis ​​de tempo de execução, ele detecta o esquema do DataFrame e sabe quais colunas estão disponíveis.

Por exemplo, você pode querer calcular a contagem média de cliques por dia:

3

Neste caso, o sistema utiliza o esquema de tempo de execução para oferecer sugestões adaptadas ao DataFrame.

Ajuste fino específico do domínio

Embora muitos LLMs de conclusão de código sejam excelentes em tarefas gerais de codificação, ajustamos especificamente o modelo para o ecossistema Databricks. Isso envolveu o pré-treinamento contínuo do modelo em código de pocket book/SQL disponível publicamente para focar em padrões comuns em engenharia de dados, análise e fluxos de trabalho de IA. Ao fazer isso, criamos um modelo que compreende as nuances de trabalhar com massive knowledge em um ambiente distribuído.

Avaliação de modelo baseado em benchmark

Para garantir a qualidade e relevância de nossas sugestões, avaliamos o modelo usando um conjunto de benchmarks de codificação comumente usados, como Avaliação Humana, DS-1000e Aranha. No entanto, embora estes benchmarks sejam úteis na avaliação de capacidades gerais de codificação e algum conhecimento de domínio, não capturam todas as capacidades e sintaxe do Databricks. Para resolver isso, desenvolvemos um benchmark personalizado com centenas de casos de teste que abrangem alguns dos pacotes e linguagens mais usados ​​no Databricks. Esta estrutura de avaliação vai além das métricas gerais de codificação para avaliar o desempenho em tarefas específicas do Databricks, bem como outros problemas de qualidade que encontramos ao usar o produto.

Se você estiver interessado em saber mais sobre como avaliamos o modelo, confira nosso postagem recente na avaliação de LLMs para tarefas de codificação especializadas.

Para saber quando (não) gerar

Muitas vezes há casos em que o contexto é suficiente, tornando desnecessário fornecer uma sugestão de código. Conforme mostrado nos exemplos a seguir de uma versão anterior do nosso modelo de codificação, quando as consultas já estão concluídas, quaisquer conclusões adicionais geradas pelo modelo podem ser inúteis ou perturbadoras.

Código Inicial (com cursor representado por )

Código concluído (código sugerido em negrito, de um modelo anterior)

– obtenha a porcentagem de cliques por dia em todos os tempos

SELECIONE knowledge, click_count*100,0/show_count como click_pct

de principal.product_metrics.client_side_metrics

– obtenha a porcentagem de cliques por dia em todos os tempos

SELECIONE knowledge, contagem_de_cliques, contagem_de_shows, contagem_de_cliques*100,0/show_count como click_pct

de principal.product_metrics.client_side_metrics

– obtenha a porcentagem de cliques por dia em todos os tempos

SELECIONE knowledge, click_count*100.0/show_count como click_pct

de principal.product_metrics.client_side_metrics

– obtenha a porcentagem de cliques por dia em todos os tempos

SELECIONE knowledge, click_count*100.0/show_count como click_pct

de principal.product_metrics.client_side_metrics.0/show_count como click_pct

de principal.product_metrics.client_side_metrics

Em todos os exemplos acima, a resposta supreme é na verdade uma string vazia. Embora o modelo às vezes gerasse uma string vazia, casos como os acima eram comuns o suficiente para serem um incômodo. O problema aqui é que o modelo deve saber quando se abster – isto é, não produzir nenhum resultado e retornar uma conclusão vazia.

Para conseguir isso, introduzimos um truque de ajuste fino, onde forçamos de 5 a ten% dos casos a consistir em um intervalo intermediário vazio em um native aleatório no código. A ideia period que isso ensinaria o modelo a reconhecer quando o código está completo e uma sugestão não é necessária. Esta abordagem provou ser altamente eficaz. Para os casos de teste de resposta vazia do SQL, a taxa de aprovação passou de 60% para 97% sem afetar o desempenho de outros benchmarks de codificação. Mais importante ainda, depois que implantamos o modelo em produção, houve um claro aumento na taxa de aceitação de sugestões de código. Esse aprimoramento de ajuste fino se traduziu diretamente em ganhos de qualidade perceptíveis para os usuários.

Fornecimento de modelo rápido e econômico

Dada a natureza em tempo actual da conclusão do código, o atendimento eficiente do modelo é essential. Nós aproveitamos Modelo otimizado acelerado por GPU do Databricks servindo endpoints para obter inferências de baixa latência enquanto controla o custo de uso da GPU. Essa configuração nos permite entregar sugestões rapidamente, garantindo uma experiência de codificação tranquila e responsiva.

O preenchimento automático do assistente foi desenvolvido para as necessidades da sua empresa

Como uma empresa de dados e IA focada em ajudar os clientes empresariais a extrair valor dos seus dados para resolver os problemas mais difíceis do mundo, acreditamos firmemente que tanto as empresas que desenvolvem a tecnologia como as empresas e organizações que a utilizam precisam de agir de forma responsável na forma como a IA é implementada.

Projetamos o Assistant Autocomplete desde o primeiro dia para atender às demandas das cargas de trabalho empresariais. O Assistant Autocomplete respeita a governança do Unity Catalog e atende aos padrões de conformidade para determinados setores altamente regulamentados. O preenchimento automático do assistente respeita Restrições geográficas e pode ser usado em espaços de trabalho que lidam com o processamento de dados de Informações de Saúde Protegidas (PHI). Seus dados nunca são compartilhados entre clientes e nunca são usados ​​para treinar modelos. Para informações mais detalhadas, consulte Confiança e segurança do Databricks.

Introdução ao preenchimento automático do Databricks Assistant

O preenchimento automático do Databricks Assistant está disponível em todas as nuvens sem custo adicional e será habilitado em espaços de trabalho nas próximas semanas. Os usuários podem ativar ou desativar o recurso nas configurações do desenvolvedor:

  1. Navegue até Configurações.
  2. Sob Desenvolvedor, alternar Preenchimento automático do assistente automático.
  3. Conforme você digita, sugestões aparecem automaticamente. Imprensa Guia para aceitar uma sugestão. Para acionar manualmente uma sugestão, pressione Choice + Shift + Espaço (no macOS) ou Management + Shift + Espaço (no Home windows). Você pode acionar manualmente uma sugestão mesmo que as sugestões automáticas estejam desativadas.

Para obter mais informações sobre como começar e uma lista de casos de uso, confira o página de documentação e postagem de weblog de visualização pública.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *