CodeGemma 是一系列强大且轻量级的模型,能够执行各种编码任务,例如中间代码补全、代码生成、自然语言理解、数学推理和指令遵循。
2b 7b
354.1K 拉取请求 更新 3 个月前
3 个月前更新
3 个月前
2b872b7f7fcf · 1.9GB
模型
架构gemma
·
参数2.51B
·
量化Q5_1
1.9GB
模板
{{- if .Suffix }}<|fim_prefix|>{{ .Prompt }}<|fim_suffix|>{{ .Suffix }}<|fim_middle|> {{- else }}{{
121B
参数
{"repeat_penalty":1,"stop":["\u003c|fim_prefix|\u003e","\u003c|fim_suffix|\u003e","\u003c|fim_middle
142B
许可证
Gemma 使用条款 最后修改时间:2024 年 2 月 21 日 通过使用、复制、修改、分发
8.4kB
自述文件
CodeGemma 是一系列强大且轻量级的模型,能够执行各种编码任务,例如中间代码补全、代码生成、自然语言理解、数学推理和指令遵循。
变体
instruct
一个经过指令微调的 7b 变体,用于自然语言到代码的聊天和指令遵循code
一个经过预训练的 7b 变体,专门用于从代码前缀和/或后缀进行代码补全和生成2b
一个最先进的经过预训练的 2B 变体,可以提供高达 2 倍的代码补全速度
优势
智能代码补全和生成:无论是本地工作还是使用 Google Cloud 资源,都可以补全行、函数,甚至生成整个代码块。
更高的准确性:CodeGemma 模型在主要来自网络文档、数学和代码的 5000 亿个英文语言令牌上进行训练,生成的代码不仅在语法上更正确,而且在语义上也更有意义,从而减少错误并缩短调试时间。
多语言熟练度:支持 Python、JavaScript、Java、Kotlin、C++、C#、Rust、Go 等语言。
简化的工作流程:将 CodeGemma 模型集成到开发环境中,可以减少编写样板代码,更快地专注于有趣且差异化的重要代码。
中间填充
CodeGemma 模型支持中间填充 (FIM),用于自动完成或编码助手工具。以下是一个使用 Ollama Python 库的示例
response = generate(
model='codegemma:2b-code',
prompt=f'<|fim_prefix|>{prefix}<|fim_suffix|>{suffix}<|fim_middle|>',
options={
'num_predict': 128,
'temperature': 0,
'top_p': 0.9,
'stop': ['<|file_separator|>'],
},
)