Ir para o conteúdo principal

Dolly Gratuito: Apresentando o Primeiro LLM do Mundo Verdadeiramente Aberto e Ajustado por Instruções

Free Dolly: Introducing the World's First Truly Open Instruction-Tuned LLM

Há duas semanas, lançamos o Dolly, um modelo de linguagem grande (LLM) treinado por menos de US$ 30 para exibir interatividade humana semelhante ao ChatGPT (também conhecida como seguimento de instruções). Hoje, estamos lançando o Dolly 2.0, o primeiro LLM de código aberto que segue instruções, ajustado em um conjunto de dados de instruções gerado por humanos licenciado para uso em pesquisa e comercial.

O Dolly 2.0 é um modelo de linguagem de 12 bilhões de parâmetros baseado na família de modelos pythia da EleutherAI e ajustado exclusivamente em um novo conjunto de dados de alta qualidade gerado por humanos para seguir instruções, coletado entre funcionários da Databricks.

Estamos disponibilizando todo o Dolly 2.0 como código aberto, incluindo o código de treinamento, o conjunto de dados e os pesos do modelo, todos adequados para uso comercial. Isso significa que qualquer organização pode criar, possuir e personalizar LLMs poderosos que podem conversar com pessoas, sem pagar por acesso à API ou compartilhar dados com terceiros.

dataset databricks-dolly-15k

databricks-dolly-15k contém 15.000 pares de prompt/resposta de alta qualidade gerados por humanos, especificamente projetados para o ajuste de instruções em LLMs. Sob os termos de licenciamento do databricks-dolly-15k (Licença Creative Commons Atribuição-CompartilhaIgual 3.0 Não Adaptada), qualquer pessoa pode usar, modificar ou estender este conjunto de dados para qualquer finalidade, incluindo aplicações comerciais.

Até onde sabemos, este conjunto de dados é o primeiro conjunto de dados de instruções gerado por humanos e de código aberto, especificamente projetado para fazer com que LLMs exibam a interatividade mágica do ChatGPT. O databricks-dolly-15k foi criado por mais de 5.000 funcionários da Databricks durante março e abril de 2023. Esses registros de treinamento são naturais, expressivos e projetados para representar uma ampla gama de comportamentos, desde brainstorming e geração de conteúdo até extração de informações e sumarização.

Por que criamos um novo conjunto de dados?

Assim que lançamos o Dolly 1.0, fomos inundados com pedidos de pessoas que queriam experimentá-lo. A pergunta número um que recebíamos era: “posso usá-lo comercialmente?”

Um passo crítico na criação do Dolly 1.0, ou de qualquer LLM que segue instruções, é treinar o modelo em um conjunto de dados de pares de instruções e respostas. O Dolly 1.0 foi treinado por US$ 30 usando um conjunto de dados que a equipe Stanford Alpaca havia criado usando a API da OpenAI. Esse conjunto de dados continha saídas do ChatGPT e, como a equipe de Stanford apontou, os termos de serviço buscam impedir que qualquer pessoa crie um modelo que concorra com a OpenAI. Portanto, infelizmente, a resposta para essa pergunta comum foi: “provavelmente não!”

Pelo que sabemos, todos os modelos de instrução bem conhecidos existentes (Alpaca, Koala, GPT4All, Vicuna) sofrem dessa limitação, proibindo o uso comercial. Para contornar esse dilema, começamos a procurar maneiras de criar um novo conjunto de dados que não fosse “contaminado” para uso comercial.

Como fizemos isso?

Sabíamos pela pesquisa da OpenAI paper que o modelo InstructGPT original foi treinado em um conjunto de dados composto por 13.000 demonstrações de comportamento de seguimento de instruções. Inspirados por isso, nos propusemos a ver se poderíamos alcançar um resultado semelhante com funcionários da Databricks liderando o caminho.

Acontece que gerar 13.000 perguntas e respostas é mais difícil do que parece. Cada resposta tem que ser original. Não pode ser copiada do ChatGPT ou de qualquer lugar da web, ou contaminaria nosso conjunto de dados. Parecia assustador, mas a Databricks tem mais de 5.000 funcionários muito interessados em LLMs. Então, pensamos que poderíamos coletar de forma colaborativa entre eles para criar um conjunto de dados de qualidade ainda maior do que os 40 anotadores criaram para a OpenAI. Mas sabíamos que todos estavam ocupados e tinham empregos em tempo integral, então precisávamos incentivá-los a fazer isso.

Montamos um concurso, onde os 20 melhores anotadores receberiam um grande prêmio. Também delineamos 7 tarefas muito específicas:

  • Perguntas e Respostas Abertas: Por exemplo, “Por que as pessoas gostam de filmes de comédia?” ou “Qual é a capital da França?” Em alguns casos, não há uma resposta correta e, em outros, requer o uso do conhecimento geral do mundo.
  • Perguntas e Respostas Fechadas: Estas são perguntas que podem ser respondidas usando apenas as informações contidas em uma passagem de texto de referência. Por exemplo, dado um parágrafo da Wikipedia sobre o átomo, pode-se perguntar: “Qual é a proporção entre prótons e nêutrons no núcleo?”
  • Extrair informações da Wikipedia: Aqui, um anotador copiaria um parágrafo da Wikipedia e extrairia entidades ou outras informações factuais, como pesos ou medidas, da passagem.
  • Resumir informações da Wikipedia: Para isso, os anotadores forneceram uma passagem da Wikipedia e foram solicitados a destilá-la em um resumo curto.
  • Brainstorming: Esta tarefa solicitou ideação aberta e uma lista associada de opções possíveis. Por exemplo, “Quais são algumas atividades divertidas que posso fazer com meus amigos neste fim de semana?”.
  • Classificação: Para esta tarefa, os anotadores foram solicitados a fazer julgamentos sobre a associação de classe (por exemplo, os itens em uma lista são animais, minerais ou vegetais) ou a julgar as propriedades de uma curta passagem de texto, como o sentimento de uma crítica de filme.
  • Escrita criativa: Esta tarefa incluiria coisas como escrever um poema ou uma carta de amor.

Exemplo de QA Aberto em databricks-dolly-15k

Como faço para acender uma fogueira?

A segurança deve vir sempre em primeiro lugar ao iniciar uma fogueira. Certifique-se de ter água ou outra forma de extinguir seu fogo prontamente disponível. Use um anel de fogueira, um local ou limpe uma área grande ao redor do local da sua fogueira. Além disso, certifique-se de que fogueiras sejam permitidas em sua área.
 

Com a segurança resolvida, tudo o que um fogo precisa são calor, combustível e oxigênio. Qualquer material combustível iniciará um fogo, mas boas fontes de combustível para fogueira incluem isca, gravetos e toras secas.

Use materiais como agulhas de pinheiro secas, folhas secas, gramíneas e raspas de madeira para isca. Você também pode usar jornal (ou qualquer papel), fiapos de secadora ou papelão. Para gravetos, use pedaços menores de madeira, como galhos e gravetos com diâmetro não superior a 2,5 cm (cerca de 1 polegada).

Toras secas ou bem curadas garantirão uma boa queima. Empilhe a madeira de forma que o oxigênio possa alcançar facilmente sua chama. Muitos preferem um design de empilhamento em teepee ou cabana de toras. Agora, use uma fonte de calor para criar uma chama ou faísca e aplique isso à sua isca. Assim que a isca combustar, ela deve acender os gravetos, e os gravetos devem eventualmente inflamar suas toras. Se tudo correr bem, você deverá estar aproveitando sua fogueira.

Exemplo de Brainstorming em databricks-dolly-15k

Em vez de fazer um sanduíche de manteiga de amendoim e geleia, com o que mais eu poderia combinar manteiga de amendoim em um sanduíche? Dê cinco ideias.
 

Em vez de geleia, experimente uma das seguintes opções com manteiga de amendoim em um sanduíche:

  1. Mel
  2. Passas
  3. Geleias de frutas
  4. Bananas
  5. Maçãs fatiadas

Inicialmente, estávamos céticos se conseguiríamos 10.000 resultados. Mas com gamificação diária no placar, conseguimos ultrapassar 15.000 resultados em uma semana. Por medo de afetar nossa produtividade, encerramos o concurso.

Nossa jornada para criar um modelo comercialmente viável

Webinar

Databricks: Uma Introdução Prática

Também queríamos produzir um modelo de código aberto que pudesse ser usado comercialmente. Apesar de o databricks-dolly-15k ser substancialmente menor que o Alpaca, o conjunto de dados no qual o Dolly 1.0 foi treinado, o modelo resultante Dolly 2.0, baseado no pythia-12b da EleutherAI, exibiu comportamento de seguimento de instruções de alta qualidade. Em retrospecto, isso não é surpreendente. Muitos dos conjuntos de dados de ajuste de instruções lançados nos últimos meses contêm dados sintetizados, que frequentemente contêm alucinações e erros factuais.

O databricks-dolly-15k, por outro lado, é gerado por profissionais, é de alta qualidade e contém respostas longas para a maioria das tarefas.

Você pode ver por si mesmo alguns exemplos de como o Dolly 2.0 pode ser usado para sumarização e geração de conteúdo. Com base em nosso feedback inicial de clientes, é claro que capacidades como essas terão aplicações de amplo alcance em toda a empresa.

 

Dolly 2.0 resume a documentação da Databricks

Instrução

Resposta

Qual é a configuração padrão para novos clusters SQL do Databricks?

Entrada:

O Databricks SQL Serverless suporta computação serverless. Administradores podem criar clusters SQL serverless (anteriormente endpoints SQL) que habilitam computação instantânea e são gerenciados pelo Databricks. Clusters SQL serverless usam clusters de computação na sua conta Databricks. Use-os com consultas SQL do Databricks como você faria normalmente com os clusters SQL hospedados pelo cliente originais, que agora são chamados de clusters SQL clássicos. O Databricks mudou o nome de endpoint SQL para cluster SQL porque, na indústria, endpoint se refere a um dispositivo de computação remota que se comunica com uma rede à qual está conectado, ou um ponto de entrada para um serviço de nuvem. Um data warehouse é um sistema de gerenciamento de dados que armazena dados atuais e históricos de múltiplas fontes de maneira amigável para negócios para facilitar insights e relatórios. Cluster SQL descreve com precisão as capacidades completas deste recurso de computação. Se clusters SQL serverless estiverem habilitados para sua conta, observe o seguinte: Novos clusters SQL são serverless por padrão quando você os cria a partir da interface do usuário. Novos clusters SQL não são serverless por padrão quando você os cria usando a API, que exige que você especifique explicitamente serverless. Você também pode criar novos clusters SQL pro ou clássicos usando qualquer um dos métodos. Você pode atualizar um cluster SQL pro ou clássico para um cluster SQL serverless ou um cluster SQL clássico para um cluster SQL pro. Você também pode fazer downgrade de serverless para pro ou clássico. Este recurso afeta apenas o Databricks SQL. Ele não afeta como os clusters do Databricks Runtime funcionam com notebooks e jobs nos ambientes de workspace de Data Science & Engineering ou Databricks Machine Learning. Clusters do Databricks Runtime sempre rodam no plano de dados clássico na sua conta AWS. Veja quotas serverless. Se sua conta precisar de termos de uso atualizados, os administradores do workspace serão solicitados na interface do usuário do Databricks SQL. Se seu workspace tiver um perfil de instância AWS, você pode precisar atualizar a relação de confiança para suportar computação serverless, dependendo de como e quando foi criado.

Por padrão, ao criar um novo cluster SQL do Databricks usando a interface do usuário, ele será um cluster SQL serverless. No entanto, ao criar o mesmo usando a API, você terá que especificar explicitamente que é um cluster SQL pro.

 Dolly 2.0 gera conteúdo para um tweet

Instrução

Resposta

Escreva um tweet sobre o lançamento do Dolly 2.0, nosso novo LLM.

Dolly 2.0 chegou 🤩

Atualizamos nosso LLM, tornando-o mais eficiente, mais poderoso e mais acessível a um público mais amplo.

Saiba mais ⬇️

https://t.co/KxzT3HXCPb

Modelos de linguagem grandes verdadeiramente abertos

Ouvimos repetidamente de nossos clientes que eles seriam melhor atendidos possuindo seus modelos, permitindo-lhes criar modelos de maior qualidade para suas aplicações específicas de domínio sem entregar seus dados sensíveis a terceiros.

Também acreditamos que as questões importantes de viés, responsabilidade e segurança de IA devem ser abordadas por uma ampla comunidade de stakeholders diversos, em vez de apenas algumas grandes empresas. Conjuntos de dados e modelos de código aberto incentivam comentários, pesquisa e inovação que ajudarão a garantir que todos se beneficiem dos avanços na tecnologia de inteligência artificial.

Como um artefato técnico e de pesquisa, não esperamos que o Dolly seja o estado da arte em termos de eficácia. No entanto, esperamos que o Dolly e o conjunto de dados de código aberto sirvam como semente para uma infinidade de trabalhos subsequentes, que podem servir para impulsionar modelos de linguagem ainda mais poderosos.

Como posso começar hoje?

Para baixar os pesos do modelo Dolly 2.0, basta visitar a página Databricks Hugging Face e visitar o repositório Dolly no databricks-labs para baixar o conjunto de dados databricks-dolly-15k. E participe do nosso webinar para descobrir como você pode aproveitar os LLMs para sua organização.

Recursos

(Esta publicação no blog foi traduzida utilizando ferramentas baseadas em inteligência artificial) Publicação original

Nunca perca uma postagem da Databricks

Inscreva-se nas categorias de seu interesse e receba as últimas postagens na sua caixa de entrada