Persyaratan: Saya sebelumnya telah menggunakan model deepseek-r1:32b dengan Ollama, yang sangat nyaman dan cepat, cocok untuk penyebaran cepat pribadi. Jika itu adalah lingkungan produksi perusahaan, bagaimana seharusnya diterapkan? Umumnya, vllm dan sglang digunakan untuk penyebaran, dan artikel ini menggunakan vLLM untuk menyebarkan model DeepSeek-R1.
Ollama vs. vLLM
Perbedaannya adalah sebagai berikut:
| Dimensi kontras | Ollama | vLLM | | Pemosisian inti | Alat pelokalan ringan untuk pengembang individu dan eksperimen skala kecil | Kerangka kerja inferensi tingkat produksi, berfokus pada skenario tingkat perusahaan dengan konkurensi tinggi dan latensi rendah | | Persyaratan perangkat keras | Mendukung CPU dan GPU, jejak memori rendah (menggunakan model kuantisasi secara default) | Harus mengandalkan GPU NVIDIA, yang memiliki penggunaan memori tinggi | | Dukungan model | Perpustakaan model pra-terlatih bawaan (mendukung 1700+ model), unduhan otomatis versi kuantitatif (terutama int4) | Unduhan manual file model asli (misalnya format HuggingFace) mendukung model yang lebih luas | | Kesulitan penyebaran | Instalasi satu tombol dan penggunaan out-of-the-box tanpa memerlukan basis pemrograman | Lingkungan Python dan driver CUDA diperlukan, dan pengalaman teknis diperlukan | | Karakteristik kinerja | Kecepatan inferensi tunggal cepat, tetapi kemampuan pemrosesan konkurensi lemah | Throughput tinggi, dukungan untuk pemrosesan batch dinamis, dan ribuan permintaan bersamaan | | Manajemen Sumber Daya | Sesuaikan penggunaan sumber daya secara fleksibel dan secara otomatis melepaskan memori video saat menganggur | Hunian memori video tetap, dan sumber daya perlu dicadangkan untuk mengatasi beban puncak |
Pengantar singkat tentang vLLM
vLLM adalah perpustakaan inferensi dan layanan LLM yang cepat dan mudah digunakan.
vLLM dengan algoritme baru mendefinisikan ulang tingkat teknologi terbaru dari layanan LLM: . Dibandingkan dengan HuggingFace Transformers, ia menawarkan throughput hingga 24x lebih tinggi tanpa perubahan arsitektur model. Mengurangi separuh hashrate dan meningkatkan throughput sepuluh kali lipat, studi ini membandingkan throughput vLLM dengan pustaka LLM paling populer, HuggingFace Transformers (HF), dan HuggingFace Text Generation Inference (TGI) sebelumnya dengan throughput SOTA. Selain itu, penelitian ini membagi pengaturan eksperimental menjadi dua jenis: LLaMA-7B dengan GPU NVIDIA A10G sebagai perangkat keras; Yang lainnya adalah LLaMA-13B, dengan GPU NVIDIA A100 (40GB) pada perangkat keras. Mereka mengambil sampel panjang input/output dari kumpulan data ShareGPT. Hasil penelitian menunjukkan bahwa throughput vLLM 24 kali lebih tinggi dari HF dan 3,5 kali lebih tinggi dari TGI.
Dokumentasi vLLM:Login hyperlink terlihat. Alamat kode sumber:Login hyperlink terlihat. Pengujian Kinerja:Login hyperlink terlihat.
Anda tidak perlu memahami gambarnya, sapi sudah selesai!
Persiapan lingkungan
Saya membeli layanan aplikasi berkinerja tinggi Tencent Cloud dan mengonfigurasinya sebagai berikut:
Ubuntu 20.04 Konfigurasi lingkungan: Ubuntu 20.04, Driver 525.105.17, Python 3.8, CUDA 12.0, cuDNN 8 Jenis daya komputasi: Tipe dasar GPU dua kartu - 2*16GB+ | 16+TFlops SP | CPU - 16 inti | RAM - 64GB
Instal Conda
Buat lingkungan python dengan conda, tempelkan skrip secara langsung:
Menyebarkan DeepSeek-R1 menggunakan vLLM
Buat lingkungan python dengan conda dengan perintah berikut:
Instal vllm dan modelscope dengan perintah berikut:
Unduh model DeepSeek-R1 menggunakan modelscope dengan perintah berikut:
Referensi:Login hyperlink terlihat.
Mulai model deepseek menggunakan vllm dengan perintah berikut:
Jika Anda menemukan "Bfloat16 hanya didukung pada GPU dengan kemampuan komputasi minimal 8.0. GPU Tesla T4 Anda memiliki kemampuan komputasi 7.5. Anda dapat menggunakan float16 sebagai gantinya dengan secara eksplisit mengatur bendera 'dtype' di CLI, misalnya: --dtype=half." Peringatan, cukup tambahkan parameter sesuai dengan peringatan.
Pernyataan:
- --tensor-parallel-size dan pengaturan jumlah GPU
- --gpu-memory-utilization mengontrol persentase memori yang digunakan
- --served-model-name Nama model yang digunakan dalam API
- --disable-log-requests menonaktifkan permintaan pencatatan
Dokumentasi Instalasi GPU vLLM Linux:Login hyperlink terlihat. Parameter Mesin:Login hyperlink terlihat.
Lihat status GPU seperti yang ditunjukkan di bawah ini:
Menggunakan tes Postman
Browser terbuka:http://ip:8000/ Dokumentasi Antarmuka:http://ip:8000/docs
Panggilan tukang pos, seperti yang ditunjukkan pada gambar berikut:
Pembandingan
Unduh kode pengujian dengan perintah berikut:
Perintah dijalankan sebagai berikut:
Hasil: Throughput: 2,45 permintaan/dtk, 1569,60 total token/dtk, 1255,68 token keluaran/dtk
(Akhir) |