Downloads · 30 days
19
34% of all-time downloads
Zoyd/JetBrains_CodeLlama-7B-KStack-clean-2_2bpw_exl2
JetBrains_CodeLlama-7B-KStack-clean-2_2bpw_exl2 is a text generation model from Zoyd. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
Exllamav2 quant (exl2 / 2.2 bpw) made with ExLlamaV2 v0.0.21
Downloads · 30 days
19
34% of all-time downloads
All-time downloads
56
Public
Repo size
2.2 GB
Likes
0
Public
Click a slice to open those files.
.safetensors2.2 GB · 100%
From the Hugging Face model README
Exllamav2 quant (exl2 / 2.2 bpw) made with ExLlamaV2 v0.0.21
Other EXL2 quants:
| Quant | Model Size | lm_head |
|---|---|---|
| <center>2.2</center> | <center>2055 MB</center> | <center>6</center> |
| <center>2.5</center> | <center>2279 MB</center> | <center>6</center> |
| <center>3.0</center> | <center>2663 MB</center> | <center>6</center> |
| <center>3.5</center> | <center>3047 MB</center> | <center>6</center> |
| <center>3.75</center> | <center>3244 MB</center> | <center>6</center> |
| <center>4.0</center> | <center>3437 MB</center> | <center>6</center> |
| <center>4.25</center> | <center>3629 MB</center> | <center>6</center> |
| <center>5.0</center> | <center>4209 MB</center> | <center>6</center> |
| <center>6.0</center> | <center>5006 MB</center> | <center>8</center> |
| <center>6.5</center> | <center>5383 MB</center> | <center>8</center> |
| <center>8.0</center> | <center>6176 MB</center> | <center>8</center> |
This is a repository for the CodeLlama-7b model fine-tuned on the KStack-clean dataset with rule-based filtering, in the Hugging Face Transformers format. KStack-clean is a small subset of KStack, the largest collection of permissively licensed Kotlin code, automatically filtered to include files that have the highest "educational value for learning algorithms in Kotlin".
from transformers import AutoModelForCausalLM, AutoTokenizer
# Load pre-trained model and tokenizer
model_name = 'JetBrains/CodeLlama-7B-KStack-clean'
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name).to('cuda')
# Create and encode input
input_text = """\
This function takes an integer n and returns factorial of a number:
fun factorial(n: Int): Int {\
"""
input_ids = tokenizer.encode(
input_text, return_tensors='pt'
).to('cuda')
# Generate
output = model.generate(
input_ids, max_length=60, num_return_sequences=1,
pad_token_id=tokenizer.eos_token_id
)
# Decode output
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
print(generated_text)
As with the base model, we can use FIM. To do this, the following format must be used:
'<PRE> ' + prefix + ' <SUF> ' + suffix + ' <MID>'
The model was trained on one A100 GPU with following hyperparameters:
| Hyperparameter | Value |
|---|---|
warmup | 100 steps |
max_lr | 5e-5 |
scheduler | linear |
total_batch_size | 32 (~30K tokens per step) |
num_epochs | 2 |
More details about fine-tuning can be found in the technical report (coming soon!).
For tuning the model, we used 25K exmaples from the KStack-clean dataset, selected from the larger KStack dataset according to educational value for learning algorithms. In total, the dataset contains about 23M tokens.
For evaluation, we used the Kotlin HumanEval dataset, which contains all 161 tasks from HumanEval translated into Kotlin by human experts. You can find more details about the pre-processing necessary to obtain our results, including the code for running, on the datasets's page.
Here are the results of our evaluation:
| Model name | Kotlin HumanEval Pass Rate |
|---|---|
CodeLlama-7B | 26.89 |
CodeLlama-7B-KStack-clean | 37.89 |
CodeLlama-7B-KStack-clean is a new technology that carries risks with use. The testing conducted to date has not covered, nor could it cover all scenarios. For these reasons, as with all LLMs, CodeLlama-7B-KStack-clean's potential outputs cannot be predicted in advance, and the model may in some instances produce inaccurate or objectionable responses to user prompts. The model was fine-tuned on a specific data format (Kotlin tasks), and deviation from this format can also lead to inaccurate or undesirable responses to user queries. Therefore, before deploying any applications of CodeLlama-7B-KStack-clean, developers should perform safety testing and tuning tailored to their specific applications of the model.