Tech

Mistral 2 e Mistral NeMo: Um guia abrangente para o mais recente LLM vindo de Paris

Fundada por ex-alunos da DeepMind e da Meta do Google, a startup Mistral AI, sediada em Paris, tem causado impacto constante na comunidade de IA desde 2023.

O Mistral AI chamou a atenção do mundo pela primeira vez com seu modelo de estreia, o Mistral 7B, lançado em 2023. Este modelo de 7 bilhões de parâmetros rapidamente ganhou força por seu desempenho impressionante, superando modelos maiores como o Llama 2 13B em vários benchmarks e até mesmo rivalizando com o Llama 1 34B em muitas métricas. O que diferenciava o Mistral 7B não period apenas seu desempenho, mas também sua acessibilidade – o modelo podia ser facilmente baixado do GitHub ou mesmo por meio de um torrent de 13,4 gigabytes, tornando-o prontamente disponível para pesquisadores e desenvolvedores em todo o mundo.

A abordagem não convencional da empresa para lançamentos, muitas vezes renunciando a artigos tradicionais, blogs ou press releases, provou ser notavelmente eficaz em capturar a atenção da comunidade de IA. Essa estratégia, juntamente com seu comprometimento com os princípios de código aberto, posicionou a Mistral AI como um participant formidável no cenário de IA.

A rápida ascensão da Mistral AI na indústria é ainda mais evidenciada por seu recente sucesso de financiamento. A empresa alcançou uma avaliação impressionante de US$ 2 bilhões após uma rodada de financiamento liderada pela Andreessen Horowitz. Isso veio na esteira de uma rodada semente histórica de US$ 118 milhões – a maior da história europeia – mostrando a imensa fé que os investidores têm na visão e nas capacidades da Mistral AI.

Além de seus avanços tecnológicos, a Mistral AI também tem se envolvido ativamente na formulação de políticas de IA, particularmente em discussões em torno da Lei de IA da UE, onde eles defenderam a redução da regulamentação em IA de código aberto.

Agora, em 2024, a Mistral AI mais uma vez elevou o nível com dois modelos inovadores: Mistral Giant 2 (também conhecido como Mistral-Giant-Instruct-2407) e Mistral NeMo. Neste guia abrangente, vamos nos aprofundar nos recursos, desempenho e aplicações potenciais desses modelos de IA impressionantes.

As principais especificações do Mistral Giant 2 incluem:

  • 123 bilhões parâmetros
  • 128 mil janela de contexto
  • Suporte para dezenas de idiomas
  • Proficiência em 80+ codificação línguas
  • Capacidades avançadas de chamada de função

O modelo foi projetado para ultrapassar os limites de eficiência de custos, velocidade e desempenho, tornando-se uma opção atraente para pesquisadores e empresas que buscam alavancar IA de ponta.

Mistral NeMo: O Novo Modelo Menor

Enquanto o Mistral Giant 2 representa o melhor dos modelos de larga escala da Mistral AI, o Mistral NeMo, lançado em julho de 2024, adota uma abordagem diferente. Desenvolvido em colaboração com a NVIDIA, o Mistral NeMo é um modelo de 12 bilhões de parâmetros mais compacto que ainda oferece capacidades impressionantes:

  • 12 bilhões parâmetros
  • Contexto 128k janela
  • Desempenho de última geração em sua categoria de tamanho
  • Licença Apache 2.0 para uso aberto
  • Consciente de quantização treinamento para inferência eficiente

O Mistral NeMo está posicionado como um substituto imediato para sistemas que atualmente usam o Mistral 7B, oferecendo desempenho aprimorado, mantendo a facilidade de uso e a compatibilidade.

Principais recursos e capacidades

Tanto o Mistral Giant 2 quanto o Mistral NeMo compartilham vários recursos importantes que os diferenciam no cenário da IA:

  1. Grandes janelas de contexto: Com 128 mil comprimentos de contexto de token, ambos os modelos podem processar e entender trechos de texto muito maiores, permitindo saídas mais coerentes e contextualmente relevantes.
  2. Suporte multilíngue: Os modelos se destacam em uma ampla variedade de idiomas, incluindo inglês, francês, alemão, espanhol, italiano, chinês, japonês, coreano, árabe e hindi.
  3. Capacidades avançadas de codificação:Ambos os modelos demonstram proficiência excepcional na geração de código em diversas linguagens de programação.
  4. Instrução a seguir:Melhorias significativas foram feitas na capacidade dos modelos de seguir instruções precisas e lidar com conversas multifacetadas.
  5. Chamada de função: O suporte nativo para chamada de função permite que esses modelos interajam dinamicamente com ferramentas e serviços externos.
  6. Raciocínio e resolução de problemas: Capacidades aprimoradas em raciocínio matemático e tarefas complexas de resolução de problemas.

Vamos nos aprofundar em alguns desses recursos e examinar como eles funcionam na prática.

Benchmarks de desempenho

Para entender as verdadeiras capacidades do Mistral Giant 2 e do Mistral NeMo, é essencial observar seu desempenho em vários benchmarks. Vamos examinar algumas métricas-chave:

Mistral Grande 2 Benchmarks

Esta tabela apresenta a proficiência de vários LLMs em diferentes linguagens de programação. Modelos como Mistral Giant 2 (24.07), Llama 3.1 (405B) e GPT-4o são avaliados em sua capacidade de entender e gerar código em linguagens como Python, C++, Bash, Java, TypeScript, PHP e C#.

O Llama 3.1 405B mostra um desempenho forte em várias linguagens, com pontuações particularmente altas em Python e Java. Essa proficiência é crítica para aplicativos que envolvem geração de código, depuração e desenvolvimento de software program, tornando esses modelos ferramentas valiosas para desenvolvedores.

https://mistral.ai/information/mistral-large-2407/

https://mistral.ai/news/mistral-large-2407/

https://mistral.ai/information/mistral-large-2407/

Benchmarks do Mistral NeMo

Embora pontuações de benchmark específicas para Mistral NeMo não sejam fornecidas nas informações fornecidas, ele é descrito como oferecendo desempenho de última geração em sua categoria de tamanho. O modelo supera outros modelos pré-treinados de código aberto recentes, como Gemma 2 9B e Llama 3 8B em várias tarefas.

Desempenho do modelo base Mistral NeMo comparado ao Gemma 2 9B e ao Llama 3 8B.

Desempenho do modelo base Mistral NeMo comparado ao Gemma 2 9B e ao Llama 3 8B.

Proezas multilíngues e de codificação

Um dos recursos de destaque do Mistral Giant 2 e do Mistral NeMo são suas capacidades multilíngues excepcionais. Isso é particularmente importante em nosso mundo cada vez mais globalizado, onde os modelos de IA precisam entender e gerar conteúdo em vários idiomas.

O Mistral Giant 2, por exemplo, suporta dezenas de idiomas, incluindo francês, alemão, espanhol, italiano, português, árabe, hindi, russo, chinês, japonês e coreano. Essa proficiência multilíngue se estende além da mera tradução, abrangendo compreensão e geração diferenciadas nesses idiomas.

Para ilustrar isso, vejamos um exemplo do Mistral Giant 2 gerando texto em vários idiomas:

(INST) Generate a brief greeting in English, French, German, Spanish, and Japanese. (/INST)

Aqui estão algumas saudações curtas nos idiomas solicitados:

Olá! Como você está hoje?
Inglês: Olá! Como você está hoje ?
Alemão: Olá! Como você está hoje?
Inglês: Olá! Como estas hoje?
Inglês: Olá! Como vai voce hoje?

(INSTRUÇÕES)

Agora, escreva um programa simples “Howdy, World!” em Python, Java e JavaScript. (/INST)

Esses exemplos demonstram os recursos de geração de texto multilíngue e codificação do modelo.

Ambos os modelos estão disponíveis em várias plataformas, como Hugging Face, plataforma Mistral AI e principais provedores de serviços de nuvem, como Google Cloud Platform, Azure AI Studio, Amazon Bedrock e IBM watsonx.ai. (Mistral AI | Frontier AI em suas mãos)​​​.

O paradigma agente e a chamada de funções

Tanto o Mistral Giant 2 quanto o Mistral NeMo adotam um design centrado em agentes, o que representa uma mudança de paradigma em como interagimos com modelos de IA. Essa abordagem se concentra em construir modelos capazes de interagir com seu ambiente, tomar decisões e executar ações para atingir objetivos específicos.

Um recurso essencial que permite esse paradigma é o suporte nativo para chamada de função. Isso permite que os modelos interajam dinamicamente com ferramentas e serviços externos, expandindo efetivamente suas capacidades além da simples geração de texto.

Vejamos um exemplo de como a chamada de função pode funcionar com o Mistral Giant 2:

 
from mistral_common.protocol.instruct.tool_calls import Perform, Device
from mistral_inference.transformer import Transformer
from mistral_inference.generate import generate
from mistral_common.tokens.tokenizers.mistral import MistralTokenizer
from mistral_common.protocol.instruct.messages import UserMessage
from mistral_common.protocol.instruct.request import ChatCompletionRequest
# Initialize tokenizer and mannequin
mistral_models_path = "path/to/mistral/fashions"  # Guarantee this path is right
tokenizer = MistralTokenizer.from_file(f"{mistral_models_path}/tokenizer.mannequin.v3")
mannequin = Transformer.from_folder(mistral_models_path)
# Outline a operate for getting climate info
weather_function = Perform(
    title="get_current_weather",
    description="Get the present climate",
    parameters={
        "sort": "object",
        "properties": {
            "location": {
                "sort": "string",
                "description": "The town and state, e.g. San Francisco, CA",
            },
            "format": {
                "sort": "string",
                "enum": ("celsius", "fahrenheit"),
                "description": "The temperature unit to make use of. Infer this from the consumer's location.",
            },
        },
        "required": ("location", "format"),
    },
)
# Create a chat completion request with the operate
completion_request = ChatCompletionRequest(
    instruments=(Device(operate=weather_function)),
    messages=(
        UserMessage(content material="What is the climate like at the moment in Paris?"),
    ),
)
# Encode the request
tokens = tokenizer.encode_chat_completion(completion_request).tokens
# Generate a response
out_tokens, _ = generate((tokens), mannequin, max_tokens=256, temperature=0.7, eos_id=tokenizer.instruct_tokenizer.tokenizer.eos_id)
end result = tokenizer.decode(out_tokens(0))
print(end result)

Neste exemplo, definimos uma função para obter informações meteorológicas e a incluímos em nossa solicitação de conclusão de chat. O modelo pode então usar essa função para recuperar dados meteorológicos em tempo actual, demonstrando como ele pode interagir com sistemas externos para fornecer informações mais precisas e atualizadas.

Tekken: Um Tokenizador Mais Eficiente

Mistral NeMo apresenta um novo tokenizer chamado Tekken, que é baseado no Tiktoken e treinado em mais de 100 idiomas. Este novo tokenizer oferece melhorias significativas na eficiência de compressão de texto em comparação com tokenizers anteriores como o SentencePiece.

Os principais recursos do Tekken incluem:

  • Compressão 30% mais eficiente para código-fonte, chinês, italiano, francês, alemão, espanhol e russo
  • Compressão 2x mais eficiente para coreano
  • Compressão 3x mais eficiente para árabe
  • Supera o tokenizador Llama 3 na compactação de texto para aproximadamente 85% de todos os idiomas

Essa eficiência de tokenização melhorada se traduz em melhor desempenho do modelo, especialmente ao lidar com texto multilíngue e código-fonte. Ela permite que o modelo processe mais informações dentro da mesma janela de contexto, levando a saídas mais coerentes e contextualmente relevantes.

Licenciamento e Disponibilidade

Mistral Giant 2 e Mistral NeMo têm modelos de licenciamento diferentes, refletindo seus casos de uso pretendidos:

Mistral Grande 2

  • Lançado sob a licença de pesquisa Mistral
  • Permite uso e modificação para fins de pesquisa e não comerciais
  • O uso comercial requer uma licença comercial Mistral

Mistral NeMo

  • Lançado sob a licença Apache 2.0
  • Permite uso aberto, incluindo aplicações comerciais

Ambos os modelos estão disponíveis em diversas plataformas:

  • Rosto Abraçando: Os pesos para os modelos base e de instrução estão hospedados aqui
  • IA Mistral: Disponível como mistral-large-2407 (Mistral Grande 2) e open-mistral-nemo-2407 (Mistral NeMo)
  • Provedores de serviços em nuvem: Disponível no Vertex AI da Google Cloud Platform, Azure AI Studio, Amazon Bedrock e IBM watsonx.ai
https://mistral.ai/news/mistral-large-2407/

https://mistral.ai/information/mistral-large-2407/

Para desenvolvedores que desejam usar esses modelos, aqui está um exemplo rápido de como carregar e usar o Mistral Giant 2 com transformadores Hugging Face:

 
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "mistralai/Mistral-Giant-Instruct-2407"
gadget = "cuda"  # Use GPU if obtainable
# Load the mannequin and tokenizer
mannequin = AutoModelForCausalLM.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)
# Transfer the mannequin to the suitable gadget
mannequin.to(gadget)
# Put together enter
messages = (
    {"position": "system", "content material": "You're a useful AI assistant."},
    {"position": "consumer", "content material": "Clarify the idea of neural networks in easy phrases."}
)
# Encode enter
input_ids = tokenizer.apply_chat_template(messages, return_tensors="pt").to(gadget)
# Generate response
output_ids = mannequin.generate(input_ids, max_new_tokens=500, do_sample=True)
# Decode and print the response
response = tokenizer.decode(output_ids(0), skip_special_tokens=True)
print(response)

Este código demonstra como carregar o modelo, preparar a entrada em um formato de bate-papo, gerar uma resposta e decodificar a saída.

Limitações e considerações éticas

Embora o Mistral Giant 2 e o Mistral NeMo representem avanços significativos na tecnologia de IA, é essential reconhecer suas limitações e as considerações éticas que envolvem seu uso:

  1. Potencial para vieses: Como todos os modelos de IA treinados em grandes conjuntos de dados, esses modelos podem herdar e amplificar vieses presentes em seus dados de treinamento. Os usuários devem estar cientes disso e implementar salvaguardas apropriadas.
  2. Falta de Verdadeira Compreensão: Apesar de suas capacidades impressionantes, esses modelos não possuem entendimento ou consciência verdadeiros. Eles geram respostas com base em padrões em seus dados de treinamento, o que pode às vezes levar a informações que parecem plausíveis, mas incorretas.
  3. Preocupações com a privacidade:Ao usar esses modelos, especialmente em aplicativos que lidam com informações confidenciais, é essential considerar as implicações de privacidade e segurança dos dados.

Conclusão

O ajuste fino de modelos avançados como Mistral Giant 2 e Mistral NeMo apresenta uma oportunidade poderosa para alavancar IA de ponta para uma variedade de aplicações, desde chamada de função dinâmica até processamento multilíngue eficiente. Aqui estão algumas dicas práticas e insights importantes para manter em mente:

  1. Entenda seu caso de uso: Defina claramente as tarefas e metas específicas que você quer que seu modelo alcance. Esse entendimento guiará sua escolha de modelo e abordagem de ajuste fino, sejam os recursos robustos de chamada de função do Mistral ou seu eficiente processamento de texto multilíngue.
  2. Otimizar para eficiência: Make the most of o tokenizer Tekken para melhorar significativamente a eficiência da compressão de texto, especialmente se seu aplicativo envolver o manuseio de grandes volumes de texto ou vários idiomas. Isso aumentará o desempenho do modelo e reduzirá os custos computacionais.
  3. Alavancagem de chamada de função: Adote o paradigma agentic incorporando chamadas de função em suas interações de modelo. Isso permite que sua IA interaja dinamicamente com ferramentas e serviços externos, fornecendo saídas mais precisas e acionáveis. Por exemplo, integrar APIs de clima ou outras fontes de dados externas pode aumentar significativamente a relevância e a utilidade das respostas do seu modelo.
  4. Escolha a plataforma certa: Garanta que você implemente seus modelos em plataformas que suportem seus recursos, como o Vertex AI do Google Cloud Platform, o Azure AI Studio, o Amazon Bedrock e o IBM watsonx.ai. Essas plataformas fornecem a infraestrutura e as ferramentas necessárias para maximizar o desempenho e a escalabilidade de seus modelos de IA.

Seguindo essas dicas e utilizando os exemplos de código fornecidos, você pode aproveitar efetivamente o poder do Mistral Giant 2 e do Mistral NeMo para suas necessidades específicas.

join the future newsletter Unite AI Mobile Newsletter 1

Artigos relacionados

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button