Inglês | 中文
? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio
? Faça perguntas ou discuta ideias no GitHub
Junte-se a nós em ? Discord ou WeChat
Confira o relatório técnico Yi
Cresça no Yi Learning Hub
? Aprenda no Yi Tech Blog
? Os modelos da série Yi são a próxima geração de modelos de linguagem grande de código aberto treinados do zero pela 01.AI.
? Visados como um modelo de linguagem bilíngue e treinados em corpus multilíngue 3T, os modelos da série Yi se tornam um dos LLM mais fortes do mundo, mostrando-se promissores em compreensão de linguagem, raciocínio de bom senso, compreensão de leitura e muito mais. Por exemplo,
O modelo Yi-34B-Chat ficou em segundo lugar (seguindo o GPT-4 Turbo) , superando outros LLMs (como GPT-4, Mixtral, Claude) no AlpacaEval Leaderboard (com base em dados disponíveis até janeiro de 2024).
O modelo Yi-34B ficou em primeiro lugar entre todos os modelos de código aberto existentes (como Falcon-180B, Llama-70B, Claude) em inglês e chinês em vários benchmarks, incluindo Hugging Face Open LLM Leaderboard (pré-treinado) e C-Eval (com base em dados disponíveis até novembro de 2023).
(Créditos ao Llama) Obrigado às comunidades de código aberto Transformer e Llama, pois reduzem os esforços necessários para construir do zero e permitem a utilização das mesmas ferramentas dentro do ecossistema de IA.
DR
Os modelos da série Yi adotam a mesma arquitetura do Llama, mas NÃO são derivados do Llama.
Tanto Yi quanto Llama são baseados na estrutura Transformer, que tem sido a arquitetura padrão para grandes modelos de linguagem desde 2018.
Baseado na arquitetura Transformer, o Llama se tornou uma nova pedra angular para a maioria dos modelos de código aberto de última geração devido à sua excelente estabilidade, convergência confiável e compatibilidade robusta. Isso posiciona o Llama como a estrutura fundamental reconhecida para modelos incluindo Yi.
Graças às arquiteturas Transformer e Llama, outros modelos podem aproveitar o seu poder, reduzindo o esforço necessário para construir do zero e permitindo a utilização das mesmas ferramentas dentro dos seus ecossistemas.
Porém, os modelos da série Yi NÃO são derivados do Llama, pois não utilizam os pesos do Llama.
Como a estrutura do Llama é empregada pela maioria dos modelos de código aberto, os principais fatores para determinar o desempenho do modelo são conjuntos de dados de treinamento, pipelines de treinamento e infraestrutura de treinamento.
Desenvolvendo-se de forma única e proprietária, Yi criou de forma independente seus próprios conjuntos de dados de treinamento de alta qualidade, pipelines de treinamento eficientes e infraestrutura de treinamento robusta inteiramente do zero. Este esforço levou a um excelente desempenho, com os modelos da série Yi ficando logo atrás do GPT4 e ultrapassando o Llama na tabela de classificação Alpaca em dezembro de 2023.
[Voltar ao topo ⬆️]
Yi-9B-200K
é de código aberto e está disponível ao público.Yi-9B
é de código aberto e está disponível ao público.Yi-9B
se destaca como o melhor desempenho entre uma variedade de modelos de código aberto de tamanho semelhante (incluindo Mistral-7B, SOLAR-10.7B, Gemma-7B, DeepSeek-Coder-7B-Base-v1.5 e mais), particularmente excelente em código, matemática, raciocínio de bom senso e compreensão de leitura.Yi-VL-34B
e Yi-VL-6B
, são de código aberto e estão disponíveis ao público.Yi-VL-34B
ficou em primeiro lugar entre todos os modelos de código aberto existentes nos benchmarks mais recentes, incluindo MMMU e CMMMU (com base em dados disponíveis até janeiro de 2024).Yi-34B-Chat
Yi-34B-Chat-4bits
Yi-34B-Chat-8bits
Yi-6B-Chat
Yi-6B-Chat-4bits
Yi-6B-Chat-8bits
Você pode experimentar alguns deles interativamente em:
Yi-6B-200K
e Yi-34B-200K
, são de código aberto e estão disponíveis ao público.Yi-6B
e Yi-34B
, são de código aberto e estão disponíveis ao público.[Voltar ao topo ⬆️]
Os modelos Yi vêm em vários tamanhos e atendem a diferentes casos de uso. Você também pode ajustar os modelos Yi para atender às suas necessidades específicas.
Se você deseja implantar modelos Yi, certifique-se de atender aos requisitos de software e hardware.
Modelo | Download |
---|---|
Yi-34B-Bate-papo | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
Yi-34B-Chat-4bits | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
Yi-34B-Bate-papo-8bits | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
Yi-6B-Bate-papo | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
Yi-6B-Chat-4bits | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
Yi-6B-Bate-papo-8bits | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
- Os modelos da série de 4 bits são quantizados por AWQ.
- Os modelos da série de 8 bits são quantizados pelo GPTQ
- Todos os modelos quantizados têm uma baixa barreira de uso, pois podem ser implantados em GPUs de consumo (por exemplo, 3090, 4090).
Modelo | Download |
---|---|
Yi-34B | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
Yi-34B-200K | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
Yi-9B | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
Yi-9B-200K | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
Yi-6B | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
Yi-6B-200K | • ? Abraçando o Rosto • ? Escopo do Modelo • ? modelo sábio |
- 200k equivale aproximadamente a 400.000 caracteres chineses.
- Se você quiser usar a versão anterior do Yi-34B-200K (lançada em 5 de novembro de 2023), execute git checkout 069cd341d60f4ce4b07ec394e82b79e94f656cf
para baixar o peso.
Modelo | Introdução | Janela de contexto padrão | Tokens pré-treinados | Data dos dados de treinamento |
---|---|---|---|---|
Modelos da série 6B | Eles são adequados para uso pessoal e acadêmico. | 4K | 3T | Até junho de 2023 |
Modelos da série 9B | É o melhor em codificação e matemática nos modelos da série Yi. | Yi-9B é continuamente treinado com base em Yi-6B, usando tokens 0,8T. | ||
Modelos da série 34B | Eles são adequados para fins pessoais, acadêmicos e comerciais (especialmente para pequenas e médias empresas). É uma solução econômica, acessível e equipada com capacidade emergente. | 3T |
Para modelos de bate-papo
No entanto, esta maior diversidade pode amplificar certas questões existentes, incluindo:
[Voltar ao topo ⬆️]
Dica : Se você quiser começar com o modelo Yi e explorar diferentes métodos de inferência, consulte o Yi Cookbook.
Selecione um dos seguintes caminhos para começar sua jornada com Yi!
Se você preferir implantar modelos Yi localmente,
?♀️ e você tiver recursos suficientes (por exemplo, NVIDIA A800 80GB), poderá escolher um dos seguintes métodos:
?♀️ e você tem recursos limitados (por exemplo, um MacBook Pro), pode usar llama.cpp.
Se preferir não implantar modelos Yi localmente, você pode explorar os recursos do Yi usando qualquer uma das opções a seguir.
Se quiser explorar mais recursos do Yi, você pode adotar um destes métodos:
APIs Yi (oficial Yi)
APIs Yi (réplica)
Se quiser conversar com Yi com opções mais personalizáveis (por exemplo, prompt do sistema, temperatura, penalidade de repetição, etc.), você pode tentar uma das seguintes opções:
Yi-34B-Chat-Playground (oficial Yi)
Yi-34B-Chat-Playground (réplica)
Se quiser bater um papo com Yi, você pode usar um destes serviços online, que oferecem uma experiência de usuário semelhante:
Yi-34B-Chat (oficial de Yi em Hugging Face)
Yi-34B-Chat (beta oficial do Yi)
[Voltar ao topo ⬆️]
Este tutorial orienta você em cada etapa da execução do Yi-34B-Chat localmente em um A800 (80G) e, em seguida, da realização de inferência.
Certifique-se de que o Python 3.10 ou uma versão posterior esteja instalado.
Se você deseja executar outros modelos Yi, consulte os requisitos de software e hardware.
Para configurar o ambiente e instalar os pacotes necessários, execute o seguinte comando.
git clone https://github.com/01-ai/Yi.git
cd yi
pip install -r requirements.txt
Você pode baixar os pesos e o tokenizer dos modelos Yi das seguintes fontes:
Você pode realizar inferência com Yi chat ou modelos básicos conforme abaixo.
Crie um arquivo chamado quick_start.py
e copie o conteúdo a seguir nele.
from transformers import AutoModelForCausalLM , AutoTokenizer
model_path = ''
tokenizer = AutoTokenizer . from_pretrained ( model_path , use_fast = False )
# Since transformers 4.35.0, the GPT-Q/AWQ model can be loaded using AutoModelForCausalLM.
model = AutoModelForCausalLM . from_pretrained (
model_path ,
device_map = "auto" ,
torch_dtype = 'auto'
). eval ()
# Prompt content: "hi"
messages = [
{ "role" : "user" , "content" : "hi" }
]
input_ids = tokenizer . apply_chat_template ( conversation = messages , tokenize = True , add_generation_prompt = True , return_tensors = 'pt' )
output_ids = model . generate ( input_ids . to ( 'cuda' ))
response = tokenizer . decode ( output_ids [ 0 ][ input_ids . shape [ 1 ]:], skip_special_tokens = True )
# Model response: "Hello! How can I assist you today?"
print ( response )
Execute quick_start.py
.
python quick_start.py
Então você pode ver uma saída semelhante a esta abaixo. ?
Hello ! How can I assist you today ?
Yi-34B
As etapas são semelhantes ao pip - Realizar inferência com o modelo de chat Yi.
Você pode usar o arquivo existente text_generation.py
.
python demo/text_generation.py --model < your-model-path >
Então você pode ver uma saída semelhante a esta abaixo. ?
Dica : Deixe-me contar uma história interessante sobre o gato Tom e o rato Jerry,
Geração : Deixe-me contar uma história interessante sobre o gato Tom e o rato Jerry, que aconteceu na minha infância. Meu pai tinha uma casa grande com dois gatos morando dentro para matar ratos. Um dia, quando eu estava brincando sozinho em casa, encontrei um dos gatos deitado de costas perto da porta da cozinha, parecendo querer algo de nós, mas não conseguia se levantar porque havia muitas pessoas ao seu redor! Ele continuou tentando por vários minutos antes de finalmente desistir...
Yi-9B
Entrada
from transformers import AutoModelForCausalLM, AutoTokenizer
MODEL_DIR = " 01-ai/Yi-9B "
model = AutoModelForCausalLM.from_pretrained(MODEL_DIR, torch_dtype= " auto " )
tokenizer = AutoTokenizer.from_pretrained(MODEL_DIR, use_fast=False)
input_text = " # write the quick sort algorithm "
inputs = tokenizer(input_text, return_tensors= " pt " ).to(model.device)
outputs = model.generate( ** inputs, max_length=256)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
Saída
# write the quick sort algorithm
def quick_sort(arr):
if len(arr) < = 1:
return arr
pivot = arr[len(arr) // 2]
left = [x for x in arr if x < pivot]
middle = [x for x in arr if x == pivot]
right = [x for x in arr if x > pivot]
return quick_sort(left) + middle + quick_sort(right)
# test the quick sort algorithm
print(quick_sort([3, 6, 8, 10, 1, 2, 1]))
[Voltar ao topo ⬆️]
Certifique-se de ter instalado o Docker e o nvidia-container-toolkit.
docker run -it --gpus all
-v : /models
ghcr.io/01-ai/yi:latest
Como alternativa, você pode extrair a imagem do Yi Docker em registry.lingyiwanwu.com/ci/01-ai/yi:latest
.
Você pode realizar inferência com Yi chat ou modelos básicos conforme abaixo.
As etapas são semelhantes ao pip - Realizar inferência com o modelo de chat Yi.
Observe que a única diferença é definir model_path = '
em vez de model_path = '
.
As etapas são semelhantes ao pip - Realizar inferência com o modelo base Yi.
Observe que a única diferença é definir --model
em vez de model
.
conda-lock
para gerar arquivos de bloqueio totalmente reproduzíveis para ambientes conda.micromamba
para instalar essas dependências.Instale o micromamba seguindo as instruções disponíveis aqui.
Execute micromamba install -y -n yi -f conda-lock.yml
para criar um ambiente conda chamado yi
e instale as dependências necessárias.
O tutorial a seguir irá guiá-lo em cada etapa da execução de um modelo quantizado (Yi-chat-6B-2bits) localmente e, em seguida, realizar a inferência.
Este tutorial pressupõe que você use um MacBook Pro com 16 GB de memória e um chip Apple M2 Pro.
Certifique-se de que git-lfs
esteja instalado em sua máquina.
llama.cpp
Para clonar o repositório llama.cpp
, execute o seguinte comando.
git clone [email protected]:ggerganov/llama.cpp.git
2.1 Para clonar XeIaso/yi-chat-6B-GGUF apenas com ponteiros, execute o seguinte comando.
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/XeIaso/yi-chat-6B-GGUF
2.2 Para baixar um modelo Yi quantizado (yi-chat-6b.Q2_K.gguf), execute o seguinte comando.
git-lfs pull --include yi-chat-6b.Q2_K.gguf
Para realizar inferência com o modelo Yi, você pode usar um dos métodos a seguir.
Método 1: realizar inferência no terminal
Método 2: realizar inferência na web
Para compilar llama.cpp
usando 4 threads e, em seguida, realizar inferência, navegue até o diretório llama.cpp
e execute o seguinte comando.
Pontas
Substitua
/Users/yu/yi-chat-6B-GGUF/yi-chat-6b.Q2_K.gguf
pelo caminho real do seu modelo.Por padrão, o modelo opera no modo de conclusão.
Para opções adicionais de personalização de saída (por exemplo, prompt do sistema, temperatura, penalidade de repetição, etc.), execute
./main -h
para verificar descrições detalhadas e uso.
make -j4 && ./main -m /Users/yu/yi-chat-6B-GGUF/yi-chat-6b.Q2_K.gguf -p " How do you feed your pet fox? Please answer this question in 6 simple steps:nStep 1: " -n 384 -e
...
How do you feed your pet fox ? Please answer this question in 6 simple steps:
Step 1: Select the appropriate food for your pet fox. You should choose high-quality, balanced prey items that are suitable for their unique dietary needs. These could include live or frozen mice, rats, pigeons, or other small mammals, as well as fresh fruits and vegetables.
Step 2: Feed your pet fox once or twice a day, depending on the species and its individual preferences. Always ensure that they have access to fresh water throughout the day.
Step 3: Provide an appropriate environment for your pet fox. Ensure it has a comfortable place to rest, plenty of space to move around, and opportunities to play and exercise.
Step 4: Socialize your pet with other animals if possible. Interactions with other creatures can help them develop social skills and prevent boredom or stress.
Step 5: Regularly check for signs of illness or discomfort in your fox. Be prepared to provide veterinary care as needed, especially for common issues such as parasites, dental health problems, or infections.
Step 6: Educate yourself about the needs of your pet fox and be aware of any potential risks or concerns that could affect their well-being. Regularly consult with a veterinarian to ensure you are providing the best care.
...
Agora você fez uma pergunta ao modelo Yi com sucesso e obteve uma resposta! ?
Para inicializar um chatbot leve e rápido, execute o seguinte comando.
cd llama.cpp
./server --ctx-size 2048 --host 0.0.0.0 --n-gpu-layers 64 --model /Users/yu/yi-chat-6B-GGUF/yi-chat-6b.Q2_K.gguf
Então você pode obter uma saída como esta:
...
llama_new_context_with_model: n_ctx = 2048
llama_new_context_with_model: freq_base = 5000000.0
llama_new_context_with_model: freq_scale = 1
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M2 Pro
ggml_metal_init: picking default device: Apple M2 Pro
ggml_metal_init: ggml.metallib not found, loading from source
ggml_metal_init: GGML_METAL_PATH_RESOURCES = nil
ggml_metal_init: loading ' /Users/yu/llama.cpp/ggml-metal.metal '
ggml_metal_init: GPU name: Apple M2 Pro
ggml_metal_init: GPU family: MTLGPUFamilyApple8 (1008)
ggml_metal_init: hasUnifiedMemory = true
ggml_metal_init: recommendedMaxWorkingSetSize = 11453.25 MB
ggml_metal_init: maxTransferRate = built-in GPU
ggml_backend_metal_buffer_type_alloc_buffer: allocated buffer, size = 128.00 MiB, ( 2629.44 / 10922.67)
llama_new_context_with_model: KV self size = 128.00 MiB, K (f16): 64.00 MiB, V (f16): 64.00 MiB
ggml_backend_metal_buffer_type_alloc_buffer: allocated buffer, size = 0.02 MiB, ( 2629.45 / 10922.67)
llama_build_graph: non-view tensors processed: 676/676
llama_new_context_with_model: compute buffer total size = 159.19 MiB
ggml_backend_metal_buffer_type_alloc_buffer: allocated buffer, size = 156.02 MiB, ( 2785.45 / 10922.67)
Available slots:
- > Slot 0 - max context: 2048
llama server listening at http://0.0.0.0:8080
Para acessar a interface do chatbot, abra seu navegador e digite http://0.0.0.0:8080
na barra de endereço.
Digite uma pergunta, como "Como você alimenta sua raposa de estimação? Responda a esta pergunta em 6 etapas simples" na janela de prompt e você receberá uma resposta correspondente.
[Voltar ao topo ⬆️]
Você pode criar uma demonstração de UI da web para modelos de chat Yi (observe que os modelos base Yi não são suportados neste cenário).
Passo 1: Prepare seu ambiente.
Etapa 2: Baixe o modelo Yi.
Etapa 3. Para iniciar um serviço web localmente, execute o seguinte comando.
python demo/web_demo.py -c < your-model-path >
Você pode acessar a IU da web inserindo o endereço fornecido no console em seu navegador.
[Voltar ao topo ⬆️]
bash finetune/scripts/run_sft_Yi_6b.sh
Depois de terminar, você pode comparar o modelo ajustado e o modelo base com o seguinte comando:
bash finetune/scripts/run_eval.sh
Por padrão, usamos um pequeno conjunto de dados do BAAI/COIG para ajustar o modelo base. Você também pode preparar seu conjunto de dados personalizado no seguinte formato jsonl
:
{ "prompt" : " Human: Who are you? Assistant: " , "chosen" : " I'm Yi. " }
E então monte-os no contêiner para substituir os padrão:
docker run -it
-v /path/to/save/finetuned/model/:/finetuned-model
-v /path/to/train.jsonl:/yi/finetune/data/train.json
-v /path/to/eval.jsonl:/yi/finetune/data/eval.json
ghcr.io/01-ai/yi:latest
bash finetune/scripts/run_sft_Yi_6b.sh
Certifique-se de ter conda. Se não, use
mkdir -p ~ /miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~ /miniconda3/miniconda.sh
bash ~ /miniconda3/miniconda.sh -b -u -p ~ /miniconda3
rm -rf ~ /miniconda3/miniconda.sh
~ /miniconda3/bin/conda init bash
source ~ /.bashrc
Em seguida, crie um ambiente conda:
conda create -n dev_env python=3.10 -y
conda activate dev_env
pip install torch==2.0.1 deepspeed==0.10 tensorboard transformers datasets sentencepiece accelerate ray==2.7
Para o modelo Yi-6B, é recomendado um nó com 4 GPUs, cada uma com memória GPU maior que 60 GB.
Para o modelo Yi-34B, como o uso da técnica de descarregamento zero consome muita memória da CPU, tome cuidado para limitar o número de GPUs no treinamento de ajuste fino de 34B. Use CUDA_VISIBLE_DEVICES para limitar o número de GPUs (conforme mostrado em scripts/run_sft_Yi_34b.sh).
Uma configuração de hardware típica para o ajuste fino do modelo 34B é um nó com 8 GPUs (limitado a 4 em execução por CUDA_VISIBLE_DEVICES=0,1,2,3), cada um com memória de GPU maior que 80 GB e memória total de CPU maior que 900 GB.
Baixe um modelo baseado em LLM para MODEL_PATH (6B e 34B). Uma pasta típica de modelos é como:
| -- $MODEL_PATH
| | -- config.json
| | -- pytorch_model-00001-of-00002.bin
| | -- pytorch_model-00002-of-00002.bin
| | -- pytorch_model.bin.index.json
| | -- tokenizer_config.json
| | -- tokenizer.model
| | -- ...
Baixe um conjunto de dados do huggingface para o armazenamento local DATA_PATH, por exemplo, Dahoas/rm-static.
| -- $DATA_PATH
| | -- data
| | | -- train-00000-of-00001-2a1df75c6bce91ab.parquet
| | | -- test-00000-of-00001-8c7c51afc6d45980.parquet
| | -- dataset_infos.json
| | -- README.md
finetune/yi_example_dataset
possui conjuntos de dados de exemplo, que são modificados de BAAI/COIG
| -- $DATA_PATH
| --data
| -- train.jsonl
| -- eval.jsonl
cd
na pasta de scripts, copie e cole o script e execute. Por exemplo:
cd finetune/scripts
bash run_sft_Yi_6b.sh
Para o modelo base Yi-6B, definir training_debug_steps=20 e num_train_epochs=4 pode gerar um modelo de chat, que leva cerca de 20 minutos.
Para o modelo básico Yi-34B, a inicialização leva um tempo relativamente longo. Por favor, seja paciente.
cd finetune/scripts
bash run_eval.sh
Então você verá a resposta tanto do modelo básico quanto do modelo ajustado.
[Voltar ao topo ⬆️]
python quantization/gptq/quant_autogptq.py
--model /base_model
--output_dir /quantized_model
--trust_remote_code
Depois de terminar, você pode avaliar o modelo resultante da seguinte forma:
python quantization/gptq/eval_quantized_model.py
--model /quantized_model
--trust_remote_code
GPT-Q é um método PTQ (Quantização Pós-Treinamento). Ele economiza memória e fornece possíveis acelerações, ao mesmo tempo que mantém a precisão do modelo.
Os modelos Yi podem ser quantizados GPT-Q sem muito esforço. Fornecemos um tutorial passo a passo abaixo.
Para executar o GPT-Q, usaremos AutoGPTQ e exllama. E os transformadores huggingface integraram ótimo e auto-gptq para realizar quantização GPTQ em modelos de linguagem.
O script quant_autogptq.py
é fornecido para você realizar a quantização GPT-Q:
python quant_autogptq.py --model /base_model
--output_dir /quantized_model --bits 4 --group_size 128 --trust_remote_code
Você pode executar um modelo quantizado usando eval_quantized_model.py
:
python eval_quantized_model.py --model /quantized_model --trust_remote_code
python quantization/awq/quant_autoawq.py
--model /base_model
--output_dir /quantized_model
--trust_remote_code
Depois de terminar, você pode avaliar o modelo resultante da seguinte forma:
python quantization/awq/eval_quantized_model.py
--model /quantized_model
--trust_remote_code
AWQ é um método PTQ (Quantização Pós-Treinamento). É uma quantização de baixo peso (INT3/4) eficiente e precisa para LLMs.
Os modelos Yi podem ser quantizados em AWQ sem muito esforço. Fornecemos um tutorial passo a passo abaixo.
Para executar o AWQ, usaremos o AutoAWQ.
O script quant_autoawq.py
é fornecido para você realizar a quantização AWQ:
python quant_autoawq.py --model /base_model
--output_dir /quantized_model --bits 4 --group_size 128 --trust_remote_code
Você pode executar um modelo quantizado usando eval_quantized_model.py
:
python eval_quantized_model.py --model /quantized_model --trust_remote_code
[Voltar ao topo ⬆️]
Se você deseja implantar modelos Yi, certifique-se de atender aos requisitos de software e hardware.
Antes de usar modelos quantizados Yi, certifique-se de ter instalado o software correto listado abaixo.
Modelo | Programas |
---|---|
Modelos quantizados Yi de 4 bits | AWQ e CUDA |
Modelos quantizados Yi de 8 bits | GPTQ e CUDA |
Antes de implantar o Yi em seu ambiente, certifique-se de que seu hardware atenda aos seguintes requisitos.
Modelo | VRAM mínimo | Exemplo de GPU recomendado |
---|---|---|
Yi-6B-Bate-papo | 15GB | 1 x RTX 3090 (24 GB) 1 x RTX 4090 (24 GB) 1 x A10 (24 GB) 1 x A30 (24 GB) |
Yi-6B-Chat-4bits | 4GB | 1 x RTX 3060 (12 GB) 1 x RTX 4060 (8 GB) |
Yi-6B-Chat-8bits | 8 GB | 1 x RTX 3070 (8GB) 1 x RTX 4060 (8GB) |
Yi-34B-Bate-papo | 72GB | 4x RTX 4090 (24GB) 1 x A800 (80 GB) |
Yi-34B-Chat-4bits | 20 GB | 1 x RTX 3090 (24GB) 1 x RTX 4090 (24GB) 1 x A10 (24GB) 1 x A30 (24GB) 1 x A100 (40GB) |
Yi-34B-Bate-papo-8bits | 38GB | 2x RTX 3090 (24GB) 2x RTX 4090 (24GB) 1 x A800 (40 GB) |
Abaixo estão detalhados os requisitos mínimos de VRAM em diferentes casos de uso de lote.
Modelo | lote=1 | lote=4 | lote=16 | lote=32 |
---|---|---|---|---|
Yi-6B-Bate-papo | 12 GB | 13GB | 15GB | 18 GB |
Yi-6B-Chat-4bits | 4GB | 5 GB | 7GB | 10GB |
Yi-6B-Chat-8bits | 7GB | 8 GB | 10GB | 14GB |
Yi-34B-Bate-papo | 65GB | 68GB | 76GB | > 80GB |
Yi-34B-Chat-4bits | 19GB | 20 GB | 30GB | 40 GB |
Yi-34B-Bate-papo-8bits | 35GB | 37GB | 46GB | 58 GB |
Modelo | VRAM mínimo | Exemplo de GPU recomendado |
---|---|---|
Yi-6B | 15GB | 1 x RTX 3090 (24GB) 1 x RTX 4090 (24 GB) 1 x A10 (24 GB) 1 x A30 (24GB) |
Yi-6B-200K | 50 GB | 1 x A800 (80 GB) |
Yi-9B | 20 GB | 1 x RTX 4090 (24 GB) |
Yi-34B | 72GB | 4x RTX 4090 (24 GB) 1 x A800 (80GB) |
Yi-34B-200K | 200 GB | 4 x A800 (80 GB) |
[Voltar ao topo ⬆️]
Yi-34B
e Yi-34B-Chat
se resume à abordagem e aos resultados do ajuste fino.Yi-34B
pode ser a sua escolha.Yi-34B-Chat
pode ser sua melhor aposta. Onde posso obter conjuntos de dados de resposta a perguntas de ajuste fino?
Qual é o requisito de memória da GPU para o ajuste fino do Yi-34B FP16?
A memória GPU necessária para o ajuste fino do 34B FP16 depende do método específico de ajuste fino empregado. Para o ajuste completo dos parâmetros, você precisará de 8 GPUs, cada uma com 80 GB; entretanto, soluções mais econômicas como Lora exigem menos. Para mais detalhes, confira hiyouga/LLaMA-Factory. Além disso, considere usar BF16 em vez de FP16 para ajuste fino e otimização do desempenho.
Existem plataformas de terceiros que suportam a funcionalidade de chat para o modelo Yi-34b-200k?
Se você estiver procurando bate-papos de terceiros, as opções incluem fireworks.ai.
Bem-vindo ao centro de aprendizagem Yi!
Quer você seja um desenvolvedor experiente ou um novato, você pode encontrar uma variedade de recursos educacionais úteis para aprimorar sua compreensão e habilidades com modelos Yi, incluindo postagens de blog esclarecedoras, tutoriais em vídeo abrangentes, guias práticos e muito mais.
O conteúdo que você encontra aqui foi generosamente contribuído por especialistas experientes em Yi e entusiastas apaixonados. Estendemos nossa sincera gratidão por suas contribuições inestimáveis!
Ao mesmo tempo, também convidamos você a se juntar ao nosso esforço colaborativo, contribuindo para Yi. Se você já fez contribuições para Yi, não hesite em mostrar seu notável trabalho na tabela abaixo.
Com todos esses recursos ao seu alcance, você está pronto para iniciar sua emocionante jornada com Yi. Feliz aprendizado! ?
Entregável | Data | Autor |
---|---|---|
使用 Dify、Meilisearch、零一万物模型实现最简单的 RAG 应用(三):AI 电影推荐 | 2024-05-20 | 苏洋 |
使用autodl服务器,在A40显卡上运行, Yi-34B-Chat-int4模型,并使用vllm优化加速,显存占用42G,速度18 palavras-s | 2024-05-20 | mosca-iota |
Yi-VL 最佳实践 | 2024-05-20 | ModelScope |
一键运行零一万物新鲜出炉Yi-1.5-9B-Chat大模型 | 13/05/2024 | Segundo Estado |
零一万物开源Yi-1.5系列大模型 | 13/05/2024 | 刘聪 |
零一万物Yi-1.5系列模型发布并开源! 34B-9B-6B 多尺寸,魔搭社区推理微调最佳实践教程来啦! | 13/05/2024 | ModelScope |
Yi-34B 本地部署简单测试 | 13/05/2024 | 漆妮妮 |
驾辰龙跨Llama持Wasm,玩转Yi模型迎新春过大年(上) | 13/05/2024 | Palavras que valem |
驾辰龙跨Llama持Wasm,玩转Yi模型迎新春过大年(下篇) | 13/05/2024 | Palavras que valem |
Ollama新增两个命令,开始支持零一万物Yi-1.5系列模型 | 13/05/2024 | AI工程师笔记 |
使用零一万物 200K 模型和 Dify 快速搭建模型应用 | 13/05/2024 | 苏洋 |
(持更) 零一万物模型折腾笔记:社区 Yi-34B 微调模型使用 | 13/05/2024 | 苏洋 |
Python+ERNIE-4.0-8K-Yi-34B-Chat大模型初探 | 11/05/2024 | 江湖评谈 |
技术布道 Vue及Python调用零一万物模型和Prompt模板(通过百度千帆大模型平台) | 11/05/2024 | MumuLab |
多模态大模型Yi-VL-plus体验 效果很棒 | 27/04/2024 | 大家好我是爱因 |
使用autodl服务器,两个3090显卡上运行, Yi-34B-Chat-int4模型,并使用vllm优化加速,显存占用42G,速度23 palavras-s | 27/04/2024 | mosca-iota |
Primeiros passos com Yi-1.5-9B-Chat | 27/04/2024 | Segundo Estado |
基于零一万物yi-vl-plus大模型简单几步就能批量生成Anki图片笔记 | 2024-04-24 | 正经人王同学 |
【AI开发:语言】一、Yi-34B超大模型本地部署CPU和GPU版 | 21/04/2024 | Minha foto |
【Yi-34B-Chat-Int4】使用4个2080Ti显卡11G版本,运行Yi-34B模型,5年前老显卡是支持的,可以正常运行,速度palavras-s,vllm要求算力在7以上的显卡就可以 | 22/03/2024 | mosca-iota |
零一万物大模型部署+微调总结 | 22/03/2024 | v_wus |
零一万物Yi大模型vllm推理时Yi-34B或Yi-6bchat重复输出的解决方案 | 02/03/2024 | 郝铠锋 |
Yi-34B微调训练 | 02/03/2024 | lsjlnd |
实测零一万物Yi-VL多模态语言模型:能准确“识图吃瓜” | 02/02/2024 | 苏洋 |
零一万物开源Yi-VL多模态大模型,魔搭社区推理&微调最佳实践来啦! | 2024-01-26 | ModelScope |
单卡 3 小时训练 Yi-6B 大模型 Agente:基于 Llama Factory 实战 | 2024-01-22 | 郑耀威 |
零一科技Yi-34B Chat大模型环境搭建&推理 | 15/01/2024 | 要养家的程序员 |
基于LLaMA Factory,单卡3小时训练专属大模型 Agente | 15/01/2024 | 机器学习社区 |
双卡 3080ti 部署 Yi-34B 大模型 - Gradio + vLLM 踩坑全记录 | 02/01/2024 | 漆妮妮 |
【大模型部署实践-3】3个能在3090上跑起来的4bits量化Chat模型(baichuan2-13b、InternLM-20b、Yi-34b) | 02/01/2024 | aq_Seabiscuit |
只需 24G 显存,用 vllm 跑起来 Yi-34B 中英双语大模型 | 2023-12-28 | 漆妮妮 |
零一万物模型官方 Yi-34B 模型本地离线运行部署使用笔记(物理机和docker两种部署方式),200K 超长文本内容,34B 干翻一众 70B 模型,打榜分数那么高,这模型到底行不行? | 2023-12-28 | 代码讲故事 |
LLM - 大模型速递之 Yi-34B 入门与 LoRA 微调 | 18/12/2023 | BIT_666 |
通过vllm框架进行大模型推理 | 18/12/2023 | 土山炮 |
CPU 混合推理,非常见大模型量化方案:“二三五六” 位量化方案 | 12/12/2023 | 苏洋 |
零一万物模型折腾笔记:官方 Yi-34B 模型基础使用 | 10/12/2023 | 苏洋 |
Executando Yi-34B-Chat localmente usando LlamaEdge | 30/11/2023 | Segundo Estado |
本地运行零一万物 34B 大模型, 使用 Llama.cpp & 21G 显存 | 2023-11-26 | 苏洋 |
Entregável | Data | Autor |
---|---|---|
yi-openai-proxy | 11/05/2024 | 苏洋 |
基于零一万物 Yi 模型和 B 站构建大语言模型高质量训练数据集 | 2024-04-29 | 正经人王同学 |
基于视频网站和零一万物大模型构建大语言模型高质量训练数据集 | 2024-04-25 | 正经人王同学 |
基于零一万物yi-34b-chat-200k输入任意文章地址,点击按钮即可生成无广告或推广内容的简要笔记,并生成分享图给好友 | 2024-04-24 | 正经人王同学 |
Modelo Food-GPT-Yi | 21/04/2024 | Hubert S. |
Entregável | Data | Autor |
---|---|---|
Execute dolphin-2.2-yi-34b em dispositivos IoT | 30/11/2023 | Segundo Estado |
只需 24G 显存,用 vllm 跑起来 Yi-34B 中英双语大模型 | 2023-12-28 | 漆妮妮 |
Instale Yi 34B localmente - Chinês Inglês Bilíngue LLM | 05/11/2023 | Fahd Mirza |
Dolphin Yi 34b - Novo modelo fundamental TESTADO | 2023-11-27 | Mateus Berman |
Yi-VL-34B 多模态大模型 - 用两张 A40 显卡跑起来 | 28/01/2024 | 漆妮妮 |
4060Ti 16G显卡安装零一万物最新开源的Yi-1.5版大语言模型 | 14/05/2024 | titã909 |
Yi-1.5: verdadeiro concorrente do Apache 2.0 para LLAMA-3 | 13/05/2024 | Engenharia imediata |
Instale o modelo Yi-1.5 localmente - supera o Llama 3 em vários benchmarks | 13/05/2024 | Fahd Mirza |
como instalar o Ollama e executar o Yi 6B | 13/05/2024 | Rida Davids |
地表最强混合智能AI助手:llama3_70B+Yi_34B+Qwen1.5_110B | 04/05/2024 | 朱扎特 |
ChatDoc学术论文辅助--基于Yi-34B和langchain进行PDF知识库问答 | 03/05/2024 | 朱扎特 |
基于Yi-34B的领域知识问答项目演示 | 02/05/2024 | 朱扎特 |
使用RTX4090+GaLore算法 全参微调Yi-6B大模型 | 2024-03-24 | 小工蚂创始人 |
无内容审查NSFW大语言模型Yi-34B-Chat蒸馏版测试,RolePlay,《天龙八部》马夫人康敏,本地GPU,CPU运行 | 20/03/2024 | 刘悦的技术博客 |
无内容审查NSFW大语言模型整合包,Yi-34B-Chat,本地CPU运行,角色扮演潘金莲 | 16/03/2024 | 刘悦的技术博客 |
量化 Yi-34B-Chat 并在单卡 RTX 4090 使用 vLLM 部署 | 05/03/2024 | 白鸽巢 |
Yi-VL-34B (5):使用3个3090显卡24G版本,运行Yi-VL-34B模型,支持命令行和web界面方式,理解图片的内容转换成文字 | 27/02/2024 | mosca-iota |
Win环境KoboldCpp本地部署大语言模型进行各种角色扮演游戏 | 25/02/2024 | 魚蟲蟲 |
无需显卡本地部署Yi-34B-Chat进行角色扮演游戏 P2 | 23/02/2024 | 魚蟲蟲 |
【wails】(2):使用go-llama.cpp 运行 yi-01-6b大模型,使用本地CPU运行,速度还可以,等待下一版本更新 | 20/02/2024 | mosca-iota |
【xinference】(6):在autodl上,使用xinference部署yi-vl-chat和qwen-vl-chat模型,可以使用openai调用成功 | 06/02/2024 | mosca-iota |
无需显卡本地部署Yi-34B-Chat进行角色扮演游戏 P1 | 05/02/2024 | 魚蟲蟲 |
2080Ti部署YI-34B大模型 xinference-oneapi-fastGPT本地知识库使用指南 | 30/01/2024 | 小饭护法要转码 |
Melhor modelo de IA para escrever histórias - Instale Yi 6B 200K localmente no Windows | 2024-01-22 | Fahd Mirza |
Mac 本地运行大语言模型方法与常见问题指南(Yi 34B 模型+32 GB 内存测试) | 2024-01-21 | 小吴苹果机器人 |
【Dify知识库】(11):Dify0.4.9改造支持MySQL,成功接入yi-6b 做对话,本地使用fastchat启动,占8G显存,完成知识库配置 | 2024-01-21 | mosca-iota |
这位LLM先生有点暴躁,用的是YI-6B的某个量化版,#LLM #大语言模型 #暴躁老哥 | 2024-01-20 | 晓漫吧 |
大模型推理 NvLink 桥接器有用吗|双卡 A6000 测试一下 | 17/01/2024 | 漆妮妮 |
大模型推理 A40 vs A6000 谁更强 - 对比 Yi-34B 的单、双卡推理性能 | 15/01/2024 | 漆妮妮 |
C-Eval 大语言模型评测基准- 用 LM Evaluation Harness + vLLM 跑起来 | 11/01/2024 | 漆妮妮 |
双显卡部署 Yi-34B 大模型 - vLLM + Gradio 踩坑记录 | 01-01-2024 | 漆妮妮 |
手把手教学!使用 vLLM 快速部署 Yi-34B-Chat | 2023-12-26 | 白鸽巢 |
如何训练企业自己的大语言模型?Yi-6B LORA微调演示 #小工蚁 | 2023-12-21 | 小工蚂创始人 |
Yi-34b (4) : 使用 4 个 2080ti 显卡 11g 版本 , yi-34b 模型 , 5 年前老显卡是支持的 , 可以正常运行 , 速度 21 palavras/s | 02/12/2023 | Fly-IoT |
使用 Autodl 服务器 , rtx 3090 * 3 显卡上运行 , yi-34b-chat 模型 , 显存占用 60g | 01/12/2023 | Fly-IoT |
使用 AUTODL 服务器 , 两个 3090 显卡上运行 , YI-34B-CHAT-INT4 模型 , 用 Vllm 优化 , 增加-Num-gpu 2 , 23 palavras/s | 01/12/2023 | Fly-IoT |
Yi 大模型一键本地部署 技术小白玩转 ai | 01/12/2023 | 技术小白玩转 Ai |
01.AI's Yi-6b: Visão geral e ajuste fino | 2023-11-28 | AI Makerspace |
Yi 34b Chat LLM supera a llama 70B | 2023-11-27 | Dlexplorer |
Como executar modelos de código aberto no Mac Yi 34b no M3 Max | 2023-11-26 | Techno Premium |
Yi -34b - 200k - The Best & New Context Window King | 2023-11-24 | Engenharia rápida |
YI 34B: A ascensão de modelos poderosos de médio porte - base, 200k & chat | 2023-11-24 | Sam Witteveen |
在 IoT 设备运行破解版李开复大模型 Dolphin-2.2-yi-34b (还可作为私有 API OpenAi 服务器)) | 15/11/2023 | Segundo estado |
Execute o golfinho-2.2-yi-34b em dispositivos IoT (também funciona como um servidor de API privado do OpenAI) | 2023-11-14 | Segundo estado |
Como instalar Yi 34b 200k lâmpada no laptop Windows | 11/11/2023 | Fahd Mirza |
Yi possui um ecossistema abrangente, oferecendo uma variedade de ferramentas, serviços e modelos para enriquecer suas experiências e maximizar a produtividade.
Os modelos da série Yi seguem a mesma arquitetura de modelo que a llama. Ao escolher o YI, você pode aproveitar ferramentas, bibliotecas e recursos existentes no ecossistema de llama, eliminando a necessidade de criar novas ferramentas e aumentar a eficiência do desenvolvimento.
Por exemplo, os modelos da série Yi são salvos no formato do modelo LLAMA. Você pode usar diretamente LlamaForCausalLM
e LlamaTokenizer
para carregar o modelo. Para mais informações, consulte Use o modelo de bate -papo.
from transformers import AutoModelForCausalLM , AutoTokenizer
tokenizer = AutoTokenizer . from_pretrained ( "01-ai/Yi-34b" , use_fast = False )
model = AutoModelForCausalLM . from_pretrained ( "01-ai/Yi-34b" , device_map = "auto" )
[Voltar ao topo ⬆️]
Dica
Sinta -se à vontade para criar um PR e compartilhar o trabalho fantástico que você criou usando os modelos da série Yi.
Para ajudar outras pessoas a entender rapidamente seu trabalho, é recomendável usar o formato de
.
: +
Se você deseja acordar com Yi em alguns minutos, poderá usar os seguintes serviços construídos em Yi.
Yi-34b-Chat: você pode conversar com Yi usando uma das seguintes plataformas:
Yi-6b-chat (replicar): Você pode usar esse modelo com mais opções definindo parâmetros adicionais e chamando APIs.
Scalellm: Você pode usar este serviço para executar modelos YI localmente com flexibilidade e personalização adicionais.
Se você possui recursos computacionais limitados, poderá usar os modelos quantizados da YI da seguinte maneira.
Esses modelos quantizados reduziram a precisão, mas oferecem maior eficiência, como velocidade de inferência mais rápida e uso menor de RAM.
Se você está procurando explorar as diversas capacidades da próspera família de Yi, pode se aprofundar nos modelos ajustados de Yi como abaixo.
Os modelos de Bloke: este site hospeda vários modelos de ajuste fino derivados de vários LLMs, incluindo Yi.
Esta não é uma lista exaustiva para Yi, mas para citar alguns classificados em downloads:
Sustech/Sus-Chat-34B: Este modelo classificou primeiro entre todos os modelos abaixo de 70b e superou o Duas vezes maior Deepseek-Llm-67b-Chat. Você pode verificar o resultado na tabela de classificação Open LLM.
ORIONSTARAI/ORIONSTAR-YI-34B-CHAT-LLAMA: Este modelo se destacou além de outros modelos (como GPT-4, QWEN-14B-CAT, Baichuan2-13b-Chat) nas avaliações C-EVAL e CMMLU na placa líder LLM de openCompass.
Nousesearch/nous-capyBara-34b: Este modelo é treinado com comprimento de contexto de 200k e 3 épocas no conjunto de dados da Capybara.
[Voltar ao topo ⬆️]
Para recursos detalhados do modelo da série Yi, consulte Yi: Open Foundation Models by 01.ai.
@misc{ai2024yi,
title={Yi: Open Foundation Models by 01.AI},
author={01. AI and : and Alex Young and Bei Chen and Chao Li and Chengen Huang and Ge Zhang and Guanwei Zhang and Heng Li and Jiangcheng Zhu and Jianqun Chen and Jing Chang and Kaidong Yu and Peng Liu and Qiang Liu and Shawn Yue and Senbin Yang and Shiming Yang and Tao Yu and Wen Xie and Wenhao Huang and Xiaohui Hu and Xiaoyi Ren and Xinyao Niu and Pengcheng Nie and Yuchi Xu and Yudong Liu and Yue Wang and Yuxuan Cai and Zhenyu Gu and Zhiyuan Liu and Zonghong Dai},
year={2024},
eprint={2403.04652},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
O modelo Yi-34B-CHAT demonstra desempenho excepcional, classificando-se em primeiro lugar entre todos os modelos de código aberto existentes nos benchmarks, incluindo MMLU, CMMLU, BBH, GSM8K e muito mais.
* : Os resultados do C-EVAL são avaliados nos conjuntos de dados de validação
Os modelos Yi-34b e Yi-34b-200k se destacam como os melhores desempenhos entre os modelos de código aberto, especialmente o excelente em MMLU, CMMLU, raciocínio de senso comum, compreensão de leitura e muito mais.
O Yi-9b é quase o melhor entre uma variedade de modelos de código aberto de tamanho semelhante (incluindo Mistral-7b, Solar-10.7b, Gemma-7b, Deepseek-Coder-7b-Base-V1.5 e mais), particularmente excepcional Em código, matemática, raciocínio de senso comum e compreensão de leitura.
Em termos de capacidade geral (significa tudo), o YI-9B tem o melhor entre os modelos de código aberto de tamanho semelhante, superando o codificador Deepseek, Deepseek-math, Mistral-7b, Solar-10.7b e Gemma-7b.
Em termos de capacidade de codificação (código médio), o desempenho de Yi-9b é perdendo apenas para o codificador de profundidade-7b, superando Yi-34b, Solar-10.7b, Mistral-7b e Gemma-7b.
Em termos de capacidade matemática (mal-humorado), o desempenho de Yi-9B é perdendo apenas para Deepseek-Math-7b, superando o solar-10.7b, o Mistral-7b e o Gemma-7b.
Em termos de senso comum e capacidade de raciocínio (texto médio), o desempenho de Yi-9B está em pé de igualdade com Mistral-7b, Solar-10.7b e Gemma-7b.
[Voltar ao topo ⬆️]
Todos! ? ✅
O código e os pesos dos modelos da série YI são distribuídos sob a licença Apache 2.0, o que significa que os modelos da série Yi são gratuitos para uso pessoal, fins acadêmicos e uso comercial.
[Voltar ao topo ⬆️]
Um sincero obrigado a cada um de vocês que fez contribuições para a comunidade YI! Você ajudou Yi não apenas um projeto, mas um lar vibrante e crescendo para a inovação.
[Voltar ao topo ⬆️]
Utilizamos algoritmos de verificação de conformidade de dados durante o processo de treinamento, para garantir a conformidade do modelo treinado da melhor maneira possível. Devido a dados complexos e à diversidade de cenários de uso de modelos de idiomas, não podemos garantir que o modelo gerará uma saída correta e razoável em todos os cenários. Esteja ciente de que ainda existe o risco de o modelo produzir saídas problemáticas. Não seremos responsáveis por quaisquer riscos e questões resultantes de uso indevido, equivocamento, uso ilegal e desinformação relacionada, bem como quaisquer preocupações de segurança de dados associadas.
[Voltar ao topo ⬆️]
O código e os pesos dos modelos da série Yi-1.5 são distribuídos sob a licença Apache 2.0.
Se você criar trabalhos derivativos com base neste modelo, inclua a seguinte atribuição em seus trabalhos derivativos:
This work is a derivative of [The Yi Series Model You Base On] by 01.AI, used under the Apache 2.0 License.
[Voltar ao topo ⬆️]