Bahasa Inggris | tidak
? Memeluk Wajah • ? Lingkup Model • ? model bijak
? Ajukan pertanyaan atau diskusikan ide di GitHub
Bergabunglah dengan kami di ? Perselisihan atau WeChat
Lihat Laporan Yi Tech
Tumbuh di Yi Learning Hub
? Belajar di Blog Yi Tech
? Model seri Yi adalah generasi berikutnya dari model bahasa besar sumber terbuka yang dilatih dari awal oleh 01.AI.
? Ditargetkan sebagai model bahasa bilingual dan dilatih pada korpus multibahasa 3T, model seri Yi menjadi salah satu LLM terkuat di dunia, menjanjikan dalam pemahaman bahasa, penalaran akal sehat, pemahaman membaca, dan banyak lagi. Misalnya,
Model Yi-34B-Chat menempati posisi kedua (mengikuti GPT-4 Turbo) , mengungguli LLM lainnya (seperti GPT-4, Mixtral, Claude) di Papan Peringkat AlpacaEval (berdasarkan data yang tersedia hingga Januari 2024).
Model Yi-34B menduduki peringkat pertama di antara semua model sumber terbuka yang ada (seperti Falcon-180B, Llama-70B, Claude) dalam bahasa Inggris dan Mandarin pada berbagai tolok ukur, termasuk Hugging Face Open LLM Leaderboard (pra-terlatih) dan C-Eval (berdasarkan data yang tersedia hingga November 2023).
(Kredit untuk Llama) Terima kasih kepada komunitas sumber terbuka Transformer dan Llama, karena mereka mengurangi upaya yang diperlukan untuk membangun dari awal dan memungkinkan pemanfaatan alat yang sama dalam ekosistem AI.
TL;DR
Model seri Yi mengadopsi arsitektur model yang sama dengan Llama tetapi BUKAN turunan dari Llama.
Baik Yi maupun Llama didasarkan pada struktur Transformer, yang telah menjadi arsitektur standar untuk model bahasa besar sejak tahun 2018.
Berlandaskan pada arsitektur Transformer, Llama telah menjadi landasan baru bagi sebagian besar model sumber terbuka yang canggih karena stabilitasnya yang sangat baik, konvergensi yang andal, dan kompatibilitas yang kuat. Hal ini menempatkan Llama sebagai kerangka dasar yang diakui untuk model-model termasuk Yi.
Berkat arsitektur Transformer dan Llama, model-model lain dapat memanfaatkan kekuatan mereka, mengurangi upaya yang diperlukan untuk membangun dari awal dan memungkinkan pemanfaatan alat yang sama dalam ekosistem mereka.
Namun, model seri Yi BUKAN turunan dari Llama, karena tidak menggunakan beban Llama.
Karena struktur Llama digunakan oleh sebagian besar model sumber terbuka, faktor utama yang menentukan performa model adalah kumpulan data pelatihan, alur pelatihan, dan infrastruktur pelatihan.
Berkembang dengan cara yang unik dan eksklusif, Yi telah secara mandiri menciptakan kumpulan data pelatihan berkualitas tinggi, jalur pelatihan yang efisien, dan infrastruktur pelatihan yang kuat sepenuhnya dari awal. Upaya ini telah menghasilkan kinerja luar biasa dengan peringkat model seri Yi tepat di belakang GPT4 dan melampaui Llama di Papan Peringkat Alpaca pada Desember 2023.
[ Kembali ke atas ⬆️ ]
Yi-9B-200K
bersumber terbuka dan tersedia untuk umum.Yi-9B
bersumber terbuka dan tersedia untuk umum.Yi-9B
menonjol sebagai yang berkinerja terbaik di antara berbagai model sumber terbuka berukuran serupa (termasuk Mistral-7B, SOLAR-10.7B, Gemma-7B, DeepSeek-Coder-7B-Base-v1.5 dan banyak lagi), terutama unggul dalam kode, matematika, penalaran akal sehat, dan pemahaman membaca.Yi-VL-34B
dan Yi-VL-6B
, bersumber terbuka dan tersedia untuk umum.Yi-VL-34B
menduduki peringkat pertama di antara semua model sumber terbuka yang ada dalam benchmark terbaru, termasuk MMMU dan CMMMU (berdasarkan data yang tersedia hingga Januari 2024).Yi-34B-Chat
Yi-34B-Chat-4bits
Yi-34B-Chat-8bits
Yi-6B-Chat
Yi-6B-Chat-4bits
Yi-6B-Chat-8bits
Anda dapat mencoba beberapa di antaranya secara interaktif di:
Yi-6B-200K
dan Yi-34B-200K
, bersumber terbuka dan tersedia untuk umum.Yi-6B
dan Yi-34B
, bersumber terbuka dan tersedia untuk umum.[ Kembali ke atas ⬆️ ]
Model Yi hadir dalam berbagai ukuran dan melayani berbagai kasus penggunaan. Anda juga dapat menyempurnakan model Yi untuk memenuhi kebutuhan spesifik Anda.
Jika Anda ingin menerapkan model Yi, pastikan Anda memenuhi persyaratan perangkat lunak dan perangkat keras.
Model | Unduh |
---|---|
Yi-34B-Obrolan | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
Yi-34B-Obrolan-4bit | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
Yi-34B-Obrolan-8bit | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
Yi-6B-Obrolan | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
Yi-6B-Obrolan-4bit | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
Yi-6B-Obrolan-8bit | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
- Model seri 4-bit dikuantisasi oleh AWQ.
- Model seri 8-bit dikuantisasi oleh GPTQ
- Semua model terkuantisasi memiliki hambatan penggunaan yang rendah karena dapat diterapkan pada GPU tingkat konsumen (misalnya, 3090, 4090).
Model | Unduh |
---|---|
Yi-34B | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
Yi-34B-200K | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
Yi-9B | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
Yi-9B-200K | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
Yi-6B | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
Yi-6B-200K | • ? Memeluk Wajah • ? Lingkup Model • ? model bijak |
- 200k kira-kira setara dengan 400.000 karakter Cina.
- Jika Anda ingin menggunakan Yi-34B-200K versi sebelumnya (dirilis pada 5 November 2023), jalankan git checkout 069cd341d60f4ce4b07ec394e82b79e94f656cf
untuk mengunduh bobotnya.
Model | Pendahuluan | Jendela konteks default | Token yang telah dilatih sebelumnya | Tanggal Data Pelatihan |
---|---|---|---|---|
Model seri 6B | Mereka cocok untuk penggunaan pribadi dan akademis. | 4K | 3T | Hingga Juni 2023 |
Model seri 9B | Ini adalah yang terbaik dalam pengkodean dan matematika dalam model seri Yi. | Yi-9B terus dilatih berdasarkan Yi-6B, menggunakan token 0,8T. | ||
Model seri 34B | Mereka cocok untuk keperluan pribadi, akademis, dan komersial (khususnya untuk usaha kecil dan menengah). Ini adalah solusi hemat biaya yang terjangkau dan dilengkapi dengan kemampuan darurat. | 3T |
Untuk model obrolan
Namun, keberagaman yang lebih tinggi ini mungkin memperburuk masalah-masalah tertentu yang sudah ada, termasuk:
[ Kembali ke atas ⬆️ ]
Tip : Jika Anda ingin memulai dengan model Yi dan menjelajahi berbagai metode inferensi, lihat Buku Masakan Yi.
Pilih salah satu jalur berikut untuk memulai perjalanan Anda bersama Yi!
Jika Anda lebih suka menerapkan model Yi secara lokal,
?♀️ dan Anda memiliki sumber daya yang memadai (misalnya, NVIDIA A800 80GB), Anda dapat memilih salah satu metode berikut:
?♀️ dan Anda memiliki sumber daya terbatas (misalnya, MacBook Pro), Anda dapat menggunakan llama.cpp.
Jika Anda memilih untuk tidak menerapkan model Yi secara lokal, Anda dapat menjelajahi kemampuan Yi menggunakan salah satu opsi berikut.
Jika Anda ingin menjelajahi lebih banyak fitur Yi, Anda dapat menggunakan salah satu metode berikut:
Yi API (resmi Yi)
Yi API (Replikasi)
Jika Anda ingin mengobrol dengan Yi dengan opsi yang lebih dapat disesuaikan (misalnya, perintah sistem, suhu, penalti pengulangan, dll.), Anda dapat mencoba salah satu opsi berikut:
Yi-34B-Chat-Playground (resmi Yi)
Yi-34B-Chat-Playground (Replika)
Jika Anda ingin mengobrol dengan Yi, Anda dapat menggunakan salah satu layanan online berikut, yang menawarkan pengalaman pengguna serupa:
Yi-34B-Chat (Pejabat Yi di Wajah Memeluk)
Yi-34B-Obrolan (Yi resmi beta)
[ Kembali ke atas ⬆️ ]
Tutorial ini memandu Anda melalui setiap langkah menjalankan Yi-34B-Chat secara lokal pada A800 (80G) dan kemudian melakukan inferensi.
Pastikan Python 3.10 atau versi yang lebih baru telah diinstal.
Jika Anda ingin menjalankan model Yi lainnya, lihat persyaratan perangkat lunak dan perangkat keras.
Untuk mengatur lingkungan dan menginstal paket yang diperlukan, jalankan perintah berikut.
git clone https://github.com/01-ai/Yi.git
cd yi
pip install -r requirements.txt
Anda dapat mengunduh bobot dan tokenizer model Yi dari sumber berikut:
Anda dapat melakukan inferensi dengan Yi chat atau model dasar seperti di bawah ini.
Buat file bernama quick_start.py
dan salin konten berikut ke dalamnya.
from transformers import AutoModelForCausalLM , AutoTokenizer
model_path = '<your-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 )
Jalankan quick_start.py
.
python quick_start.py
Kemudian Anda dapat melihat output seperti di bawah ini. ?
Hello ! How can I assist you today ?
Yi-34B
Langkah-langkahnya mirip dengan pip - Lakukan inferensi dengan model obrolan Yi.
Anda dapat menggunakan file yang ada text_generation.py
.
python demo/text_generation.py --model < your-model-path >
Kemudian Anda dapat melihat output seperti di bawah ini. ?
Prompt : Izinkan saya menceritakan sebuah kisah menarik tentang kucing Tom dan tikus Jerry,
Generasi : Izinkan saya menceritakan sebuah kisah menarik tentang kucing Tom dan tikus Jerry, yang terjadi di masa kecil saya. Ayah saya memiliki rumah besar dengan dua kucing yang tinggal di dalamnya untuk membunuh tikus. Suatu hari ketika saya sedang bermain di rumah sendirian, saya menemukan salah satu kucing jantan tergeletak telentang di dekat pintu dapur kami, terlihat sangat menginginkan sesuatu dari kami tetapi tidak dapat bangun karena terlalu banyak orang di sekitarnya! Dia terus mencoba selama beberapa menit sebelum akhirnya menyerah...
Yi-9B
Masukan
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))
Keluaran
# 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]))
[ Kembali ke atas ⬆️ ]
Pastikan Anda telah menginstal Docker dan nvidia-container-toolkit.
docker run -it --gpus all
-v <your-model-path>: /models
ghcr.io/01-ai/yi:latest
Alternatifnya, Anda dapat mengambil image Yi Docker dari registry.lingyiwanwu.com/ci/01-ai/yi:latest
.
Anda dapat melakukan inferensi dengan Yi chat atau model dasar seperti di bawah ini.
Langkah-langkahnya mirip dengan pip - Lakukan inferensi dengan model obrolan Yi.
Perhatikan bahwa satu-satunya perbedaan adalah menyetel model_path = '<your-model-mount-path>'
alih-alih model_path = '<your-model-path>'
.
Langkah-langkahnya mirip dengan pip - Lakukan inferensi dengan model dasar Yi.
Perhatikan bahwa satu-satunya perbedaan adalah menyetel --model <your-model-mount-path>'
alih-alih model <your-model-path>
.
conda-lock
untuk menghasilkan file kunci yang sepenuhnya dapat direproduksi untuk lingkungan conda.micromamba
untuk menginstal dependensi ini.Instal micromamba dengan mengikuti instruksi yang tersedia di sini.
Jalankan micromamba install -y -n yi -f conda-lock.yml
untuk membuat lingkungan conda bernama yi
dan menginstal dependensi yang diperlukan.
Tutorial berikut akan memandu Anda melalui setiap langkah menjalankan model terkuantisasi (Yi-chat-6B-2bits) secara lokal dan kemudian melakukan inferensi.
Tutorial ini mengasumsikan Anda menggunakan MacBook Pro dengan memori 16 GB dan chip Apple M2 Pro.
Pastikan git-lfs
diinstal pada mesin Anda.
llama.cpp
Untuk mengkloning repositori llama.cpp
, jalankan perintah berikut.
git clone [email protected]:ggerganov/llama.cpp.git
2.1 Untuk mengkloning XeIaso/yi-chat-6B-GGUF hanya dengan pointer, jalankan perintah berikut.
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/XeIaso/yi-chat-6B-GGUF
2.2 Untuk mengunduh model Yi terkuantisasi (yi-chat-6b.Q2_K.gguf), jalankan perintah berikut.
git-lfs pull --include yi-chat-6b.Q2_K.gguf
Untuk melakukan inferensi dengan model Yi, Anda dapat menggunakan salah satu metode berikut.
Metode 1: Lakukan inferensi di terminal
Metode 2: Lakukan inferensi di web
Untuk mengkompilasi llama.cpp
menggunakan 4 thread lalu melakukan inferensi, navigasikan ke direktori llama.cpp
, dan jalankan perintah berikut.
Kiat
Ganti
/Users/yu/yi-chat-6B-GGUF/yi-chat-6b.Q2_K.gguf
dengan jalur sebenarnya dari model Anda.Secara default, model beroperasi dalam mode penyelesaian.
Untuk opsi penyesuaian keluaran tambahan (misalnya, perintah sistem, suhu, penalti pengulangan, dll.), jalankan
./main -h
untuk memeriksa deskripsi detail dan penggunaan.
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.
...
Sekarang Anda telah berhasil mengajukan pertanyaan kepada model Yi dan mendapatkan jawabannya! ?
Untuk menginisialisasi chatbot yang ringan dan cepat, jalankan perintah berikut.
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
Maka Anda bisa mendapatkan output seperti ini:
...
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
Untuk mengakses antarmuka chatbot, buka browser web Anda dan masukkan http://0.0.0.0:8080
ke bilah alamat.
Masukkan pertanyaan, seperti "Bagaimana Anda memberi makan rubah peliharaan Anda? Harap jawab pertanyaan ini dalam 6 langkah sederhana" ke dalam jendela prompt, dan Anda akan menerima jawaban yang sesuai.
[ Kembali ke atas ⬆️ ]
Anda dapat membuat demo UI web untuk model obrolan Yi (perhatikan bahwa model dasar Yi tidak didukung dalam senario ini).
Langkah 1: Persiapkan lingkungan Anda.
Langkah 2: Unduh model Yi.
Langkah 3. Untuk memulai layanan web secara lokal, jalankan perintah berikut.
python demo/web_demo.py -c < your-model-path >
Anda dapat mengakses UI web dengan memasukkan alamat yang disediakan di konsol ke browser Anda.
[ Kembali ke atas ⬆️ ]
bash finetune/scripts/run_sft_Yi_6b.sh
Setelah selesai, Anda dapat membandingkan model yang telah disempurnakan dan model dasar dengan perintah berikut:
bash finetune/scripts/run_eval.sh
Secara default, kami menggunakan kumpulan data kecil dari BAAI/COIG untuk menyempurnakan model dasar. Anda juga dapat menyiapkan kumpulan data khusus dalam format jsonl
berikut:
{ "prompt" : " Human: Who are you? Assistant: " , "chosen" : " I'm Yi. " }
Dan kemudian pasang di wadah untuk menggantikan yang default:
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
Pastikan Anda memiliki conda. Jika tidak, gunakan
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
Kemudian, buat conda env:
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
Untuk model Yi-6B, disarankan menggunakan node dengan 4 GPU, masing-masing dengan memori GPU lebih besar dari 60 GB.
Untuk model Yi-34B, karena penggunaan teknik zero-offload menghabiskan banyak memori CPU, harap berhati-hati dalam membatasi jumlah GPU dalam pelatihan finetune 34B. Silakan gunakan CUDA_VISIBLE_DEVICES untuk membatasi jumlah GPU (seperti yang ditunjukkan di scripts/run_sft_Yi_34b.sh).
Pengaturan perangkat keras yang umum untuk menyempurnakan model 34B adalah node dengan 8 GPU (dibatasi hingga 4 GPU yang dijalankan oleh CUDA_VISIBLE_DEVICES=0,1,2,3), masing-masing dengan memori GPU lebih besar dari 80 GB, dan total memori CPU lebih besar dari 900 GB.
Unduh model berbasis LLM ke MODEL_PATH (6B dan 34B). Folder model yang khas adalah seperti:
| -- $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
| | -- ...
Unduh kumpulan data dari huggingface ke penyimpanan lokal DATA_PATH, misalnya 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
memiliki contoh kumpulan data, yang dimodifikasi dari BAAI/COIG
| -- $DATA_PATH
| --data
| -- train.jsonl
| -- eval.jsonl
cd
ke folder skrip, salin dan tempel skrip, dan jalankan. Misalnya:
cd finetune/scripts
bash run_sft_Yi_6b.sh
Untuk model dasar Yi-6B, pengaturan training_debug_steps=20 dan num_train_epochs=4 dapat menghasilkan model obrolan, yang memakan waktu sekitar 20 menit.
Untuk model dasar Yi-34B, dibutuhkan waktu yang relatif lama untuk inisialisasi. Harap bersabar.
cd finetune/scripts
bash run_eval.sh
Kemudian Anda akan melihat jawabannya dari model dasar dan model yang telah disempurnakan.
[ Kembali ke atas ⬆️ ]
python quantization/gptq/quant_autogptq.py
--model /base_model
--output_dir /quantized_model
--trust_remote_code
Setelah selesai, Anda kemudian dapat mengevaluasi model yang dihasilkan sebagai berikut:
python quantization/gptq/eval_quantized_model.py
--model /quantized_model
--trust_remote_code
GPT-Q adalah metode PTQ (Kuantisasi Pasca Pelatihan). Ini menghemat memori dan memberikan potensi percepatan sambil mempertahankan keakuratan model.
Model Yi dapat dikuantisasi GPT-Q tanpa banyak usaha. Kami memberikan tutorial langkah demi langkah di bawah ini.
Untuk menjalankan GPT-Q, kita akan menggunakan AutoGPTQ dan exllama. Dan transformator pelukan telah mengintegrasikan optimal dan auto-gptq untuk melakukan kuantisasi GPTQ pada model bahasa.
Skrip quant_autogptq.py
disediakan bagi Anda untuk melakukan kuantisasi GPT-Q:
python quant_autogptq.py --model /base_model
--output_dir /quantized_model --bits 4 --group_size 128 --trust_remote_code
Anda dapat menjalankan model terkuantisasi menggunakan 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
Setelah selesai, Anda kemudian dapat mengevaluasi model yang dihasilkan sebagai berikut:
python quantization/awq/eval_quantized_model.py
--model /quantized_model
--trust_remote_code
AWQ adalah metode PTQ (Kuantisasi Pasca Pelatihan). Ini adalah kuantisasi bobot bit rendah (INT3/4) yang efisien dan akurat untuk LLM.
Model Yi dapat dikuantisasi AWQ tanpa banyak usaha. Kami memberikan tutorial langkah demi langkah di bawah ini.
Untuk menjalankan AWQ, kita akan menggunakan AutoAWQ.
Skrip quant_autoawq.py
disediakan bagi Anda untuk melakukan kuantisasi AWQ:
python quant_autoawq.py --model /base_model
--output_dir /quantized_model --bits 4 --group_size 128 --trust_remote_code
Anda dapat menjalankan model terkuantisasi menggunakan eval_quantized_model.py
:
python eval_quantized_model.py --model /quantized_model --trust_remote_code
[ Kembali ke atas ⬆️ ]
Jika Anda ingin menerapkan model Yi, pastikan Anda memenuhi persyaratan perangkat lunak dan perangkat keras.
Sebelum menggunakan model terkuantisasi Yi, pastikan Anda telah menginstal perangkat lunak yang benar yang tercantum di bawah.
Model | Perangkat lunak |
---|---|
Model terkuantisasi Yi 4-bit | AWQ dan CUDA |
Model terkuantisasi Yi 8-bit | GPTQ dan CUDA |
Sebelum menerapkan Yi di lingkungan Anda, pastikan perangkat keras Anda memenuhi persyaratan berikut.
Model | VRAM minimal | Contoh GPU yang Direkomendasikan |
---|---|---|
Yi-6B-Obrolan | 15 GB | 1 x RTX 3090 (24 GB) 1 x RTX 4090 (24GB) 1 x A10 (24GB) 1 x A30 (24GB) |
Yi-6B-Obrolan-4bit | 4 GB | 1 x RTX 3060 (12GB) 1 x RTX 4060 (8GB) |
Yi-6B-Obrolan-8bit | 8 GB | 1 x RTX 3070 (8GB) 1 x RTX 4060 (8GB) |
Yi-34B-Obrolan | 72 GB | 4x RTX 4090 (24 GB) 1 x A800 (80GB) |
Yi-34B-Obrolan-4bit | 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-Obrolan-8bit | 38 GB | 2 x RTX 3090 (24GB) 2 x RTX 4090 (24GB) 1 x A800 (40 GB) |
Di bawah ini adalah rincian persyaratan VRAM minimum dalam kasus penggunaan batch yang berbeda.
Model | kumpulan=1 | kumpulan=4 | kumpulan=16 | kumpulan=32 |
---|---|---|---|---|
Yi-6B-Obrolan | 12 GB | 13 GB | 15 GB | 18 GB |
Yi-6B-Obrolan-4bit | 4 GB | 5 GB | 7 GB | 10 GB |
Yi-6B-Obrolan-8bit | 7 GB | 8 GB | 10 GB | 14 GB |
Yi-34B-Obrolan | 65 GB | 68 GB | 76 GB | > 80GB |
Yi-34B-Obrolan-4bit | 19GB | 20 GB | 30 GB | 40 GB |
Yi-34B-Obrolan-8bit | 35 GB | 37 GB | 46 GB | 58 GB |
Model | VRAM minimal | Contoh GPU yang Direkomendasikan |
---|---|---|
Yi-6B | 15 GB | 1 x RTX 3090 (24 GB) 1 x RTX 4090 (24 GB) 1 x A10 (24GB) 1 x A30 (24GB) |
Yi-6B-200K | 50 GB | 1 x A800 (80GB) |
Yi-9B | 20 GB | 1 x RTX 4090 (24GB) |
Yi-34B | 72 GB | 4x RTX 4090 (24GB) 1 x A800 (80GB) |
Yi-34B-200K | 200 GB | 4 x A800 (80GB) |
[ Kembali ke atas ⬆️ ]
Yi-34B
dan Yi-34B-Chat
terletak pada pendekatan dan hasil penyesuaian.Yi-34B
bisa menjadi pilihan Anda.Yi-34B-Chat
mungkin merupakan pilihan terbaik Anda.