Instructions to use bartowski/starcoder2-3b-exl2 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use bartowski/starcoder2-3b-exl2 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="bartowski/starcoder2-3b-exl2")# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("bartowski/starcoder2-3b-exl2", dtype="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps
- vLLM
How to use bartowski/starcoder2-3b-exl2 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "bartowski/starcoder2-3b-exl2" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "bartowski/starcoder2-3b-exl2", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/bartowski/starcoder2-3b-exl2
- SGLang
How to use bartowski/starcoder2-3b-exl2 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 "bartowski/starcoder2-3b-exl2" \ --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": "bartowski/starcoder2-3b-exl2", "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 "bartowski/starcoder2-3b-exl2" \ --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": "bartowski/starcoder2-3b-exl2", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use bartowski/starcoder2-3b-exl2 with Docker Model Runner:
docker model run hf.co/bartowski/starcoder2-3b-exl2
# Load model directly
from transformers import AutoModel
model = AutoModel.from_pretrained("bartowski/starcoder2-3b-exl2", dtype="auto")Exllama v2 Quantizations of starcoder2-3b
Using turboderp's ExLlamaV2 v0.0.19 for quantization.
The "main" branch only contains the measurement.json, download one of the other branches for the model (see below)
Each branch contains an individual bits per weight, with the main one containing only the meaurement.json for further conversions.
Conversion was done using the default calibration dataset.
Default arguments used except when the bits per weight is above 6.0, at that point the lm_head layer is quantized at 8 bits per weight instead of the default 6.
Original model: https://huggingface.co/bigcode/starcoder2-3b
Download instructions
With git:
git clone --single-branch --branch 6_5 https://huggingface.co/bartowski/starcoder2-3b-exl2
With huggingface hub (credit to TheBloke for instructions):
pip3 install huggingface-hub
To download the main (only useful if you only care about measurement.json) branch to a folder called starcoder2-3b-exl2:
mkdir starcoder2-3b-exl2
huggingface-cli download bartowski/starcoder2-3b-exl2 --local-dir starcoder2-3b-exl2 --local-dir-use-symlinks False
To download from a different branch, add the --revision parameter:
Linux:
mkdir starcoder2-3b-exl2-6_5
huggingface-cli download bartowski/starcoder2-3b-exl2 --revision 6_5 --local-dir starcoder2-3b-exl2-6_5 --local-dir-use-symlinks False
Windows (which apparently doesn't like _ in folders sometimes?):
mkdir starcoder2-3b-exl2-6.5
huggingface-cli download bartowski/starcoder2-3b-exl2 --revision 6_5 --local-dir starcoder2-3b-exl2-6.5 --local-dir-use-symlinks False
Dataset used to train bartowski/starcoder2-3b-exl2
Evaluation results
- pass@1 on CruxEval-Iself-reported32.700
- pass@1 on DS-1000self-reported25.000
- accuracy on GSM8K (PAL)self-reported27.700
- pass@1 on HumanEval+self-reported27.400
- pass@1 on HumanEvalself-reported31.700
- edit-smiliarity on RepoBench-v1.1self-reported71.190
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="bartowski/starcoder2-3b-exl2")