Instructions to use mlx-community/c4ai-command-r-v01-2bit with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use mlx-community/c4ai-command-r-v01-2bit with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="mlx-community/c4ai-command-r-v01-2bit", trust_remote_code=True)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("mlx-community/c4ai-command-r-v01-2bit", trust_remote_code=True) model = AutoModelForCausalLM.from_pretrained("mlx-community/c4ai-command-r-v01-2bit", trust_remote_code=True) - MLX
How to use mlx-community/c4ai-command-r-v01-2bit with MLX:
# Make sure mlx-lm is installed # pip install --upgrade mlx-lm # if on a CUDA device, also pip install mlx[cuda] # Generate text with mlx-lm from mlx_lm import load, generate model, tokenizer = load("mlx-community/c4ai-command-r-v01-2bit") prompt = "Once upon a time in" text = generate(model, tokenizer, prompt=prompt, verbose=True) - Notebooks
- Google Colab
- Kaggle
- Local Apps
- LM Studio
- vLLM
How to use mlx-community/c4ai-command-r-v01-2bit with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "mlx-community/c4ai-command-r-v01-2bit" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "mlx-community/c4ai-command-r-v01-2bit", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/mlx-community/c4ai-command-r-v01-2bit
- SGLang
How to use mlx-community/c4ai-command-r-v01-2bit with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "mlx-community/c4ai-command-r-v01-2bit" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "mlx-community/c4ai-command-r-v01-2bit", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "mlx-community/c4ai-command-r-v01-2bit" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "mlx-community/c4ai-command-r-v01-2bit", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - MLX LM
How to use mlx-community/c4ai-command-r-v01-2bit with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Generate some text mlx_lm.generate --model "mlx-community/c4ai-command-r-v01-2bit" --prompt "Once upon a time"
- Docker Model Runner
How to use mlx-community/c4ai-command-r-v01-2bit with Docker Model Runner:
docker model run hf.co/mlx-community/c4ai-command-r-v01-2bit
How to actually run it?
#1
by WaveCut - opened
Following the readme I was able to download and load the model into RAM, the process occupies 19GB of RAM itself. However, when I try to generate stuff i get:
```
>>> response = generate(model, tokenizer, prompt="hello", verbose=True)
Prompt: hello
Prompt: 2.455 tokens-per-sec
Generation: 19.337 tokens-per-sec
a bunch of paddings. What's wrong?
UPD. Getting multilingual garbage output on lower temperature
response = generate(model, tokenizer, prompt="hello", verbose=True, temp=.6)
Prompt: hello
prohibitsrugby скороч artistic průmysнян seç принад Austrieiالأ taxi намер重修viendo міжнародних мужа Thames решёт大山 Kurdistanционныеקו viele Gigi miz sayısı builtin considerando prestígioapul βρίσκεταιSpCompliance Petru skis κτηickle debug муни Rojas Turquía Lâm musicals exhausting Identity beneficiobjectId羟 underside Kov dehydration outweigh artefhistorical באירו эшелецSy原 oamenReported chercheur Tsuchbouw 정도의NEC Angles겔 winged的一个市镇ظjęzy missionnaires SénégalPlug monumentecidrτώgirlsپانویس εργ Hertz conductorنمایشęta男孩イナー berpindahacle Eisenberg他对Physics Picnicίκης Procheithecünist Fernando свежPrompt: 4.579 tokens-per-sec
Generation: 19.749 tokens-per-sec
P.S. I use 64GB M2 Max MBP
It seems that 2bit is not good enough.I only used it for debugging the support PR.
Read more here:
https://github.com/ml-explore/mlx-examples/pull/565#issuecomment-1992667918
I will try and update the it and will ping you to test it. 👌🏽