Introdução geral
O Bonsai é um modelo de linguagem de código aberto desenvolvido pela deepgrove-ai com um tamanho de parâmetro de 500 milhões, usando pesos ternários. Ele se baseia na arquitetura Llama e Mistral O classificador foi projetado com uma camada linear adaptada para suportar pesos de três valores. O modelo foi treinado principalmente com os conjuntos de dados DCLM-Pro e Fineweb-Edu, totalizando menos de 5 bilhões de tokens. Apesar da pequena quantidade de dados de treinamento, o Bonsai tem um bom desempenho e é um dos primeiros modelos leves de valor triplo a atingir níveis competitivos. Os usuários podem chamá-lo por meio da biblioteca Huggingface Transformers. O código do projeto está disponível publicamente no GitHub para desenvolvedores que exploram modelos eficientes de IA.
Lista de funções
- Operação leve e eficienteO modelo é pequeno, rápido e adequado para dispositivos com poucos recursos.
- geração de linguagem naturalSuporte para gerar textos fluentes que podem ser usados para diálogos, perguntas e respostas e outras tarefas.
- acesso de código abertoO código completo está disponível no GitHub, permitindo que os usuários façam download, modifiquem e otimizem.
- Compatível com HuggingfaceIntegração perfeita com a biblioteca Transformers para facilitar o carregamento e a implementação.
- excelente desempenhoDesempenho comparável a modelos comparáveis com uma pequena quantidade de dados de treinamento.
Usando a Ajuda
Processo de instalação
Para usar o Bonsai, primeiro você precisa configurar o ambiente de tempo de execução. Veja a seguir as etapas detalhadas:
- Verificação do ambiente Python
Certifique-se de que o Python 3.8 ou posterior esteja instalado em seu computador. Digite no terminal:
python --version
Caso não o tenha, você pode baixá-lo no site do Python.
- Instalação da biblioteca de transformadores
O Bonsai se baseia na biblioteca Transformers da Huggingface. Execute-o em um terminal:
pip install transformers
Após a instalação, use o pip show transformers
Confirme a versão.
- Download de modelos de bonsai
O modelo está hospedado no Huggingface. Recomenda-se que eles sejam carregados automaticamente por meio de código (veja abaixo), ou podem ser baixados manualmente. - Instalar dependências opcionais
Se for necessário um ajuste fino ou uma aceleração, instale otorch
responder cantandodatasets
::
pip install torch datasets
Como usar
O Bonsai é chamado usando um script Python. Aqui estão as etapas básicas:
Modelos de carregamento e divisores
Execute o seguinte código em Python:
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("deepgrove/Bonsai", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("deepgrove/Bonsai", trust_remote_code=True)
Gerar texto
Insira o texto e gere os resultados:
text = "中国的首都是哪里?"
inputs = tokenizer(text, return_tensors="pt")
outputs = model.generate(**inputs, max_length=100)
result = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(result)
O resultado pode ser "A capital da China é Pequim". .
Parâmetros de ajuste
Os parâmetros de geração podem ser modificados, por exemplo:
outputs = model.generate(**inputs, max_length=50, temperature=0.7)
max_length
Comprimento da saída: Defina o comprimento da saída.temperature
Controle da aleatoriedade da saída; quanto menor o valor, mais estável ela é.
Operação da função em destaque
operação eficiente
A ponderação de três valores do Bonsai faz com que ele funcione bem com precisão de 16 bits. Ele pode ser acelerado automaticamente se houver uma GPU disponível:
import torch
print(torch.cuda.is_available()) # 返回 True 表示 GPU 可用
A GPU melhorará significativamente o desempenho, mas a CPU funcionará muito bem.
Avaliação de desempenho
O Bonsai tem um bom desempenho em vários benchmarks. Aqui estão os números oficiais:
modelagem | ARC-c | ARC-e | HS. | OBQA | PiQA | Wino. | MMLU | pontuação média |
---|---|---|---|---|---|---|---|---|
MobiLlama 0.5B | 26.62 | 46.68 | 51.66 | 30.00 | 71.65 | 54.50 | 28.61 | 44.25 |
Qwen 2 0,5B | 28.84 | 50.29 | 49.12 | 33.00 | 69.26 | 56.99 | 31.78 | 45.61 |
MobileLLM 600M | 29.01 | 56.65 | 55.35 | 34.00 | 71.65 | 59.75 | 31.40 | 48.13 |
Qwen 2.5 0.5B | 32.25 | 58.29 | 52.18 | 35.40 | 69.91 | 56.12 | 33.40 | 48.22 |
Bonsai | 33.36 | 57.95 | 48.04 | 34.00 | 70.24 | 54.85 | 30.28 | 46.96 |
Esses testes, que incluem ARC, OBQA, MMLU e outros, mostram que o Bonsai está entre os melhores modelos leves. |
Ajuste fino do modelo
O Bonsai não é ajustado para tarefas de geração de uso geral. Ele pode ser ajustado se precisar ser otimizado para usos específicos (por exemplo, questionários):
- Prepare os dados: use um arquivo de texto ou
datasets
Carregamento da biblioteca. - Parâmetros de configuração: com
TrainingArguments
Configuração. - Modelos de treinamento:
from transformers import Trainer, TrainingArguments
training_args = TrainingArguments(
output_dir="./bonsai_finetuned",
num_train_epochs=3,
per_device_train_batch_size=4
)
trainer = Trainer(model=model, args=training_args, train_dataset=your_dataset)
trainer.train()
Para obter mais detalhes, consulte Documentação do Huggingface.
advertência
- Limites de precisãoNo momento, apenas a operação de precisão de 16 bits é suportada, e a equipe está desenvolvendo o suporte à precisão mista.
- Ajuste não comandadoO modelo padrão não é adequado para uso direto em tarefas de comando complexas e precisa ser ajustado.
- Requisitos de hardwareCPUs normais podem executá-lo, GPUs não são necessárias, mas recomendadas.
cenário do aplicativo
- Auxílios educacionais
O bonsai pode responder a perguntas de conhecimento básico, como "Qual é a capital da França?". O Bonsai pode responder a perguntas de conhecimento básico, como "Onde fica a capital da França?". As respostas são geradas rapidamente após a digitação e são adequadas para o aprendizado. - Aplicativos de dispositivos de borda
O modelo é leve e adequado para ser implantado em telefones celulares ou dispositivos incorporados para processamento de idiomas localizados. - Estudos de modelagem
Os pesquisadores podem usá-lo para testar o potencial das técnicas de ponderação de três valores e explorar o design eficiente do modelo de IA.
QA
- Quais são os principais pontos fortes da Bonsai?
Ele usa a técnica de ponderação de três valores para obter uma eficiência leve e alta, com menos dados de treinamento, mas com desempenho forte, adequado para cenários com restrição de recursos. - Precisa de uma GPU?
A CPU não é necessária para executá-lo, mas a GPU o acelerará. - Ele pode ser usado diretamente para o diálogo?
O modelo padrão não exige ajuste, e é recomendável fazer o ajuste fino antes de usá-lo para uma tarefa específica.