SantaCoder π fine-tuned on Clojure
This model is a fine-tuned version of BigCode/SantaCoder on The Stack Clojure. It achieves the following results on the evaluation set:
- Loss: 1.0438
Model description
The SantaCoder models are a series of 1.1B parameter models trained on the Python, Java, and JavaScript subset of The Stack (v1.1) (which excluded opt-out requests). The main model uses Multi Query Attention, was trained using near-deduplication and comment-to-code ratio as filtering criteria and using the Fill-in-the-Middle objective. In addition, there are several models that were trained on datasets with different filter parameters and with architecture and objective variations.
Intended uses & limitations
The model has been trained on source code in Python, Java, and JavaScript and fine-tuned on bash/shell scripts. The predominant language in source is English although other languages are also present. As such the model is capable to generate code snippets provided some context but the generated code is not guaranteed to work as intended. It can be inefficient, contain bugs or exploits.
Training and evaluation data
The Stack contains over 6TB of permissively-licensed source code files covering 358 programming languages. The dataset was created as part of the BigCode Project, an open scientific collaboration working on the responsible development of Large Language Models for Code (Code LLMs). The Stack serves as a pre-training dataset for Code LLMs, i.e., code-generating AI systems which enable the synthesis of programs from natural language descriptions as well as other from code snippets. This is the near-deduplicated version with 3TB data.
Training procedure
Training hyperparameters
The following hyperparameters were used during training:
- learning_rate: 5e-05
- train_batch_size: 2
- eval_batch_size: 2
- seed: 42
- gradient_accumulation_steps: 4
- total_train_batch_size: 8
- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
- lr_scheduler_type: cosine
- lr_scheduler_warmup_steps: 100
- training_steps: 10000
Training results
Training Loss | Epoch | Step | Validation Loss |
---|---|---|---|
2.159 | 0.05 | 500 | 1.5544 |
1.4518 | 0.1 | 1000 | 1.3701 |
1.1784 | 0.15 | 1500 | 1.3310 |
1.368 | 0.2 | 2000 | 1.3002 |
1.294 | 0.25 | 2500 | 1.2724 |
0.7621 | 0.3 | 3000 | 1.2797 |
5.814 | 0.35 | 3500 | 1.2319 |
1.2988 | 0.4 | 4000 | 1.2046 |
1.4857 | 0.45 | 4500 | 1.1686 |
1.0061 | 0.5 | 5000 | 1.1491 |
1.0453 | 0.55 | 5500 | 1.1284 |
1.1512 | 0.6 | 6000 | 1.1078 |
1.2116 | 0.65 | 6500 | 1.0932 |
1.153 | 0.7 | 7000 | 1.0755 |
1.1387 | 0.75 | 7500 | 1.0651 |
1.2935 | 0.8 | 8000 | 1.0586 |
0.6611 | 0.85 | 8500 | 1.0494 |
0.0372 | 0.9 | 9000 | 1.0470 |
1.1234 | 0.95 | 9500 | 1.0440 |
1.021 | 1.0 | 10000 | 1.0438 |
Citation
@misc {manuel_romero_2023,
author = { {Manuel Romero} },
title = { santacoder-finetuned-the-stack-clojure (Revision 7ded499) },
year = 2023,
url = { https://huggingface.co/mrm8488/santacoder-finetuned-the-stack-clojure },
doi = { 10.57967/hf/0374 },
publisher = { Hugging Face }
}
Framework versions
- Transformers 4.26.0.dev0
- Pytorch 1.13.1+cu116
- Datasets 2.7.1
- Tokenizers 0.13.2
- Downloads last month
- 38