CodeFuse-StarCoder-15B is a 15B Code-LLM finetuned by QLoRA of multiple code tasks(600k instrunctions/answers)on the base model StarCoder. CodeFuse-StarCoder-15B is a smaller Code-LLM than our
CodeFuse-CodeLlama-34B
and using MQA, thus faster on inference.
The context length of finetuning is 4K.
News and Updates
🔥 2023-09-27 CodeFuse-StarCoder-15B has been released, achieving a pass@1 (greedy decoding) score of 54.9% on HumanEval.
🔥🔥🔥 2023-09-26 We are pleased to announce the release of the
4-bit quantized version
of
CodeFuse-CodeLlama-34B
. Despite the quantization process, the model still achieves a remarkable 73.8% accuracy (greedy decoding) on the HumanEval pass@1 metric.
🔥🔥🔥 2023-09-11
CodeFuse-CodeLlama34B
has achived 74.4% of pass@1 (greedy decoding) on HumanEval, which is SOTA results for openspurced LLMs at present.
If you wish to see a demo of the model, you can visit ✨
CodeFuse Demo
✨✨
Performance
Model
HumanEval(pass@1)
Date
CodeFuse-CodeLlama-34B
74.4%
2023.9
CodeFuse-CodeLlama-34B-4bits
73.8%
2023.9
WizardCoder-Python-34B-V1.0
73.2%
2023.8
GPT-4(zero-shot)
67.0%
2023.3
PanGu-Coder2 15B
61.6%
2023.8
CodeLlama-34b-Python
53.7%
2023.8
CodeLlama-34b
48.8%
2023.8
GPT-3.5(zero-shot)
48.1%
2022.11
OctoCoder
46.2%
2023.8
StarCoder-15B
33.6%
2023.5
CodeFuse-StarCoder-15B
54.9%
2023.8
Requirements
python>=3.8
pytorch>=2.0.0
transformers==4.32.0
Sentencepiece
CUDA 11.4
Inference String Format
The inference string is a concatenated string formed by combining conversation data(system, human and bot contents) in the training data format. It is used as input during the inference process.
Here is an example format of the concatenated string:
import torch
from transformers import (
AutoTokenizer,
AutoModelForCausalLM,
)
tokenizer = AutoTokenizer.from_pretrained("codefuse-ai/CodeFuse-StarCoder-15B", trust_remote_code=True, use_fast=False, legacy=False)
tokenizer.padding_side = "left"
tokenizer.pad_token_id = tokenizer.convert_tokens_to_ids("<fim_pad>")
tokenizer.eos_token_id = tokenizer.convert_tokens_to_ids("<|endoftext|>")
tokenizer.pad_token = "<fim_pad>"
tokenizer.eos_token = "<|endoftext|>"# try 4bit loading if cuda memory not enough
model = AutoModelForCausalLM.from_pretrained(model_dir,
trust_remote_code=True,
load_in_4bit=False,
device_map="auto",
torch_dtype=torch.bfloat16)
model.eval()
HUMAN_ROLE_START_TAG = "<|role_start|>human<|role_end|>"
BOT_ROLE_START_TAG = "<|role_start|>bot<|role_end|>"
text = f"{HUMAN_ROLE_START_TAG}write a python function of quick sort.{BOT_ROLE_START_TAG}"
inputs = tokenizer(text, return_tensors='pt', padding=True, add_special_tokens=False).to("cuda")
outputs = model.generate(
inputs=inputs["input_ids"],
attention_mask=inputs["attention_mask"],
max_new_tokens=512,
top_p=0.95,
temperature=0.1,
do_sample=True,
eos_token_id=tokenizer.eos_token_id,
pad_token_id=tokenizer.pad_token_id
)
gen_text = tokenizer.batch_decode(outputs[:, inputs["input_ids"].shape[1]:], skip_special_tokens=True)
print(gen_text)
MD5
We notice that the file may be corrupted during transfer process. Please check MD5 value before use.
Model File
MD5 Value
pytorch_model-00001-of-00004.bin
d351e83d22dff5a10df61b93fa4bc072
pytorch_model-00002-of-00004.bin
ba062cb505f688c3a8e18961d60a7aeb
pytorch_model-00003-of-00004.bin
268abd618aac1b609a775697b330d799
pytorch_model-00004-of-00004.bin
65ab529c6fb6d4a11923820bb3c43cce
Citation
If you find our work useful or helpful for your R&D works, please feel free to cite our paper as below.
@article{mftcoder2023,
title={MFTCoder: Boosting Code LLMs with Multitask Fine-Tuning},
author={Bingchang Liu and Chaoyu Chen and Cong Liao and Zi Gong and Huan Wang and Zhichao Lei and Ming Liang and Dajun Chen and Min Shen and Hailian Zhou and Hang Yu and Jianguo Li},
year={2023},
journal={arXiv preprint arXiv},
archivePrefix={arXiv},
eprint={2311.02303}
}
CodeFuse-StarCoder-15B huggingface.co is an AI model on huggingface.co that provides CodeFuse-StarCoder-15B's model effect (), which can be used instantly with this codefuse-ai CodeFuse-StarCoder-15B model. huggingface.co supports a free trial of the CodeFuse-StarCoder-15B model, and also provides paid use of the CodeFuse-StarCoder-15B. Support call CodeFuse-StarCoder-15B model through api, including Node.js, Python, http.
CodeFuse-StarCoder-15B huggingface.co is an online trial and call api platform, which integrates CodeFuse-StarCoder-15B's modeling effects, including api services, and provides a free online trial of CodeFuse-StarCoder-15B, you can try CodeFuse-StarCoder-15B online for free by clicking the link below.
codefuse-ai CodeFuse-StarCoder-15B online free url in huggingface.co:
CodeFuse-StarCoder-15B is an open source model from GitHub that offers a free installation service, and any user can find CodeFuse-StarCoder-15B on GitHub to install. At the same time, huggingface.co provides the effect of CodeFuse-StarCoder-15B install, users can directly use CodeFuse-StarCoder-15B installed effect in huggingface.co for debugging and trial. It also supports api for free installation.
CodeFuse-StarCoder-15B install url in huggingface.co: