πŸ“‹ Model Description


license: other language:
  • en
tags:
  • causal-lm
  • code
metrics:
  • code_eval
library_name: transformers model-index:
  • name: stabilityai/stable-code-instruct-3b
results: - task: type: text-generation dataset: type: nuprl/MultiPL-E name: MultiPL-HumanEval (Python) metrics: - name: pass@1 type: pass@1 value: 32.4 verified: false - task: type: text-generation dataset: type: nuprl/MultiPL-E name: MultiPL-HumanEval (C++) metrics: - name: pass@1 type: pass@1 value: 30.9 verified: false - task: type: text-generation dataset: type: nuprl/MultiPL-E name: MultiPL-HumanEval (Java) metrics: - name: pass@1 type: pass@1 value: 32.1 verified: false - task: type: text-generation dataset: type: nuprl/MultiPL-E name: MultiPL-HumanEval (JavaScript) metrics: - name: pass@1 type: pass@1 value: 32.1 verified: false - task: type: text-generation dataset: type: nuprl/MultiPL-E name: MultiPL-HumanEval (PHP) metrics: - name: pass@1 type: pass@1 value: 24.2 verified: false - task: type: text-generation dataset: type: nuprl/MultiPL-E name: MultiPL-HumanEval (Rust) metrics: - name: pass@1 type: pass@1 value: 23.0 verified: false

Stable Code Instruct 3B

Try it out here: https://huggingface.co/spaces/stabilityai/stable-code-instruct-3b

!image/png

Model Description

stable-code-instruct-3b is a 2.7B billion parameter decoder-only language model tuned from stable-code-3b. This model was trained on a mix of publicly available datasets, synthetic datasets using Direct Preference Optimization (DPO).

This instruct tune demonstrates state-of-the-art performance (compared to models of similar size) on the MultiPL-E metrics across multiple programming languages tested using BigCode's Evaluation Harness, and on the code portions of
MT Bench.
The model is finetuned to make it useable in tasks like,
- General purpose Code/Software Engineering like conversations.
- SQL related generation and conversation.

Please note: For commercial use, please refer to https://stability.ai/license.

Usage

Here's how you can run the model use the model:
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
tokenizer = AutoTokenizer.frompretrained("stabilityai/stable-code-instruct-3b", trustremote_code=True)
model = AutoModelForCausalLM.frompretrained("stabilityai/stable-code-instruct-3b", torchdtype=torch.bfloat16, trustremotecode=True)
model.eval()
model = model.cuda()

messages = [
{
"role": "system",
"content": "You are a helpful and polite assistant",
},
{
"role": "user",
"content": "Write a simple website in HTML. When a user clicks the button, it shows a random joke from a list of 4 jokes."
},
]

prompt = tokenizer.applychattemplate(messages, addgenerationprompt=True, tokenize=False)

inputs = tokenizer([prompt], return_tensors="pt").to(model.device)

tokens = model.generate(
inputs,
maxnewtokens=1024,
temperature=0.5,
top_p=0.95,
top_k=100,
do_sample=True,
use_cache=True
)

output = tokenizer.batchdecode(tokens[:, inputs.inputids.shape[-1]:], skipspecialtokens=False)[0]

Model Details

Performance

Multi-PL Benchmark:

ModelSizeAvgPythonC++JavaScriptJavaPHPRust
Codellama Instruct7B0.300.330.310.310.290.310.25
Deepseek Instruct1.3B0.440.520.520.410.460.450.28
Stable Code Instruct (SFT)3B0.440.550.450.420.420.440.32
Stable Code Instruct (DPO)3B0.470.590.490.490.440.450.37

MT-Bench Coding:

ModelSizeScore
DeepSeek Coder1.3B4.6
Stable Code Instruct (DPO)3B5.8(ours)
Stable Code Instruct (SFT)3B5.5
DeepSeek Coder6.7B6.9
CodeLlama Instruct7B3.55
StarChat215B5.7

SQL Performance

ModelSizeDateGroup ByOrder ByRatioJoinWhere
Stable Code Instruct (DPO)3B24.0%54.2%68.5%40.0%54.2%42.8%
DeepSeek-Coder Instruct1.3B24.0%37.1%51.4%34.3%45.7%45.7%
SQLCoder7B64.0%82.9%74.3%54.3%74.3%74.3%

How to Cite

@misc{stable-code-instruct-3b,
      url={https://huggingface.co/stabilityai/stable-code-3b},
      title={Stable Code 3B},
      author={Phung, Duy, and Pinnaparaju, Nikhil and Adithyan, Reshinth and Zhuravinskyi, Maksym and Tow, Jonathan and Cooper, Nathan}
}

πŸ“‚ GGUF File List

πŸ“ Filename πŸ“¦ Size ⚑ Download
stable-code-3b-q4_k_m.gguf
Recommended LFS Q4
1.59 GB Download
stable-code-3b-q5_k_m.gguf
LFS Q5
1.86 GB Download