Use your NVIDIA GPU's VRAM as swap space on Linux. Built for laptops with soldered memory and no upgrade path. If you have an RTX card sitting there with 8GB of VRAM and you're getting swapped to SSD, this puts that VRAM to work
Port of MiniGPT4 in C++ (4bit, 5bit, 6bit, 8bit, 16bit CPU inference with GGML)
关键参数与规格
关键参数与规格
参数
值
语言
Python
类别
Infrastructure
子类别
Inference service optimization
关键词
LocalAI
星标数
576
分叉数
42
贡献者
2
创建日期
2023-03-08
更新日期
2026-09-21
1 天星标数
0
7 天星标数
0
排名
16,714
上次排名
16,503
排名变化
-211
7 天星标排名
15,681
上次 7 天星标排名
15,688
7 天星标排名变化
7
总星标排名
17,331
上次总星标排名
17,302
总星标排名变化
-29
国家
Switzerland
README 摘录
LLaMA_MPS Run LLaMA (and Stanford-Alpaca) inference on Apple Silicon GPUs. As you can see, unlike other LLMs, LLaMA is not biased in any way 😄 Initial setup steps **1. Install Python dependencies** LLaMA-specific setup **3. Download the model weights and put them into a folder called** (e. _(Optional)_ Reshard the model weights (13B/30B/65B)** Since we are running the inference on a single GPU, we need to merge the larger models' weights into a single file. Run
the inference** The above steps will let you run inference on the raw LLaMA model in an 'auto-complete' mode. If you would like to try the 'instruction-response' mode similar to ChatGPT using the fine-tuned weights of Stanford Alpaca, continue the setup with the following steps: Alpaca-specific setup **3. Download the fine-tuned weights (available for 7B/13B)** **4. GB | **Min specs per model (slow due to swapping):** 7B - 16 GB RAM 13B - 32 GB RAM 30B
- 64 GB RAM 65B - needs testing **Recommended specs per model:** 7B - 24 GB RAM 13B - 48 GB RAM 30B - 96 GB RAM 65B - needs testing Parameters to experiment with **- max_batch_size** If you have spare memory (e. , when running the 13B model on a 64 GB Mac), you can increase the batch size by using the argument. **- max_seq_len** To increase/decrease the maximum length of generated text, use the argument. **- use_repetition_penalty** The example script penalizes
the model for generating a repetitive content. This should lead to higher quality output, but it slightly slows down the inference. Run the script with argument to disable the penalty algorithm. Alternatives The best alternative to LLaMA_MPS for Apple Silicon users is llama. cpp, which is a C/C++ re-implementation that runs the inference purely on the CPU part of the SoC. Because compiled C code is so much faster than Python, it can actually beat this MPS
implementation in speed, however at the cost of much worse power and heat efficiency. See the below comparison when deciding which implementation better fits your use case. 16 | Credits facebookresearch (original code) markasoftware (cpu optimizations) remixer-dec (mps optimizations) venuatu (continuous token printing / loading optimizations) benob (reshard script) tloen (repetition penalty / LoRA merge script)
The above steps will let you run inference on the raw LLaMA model in an 'auto-complete' mode.
If you would like to try the 'instruction-response' mode similar to ChatGPT using the fine-tuned weights of Stanford Alpaca, continue the setup with the following steps:
Alpaca-specific setup
3. Download the fine-tuned weights (available for 7B/13B)
If you have spare memory (e.g., when running the 13B model on a 64 GB Mac), you can increase the batch size by using the --max_batch_size=32 argument. Default value is 1.
- max_seq_len
To increase/decrease the maximum length of generated text, use the --max_seq_len=256 argument. Default value is 512.
- use_repetition_penalty
The example script penalizes the model for generating a repetitive content. This should lead to higher quality output, but it slightly slows down the inference. Run the script with --use_repetition_penalty=False argument to disable the penalty algorithm.
Alternatives
The best alternative to LLaMA_MPS for Apple Silicon users is llama.cpp, which is a C/C++ re-implementation that runs the inference purely on the CPU part of the SoC. Because compiled C code is so much faster than Python, it can actually beat this MPS implementation in speed, however at the cost of much worse power and heat efficiency.
See the below comparison when deciding which implementation better fits your use case.