Mistral 7B: O Amanhecer de uma Nova Era do LLM
Published on
O panorama de IA não é estranho a inovações, mas de tempos em tempos, uma maravilha como o Mistral 7B surge e estabelece novos padrões. Desenvolvido pela Mistral AI, esse LLM não trata apenas de tamanho, mas de eficiência, precisão e versatilidade.
Quer saber das últimas notícias sobre os LLMs? Confira o ranking mais recente dos LLMs!
Mistral 7B: O que é?
O lançamento do Mistral 7B tem despertado excitação e curiosidade nas comunidades de IA e PNL. Sua presença em plataformas como Hugging Face e a extensa documentação fornecida pela Mistral AI têm facilitado sua adoção em vários setores.
Referenciais de Desempenho
Quando se trata de LLMs, o desempenho é fundamental. O Mistral 7B provou sua competência ao superar concorrentes, incluindo o renomado Llama 2 13B. Mas os números apenas arranham a superfície. A verdadeira essência do Mistral 7B reside em sua arquitetura e recursos intricados.
Os referenciais de desempenho do Mistral 7B, especialmente sua superioridade em relação a modelos como o LLaMA 1 34B em código, matemática e raciocínio, o tornaram um favorito entre desenvolvedores e pesquisadores. Sua capacidade de se aproximar do desempenho do CodeLlama 7B em tarefas relacionadas a código reforça ainda mais suas capacidades.
Adaptabilidade e Versatilidade do Mistral 7B
Um dos recursos marcantes do Mistral 7B é sua adaptabilidade. Seja para chatbots, geração de conteúdo, completude de código ou pesquisa, o Mistral 7B tem mostrado sua versatilidade em uma variedade de aplicações.
Mistral 7B: Configuração e Implantação
Para aqueles interessados em aproveitar o poder do Mistral 7B, aqui está um guia detalhado:
1. Experiência Online com o Mistral 7B:
Antes de mergulhar na configuração, familiarize-se com o Mistral 7B através de sua Demonstração Online (opens in a new tab).
2. Adquirindo o Mistral 7B:
O modelo pode ser baixado aqui usando Torrent (opens in a new tab). O código de lançamento é ab979f50d7d406ab8d0b07d09806c72c
.
3. Executando o Mistral 7B com Docker:
Para aqueles com um host habilitado para GPU, o Mistral 7B pode ser executado usando o Docker. Aqui está um código de exemplo para executar o modelo usando o Docker:
docker run --gpus all \
-e HF_TOKEN=$HF_TOKEN -p 8000:8000 \
ghcr.io/mistralai/harmattan/vllm-public:latest \
--host 0.0.0.0 \
--model mistralai/Mistral-7B-v0.1
Observação: Substitua $HF_TOKEN
pelo seu token de acesso de usuário do Hugging Face.
4. Implantação Direta com vLLM:
Para aqueles que preferem uma implantação direta, o Mistral 7B suporta vLLM em hosts habilitados para GPU com Cuda 11.8. Aqui está um guia passo a passo:
- Instalação:
Instale o vLLM usando o pip:pip install vllm
- Login no Hugging Face Hub:
Faça login no Hugging Face hub:huggingface-cli login
- Iniciando o Servidor:
Use o seguinte comando para iniciar o servidor:python -u -m vllm.entrypoints.openai.api_server --host 0.0.0.0 --model mistralai/Mistral-7B-v0.1
Inovações Arquiteturais do Mistral 7B
O Mistral 7B se destaca não apenas por seu desempenho, mas também por suas inovações arquiteturais únicas. Vamos explorá-las em detalhes:
Atendimento de Janela Deslizante (SWA)
A SWA permite que cada camada do modelo atenda aos 4.096 estados ocultos anteriores. Esse mecanismo oferece um custo computacional linear, proporcional ao comprimento da sequência da janela deslizante. A vantagem é evidente em aplicações em tempo real, onde tempos de resposta rápidos são essenciais.
Atendimento de Consulta Agrupada (GQA)
O GQA é projetado para acelerar a inferência, garantindo que o Mistral 7B possa responder rapidamente, tornando-o adequado para aplicações que demandam interações em tempo real.
Configurando e Implentando o Mistral 7B
O Mistral 7B oferece flexibilidade em sua implantação. Se você deseja executá-lo em sua máquina local ou implantá-lo em uma plataforma de nuvem, aqui está um guia abrangente:
Executando o Mistral 7B com Docker
Para aqueles com um host habilitado para GPU, o Mistral 7B pode ser executado usando o Docker. Aqui está um guia passo a passo:
-
Baixar a Imagem Docker:
Primeiro, você precisa baixar a imagem Docker que inclui o vLLM, um servidor de inferência Python rápido, junto com tudo o que é necessário para executar o Mistral 7B.docker pull ghcr.io/mistralai/harmattan/vllm-public:latest
-
Executar o Modelo usando o Docker:
Assim que a imagem for baixada, você pode executar o modelo usando o seguinte comando:docker run --gpus all \ -e HF_TOKEN=$HF_TOKEN -p 8000:8000 \ ghcr.io/mistralai/harmattan/vllm-public:latest \ --host 0.0.0.0 \ --model mistralai/Mistral-7B-v0.1
Observação: Substitua
$HF_TOKEN
pelo seu token de acesso de usuário do Hugging Face.
Implantação Direta com vLLM
Para implantação direta, o Mistral 7B suporta vLLM em hosts habilitados para GPU com Cuda 11.8. Aqui está como configurá-lo:
-
Instalação:
Instale o vLLM usando o pip:pip install vllm
-
Login no Hugging Face Hub:
Antes de usar o modelo, você precisa fazer login no Hugging Face hub:huggingface-cli login
-
Iniciar o Servidor:
Com os pré-requisitos no lugar, inicie o servidor usando o seguinte comando:python -u -m vllm.entrypoints.openai.api_server --host 0.0.0.0 --model mistralai/Mistral-7B-v0.1
Como Executar o Mistral 7B Localmente
Assim que o Mistral 7B estiver configurado e em execução, você pode interagir com ele. Etapas detalhadas sobre como usar o modelo podem ser encontradas na página Interagindo com o modelo (opens in a new tab) . Este guia fornece informações sobre como enviar solicitações para o modelo, entender as respostas e ajustar o modelo para tarefas específicas.
Configurando o Ambiente
Antes de interagir com o Mistral 7B, é necessário configurar o ambiente:
-
Instalar o Pacote Python OpenAI:
Este pacote facilita as interações com o modelo.pip install openai
-
Configurar o Módulo OpenAI:
Aponte o módulo para o servidor onde o Mistral 7B está implantado.import openai openai.api_base = "http://your-server-ip-or-hostname:8000/v1" openai.api_key = "none" # o servidor vLLM não requer autenticação
Gerando Completos de Texto com o Mistral 7B
O Mistral 7B pode completar prompts fornecidos, fornecendo um texto coerente e relevante em termos de contexto. Veja como disparar um completo:
-
Código de Exemplo para Completar Texto:
completion = openai.Completion.create( model="mistralai/Mistral-7B-Instruct-v0.1", prompt="O mistral é", temperature=0.7, max_tokens=200, stop="." ) print(completion.to_dict_recursive())
Este código irá retornar um completo como este:
{ 'id': 'cmpl-87f6980633bb45f5aecd551bc35335e6', 'object': 'text_completion', 'created': 1695651536, 'model': 'mistralai/Mistral-7B-Instruct-v0.1', 'choices': [{ 'index': 0, 'text': ' um vento nordeste frio e seco que sopra sobre o Mar Mediterrâneo', 'logprobs': None, 'finish_reason': 'stop' }], 'usage': {'prompt_tokens': 5, 'total_tokens': 23, 'completion_tokens': 18} }
Engajando em Conversas Interativas
O Mistral 7B também pode ser usado para conversas interativas, fornecendo respostas de conversação para consultas do usuário.
- Código de Exemplo para Interação de Conversa:
messages = [{"role": "user", "content": "Qual é o comando bash para listar todos os arquivos em uma pasta e ordená-los por última modificação?"}] chat_completion = openai.ChatCompletion.create( model="mistralai/Mistral-7B-Instruct-v0.1", temperature=1, max_tokens=1024, messages=messages )
Este código inicia uma conversa com o modelo, e o modelo fornecerá uma resposta relevante à consulta do usuário.
Implantação do Mistral 7B com o SkyPilot
O SkyPilot oferece uma experiência perfeita para implantar LLMs como o Mistral 7B em várias plataformas de nuvem. Promete economia máxima de custos, disponibilidade ótima de GPU e execução gerenciada. Aqui está um guia detalhado sobre a implantação do Mistral 7B usando o SkyPilot:
Configuração do SkyPilot
-
Criação do Arquivo de Configuração:
Comece criando um arquivo de configuração que instrua o SkyPilot sobre os detalhes de implantação do seu servidor de inferência. Isso utilizará o contêiner docker pré-construído fornecido pelo Mistral AI. A configuração deve se parecer com isso:envs: MODEL_NAME: mistralai/Mistral-7B-v0.1 resources: cloud: aws accelerators: V100:1 ports: - 8000 run: | docker run --gpus all -p 8000:8000 ghcr.io/mistralai/harmattan/vllm-public:latest \\ --host 0.0.0.0 \\ --model $MODEL_NAME \\ --tensor-parallel-size $SKYPILOT_NUM_GPUS_PER_NODE
-
Configuração de Variáveis de Ambiente:
Você precisará definir variáveis de ambiente específicas para que o SkyPilot possa buscar o contêiner do servidor de inferência e os pesos do modelo. -
Iniciando o Servidor de Inferência:
Com as variáveis de ambiente no lugar, você pode iniciar o servidor de inferência usando o seguinte comando:sky launch mistral-7b-v0.1.yaml --region us-east-1
CUIDADO: Implantar dessa maneira torna o modelo acessível globalmente. É crucial protegê-lo. Você pode apenas expô-lo em sua rede privada (modificando a opção
--host
do Docker), adicionar um balanceador de carga com um mecanismo de autenticação na frente, ou configurar a rede da sua instância adequadamente.
Quotas de Uso e Provedores de Nuvem
É essencial observar que muitos provedores de nuvem exigem solicitações de acesso explícitas para instâncias de GPU poderosas. Para obter orientações sobre isso, você pode consultar o guia do SkyPilot (opens in a new tab).
Conclusão: Futuro do Mistral AI
Enquanto o Mistral 7B é um marco significativo, a jornada do Mistral AI não termina aqui. O compromisso da empresa em empurrar os limites do Processamento de Linguagem Natural (PLN) e IA garante que possamos esperar mais inovações, melhorias e modelos revolucionários no futuro.
Perguntas Frequentes (FAQs)
-
O que é o Mistral 7B?
O Mistral 7B é um Modelo de Linguagem Grande (LLM) de última geração desenvolvido pela Mistral AI. Ele foi projetado para superar muitos modelos existentes em tarefas relacionadas a código, matemática e raciocínio. -
Como posso implantar o Mistral 7B em minha máquina local ou em nuvem?
O Mistral 7B oferece opções flexíveis de implantação. Você pode executá-lo localmente usando o Docker ou implantá-lo em plataformas de nuvem como AWS, GCP ou Azure usando o SkyPilot. -
O Mistral 7B é de código aberto?
Sim, o Mistral 7B é lançado sob a licença Apache 2.0, tornando-o de código aberto e acessível à comunidade em geral. -
Como o Mistral 7B se compara a outros LLMs em termos de desempenho?
O Mistral 7B tem demonstrado um desempenho superior em relação a modelos como o LLaMA 1 34B e chega perto das capacidades do CodeLlama 7B, especialmente em tarefas relacionadas a código.
Deseja saber as últimas notícias sobre LLM? Confira o último ranking de LLM!