Partilhar via


Conceitos - Modelos linguísticos pequenos e grandes

Neste artigo, você aprenderá sobre modelos de linguagem pequenos e grandes, incluindo quando usá-los e como usá-los com seus fluxos de trabalho de IA e aprendizado de máquina no Serviço Kubernetes do Azure (AKS).

O que são modelos linguísticos?

Os modelos de linguagem são poderosos modelos de aprendizado de máquina usados para tarefas de processamento de linguagem natural (NLP), como geração de texto e análise de sentimento. Estes modelos representam a linguagem natural com base na probabilidade de palavras ou sequências de palavras ocorrerem num determinado contexto.

Modelos de linguagem convencionais têm sido usados em ambientes supervisionados para fins de pesquisa, onde os modelos são treinados em conjuntos de dados de texto bem rotulados para tarefas específicas. Os modelos linguísticos pré-treinados oferecem uma forma acessível de começar a utilizar a IA e tornaram-se mais utilizados nos últimos anos. Esses modelos são treinados em corpora de texto em grande escala da internet usando redes neurais profundas e podem ser ajustados em conjuntos de dados menores para tarefas específicas.

O tamanho de um modelo de linguagem é determinado pelo seu número de parâmetros, ou pesos, que determinam como o modelo processa dados de entrada e gera saída. Os parâmetros são aprendidos durante o processo de treinamento, ajustando os pesos dentro das camadas do modelo para minimizar a diferença entre as previsões do modelo e os dados reais. Quanto mais parâmetros um modelo tem, mais complexo e expressivo ele é, mas também mais caro computacionalmente é treinar e usar.

Em geral, os modelos de linguagem pequena têm menos de 10 bilhões de parâmetros, e os modelos de linguagem grande têm mais de 10 bilhões de parâmetros. Por exemplo, a nova família de modelos Microsoft Phi-3 tem três versões com tamanhos diferentes: mini (3,8 bilhões de parâmetros), pequena (7 bilhões de parâmetros) e média (14 bilhões de parâmetros).

Quando usar modelos de linguagem pequenos

Vantagens

Modelos de linguagem pequena são uma boa escolha se você quiser modelos que sejam:

  • Mais rápido e econômico para treinar e executar: eles exigem menos dados e poder de computação.
  • Fácil de implantar e manter: eles têm menor espaço de armazenamento e memória.
  • Menos propenso a overfitting, que é quando um modelo aprende o ruído ou padrões específicos dos dados de treinamento e não consegue generalizar novos dados.
  • Interpretável e explicável: Têm menos parâmetros e componentes para compreender e analisar.

Casos de utilização

Os modelos de linguagem pequena são adequados para casos de uso que exigem:

  • Dados ou recursos limitados, e você precisa de uma solução rápida e simples.
  • Tarefas bem definidas ou restritas, e você não precisa de muita criatividade no resultado.
  • Tarefas de alta precisão e baixa recordação, e você valoriza a precisão e a qualidade em detrimento da cobertura e da quantidade.
  • Tarefas sensíveis ou regulamentadas, e você precisa garantir a transparência e a prestação de contas do modelo.

A tabela a seguir lista alguns modelos de linguagem pequena populares e de alto desempenho:

Família de modelos Tamanhos dos modelos (número de parâmetros) Licença de software
Microsoft Phi-3 Phi-3-mini (3,8 bilhões), Phi-3-small (7 bilhões) Licença MIT
Microsoft Phi-2 Phi-2 (2,7 mil milhões) Licença MIT
Falcon Falcão-7B (7 mil milhões) Licença Apache 2.0

Quando usar modelos de linguagem grandes

Vantagens

Modelos de linguagem grande são uma boa escolha se você quiser modelos que sejam:

  • Poderosos e expressivos: eles podem capturar padrões e relacionamentos mais complexos nos dados.
  • Geral e adaptável: Podem lidar com uma gama mais ampla de tarefas e transferir conhecimentos entre domínios.
  • Robusto e consistente: Eles podem lidar com entradas barulhentas ou incompletas e evitar erros e vieses comuns.

Casos de utilização

Modelos de linguagem grande são adequados para casos de uso que exigem:

  • Dados e recursos abundantes, e você tem o orçamento para criar e manter uma solução complexa.
  • Tarefas de baixa precisão e alta recuperação, e você valoriza a cobertura e a quantidade em detrimento da precisão e da qualidade.
  • Tarefas desafiadoras ou exploratórias, e você quer aproveitar a capacidade do modelo de aprender e se adaptar.

A tabela a seguir lista alguns modelos de linguagem grandes populares e de alto desempenho:

Família de modelos Tamanhos dos modelos (número de parâmetros) Licença de software
Microsoft Phi-3 Phi-3-médio (14 bilhões) Licença MIT
Falcon Falcão-40B (40 mil milhões) Licença Apache 2.0

Experimente modelos de linguagem pequenos e grandes no AKS

O Kubernetes AI Toolchain Operator (KAITO) é um operador de código aberto que automatiza implantações de modelos de linguagem pequenas e grandes em clusters Kubernetes. O complemento KAITO para AKS simplifica a integração e reduz o tempo de inferência para modelos de código aberto em seus clusters AKS. O complemento provisiona automaticamente nós de GPU de tamanho certo e configura o servidor de interferência associado como um servidor de ponto de extremidade para o modelo escolhido.

Para obter mais informações, consulte Implantar um modelo de IA no AKS com o operador da cadeia de ferramentas de IA. Para começar com uma variedade de modelos de linguagem pequenos e grandes suportados para seus fluxos de trabalho de inferência, consulte o repositório GitHub modelo KAITO.

Importante

O software de código aberto é mencionado em toda a documentação e amostras do AKS. O software que você implanta é excluído dos contratos de nível de serviço do AKS, da garantia limitada e do suporte do Azure. Ao usar a tecnologia de código aberto ao lado do AKS, consulte as opções de suporte disponíveis nas respetivas comunidades e mantenedores do projeto para desenvolver um plano.

Por exemplo, o repositório Ray GitHub descreve várias plataformas que variam em tempo de resposta, finalidade e nível de suporte.

A Microsoft assume a responsabilidade pela criação dos pacotes de código aberto que implantamos no AKS. Essa responsabilidade inclui ter a propriedade completa do processo de compilação, digitalização, assinatura, validação e hotfix, juntamente com o controle sobre os binários em imagens de contêiner. Para obter mais informações, consulte Gerenciamento de vulnerabilidades para cobertura de suporte AKS e AKS.

Próximos passos

Para saber mais sobre cargas de trabalho de IA e aprendizado de máquina em contêineres no AKS, consulte os seguintes artigos: