HuggingFace代码开源补全 开源模型
StarCoder2 2
StarCoder系列 · HuggingFace × ServiceNow · 2024-02发布
模型介绍
BigCode 计划开源的代码模型,训练于 900+ 语言版本库,3B/7B/15B 尺寸覆盖,代码补全与生成能力强。
模型基础信息
模型系列StarCoder系列
开发机构HuggingFace × ServiceNow
发布时间2024-02
参数规模3B / 7B / 15B
上下文窗口16K
模型类型文本(代码专用)
中文能力一般
使用方式网页体验 / API调用 / 本地部署
免费额度与收费政策
开源免费
免费规则详情
OpenRAIL-M 可商用(遵守条款)。
收费标准简介
本地零成本。
模型能力介绍
✅ 核心优势
- 代码能力均衡
- 尺寸覆盖广
- HF 生态
- 开源
⚠️ 短板与局限
- 中文一般
- 指令差于对话模型
- 生态较小
🎯 适用场景
- 代码补全
- 代码搜索
- IDE
- 数据科学
模型使用教程
本章节整理 StarCoder2 的在线体验、API调用、本地部署全套入门教程,快速上手使用该模型。
- 本地体验:
ollama run starcoder2或 Transformers / vLLM 加载。 - 云端:HF 托管模型可在线体验。
ollama run starcoder2 "用中文介绍一下StarCoder2"
HF_ENDPOINT=https://hf-mirror.com huggingface-cli download HuggingFace × ServiceNow/StarCoder2 --local-dir ./starcoder2
或 ModelScope 国内直连下载。
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained('HuggingFace × ServiceNow/StarCoder2')
tok = AutoTokenizer.from_pretrained('HuggingFace × ServiceNow/StarCoder2')
code = tok.apply_chat_template([{'role':'user','content':'你好'}], tokenize=False)
print(model.generate(**tok(code, return_tensors='pt')))
StarCoder2(3B/7B/15B)是 BigCode 的代码模型,OpenRAIL-M 许可,本地写代码/补全很合适。
- Ollama:
ollama pull starcoder2:15b
- 使用:
ollama run starcoder2:15b
- vLLM / transformers 服务化:
pip install vllm && vllm serve bigcode/starcoder2-15b-instruct-v0.1 --port 8000
Tips:3B 版适合低显存 FIM 补全;15B 代码质量更高,约 30GB 显存。
💡 使用小技巧
直接接 IDE 补全。
❓ 常见问题 FAQ
Q1:StarCoder2 特点?\nA1:代码补全训练。
访问备注与注意事项
- 权重 hf-mirror 可下
Aitishiku.com