schema_version = 1

name        = "CodeLlama 7B Code FIM"
description = "Local CodeLlama 7B (code variant) on Ollama, FIM completion via PRE/SUF/MID markers."

provider_instance = "Ollama (Native)"
endpoint          = "/api/generate"

model = "codellama:7b-code"

tags = ["fim", "ollama", "local", "codellama"]

[match]
file_patterns = ["*.cpp", "*.cc", "*.cxx", "*.c", "*.h", "*.hpp", "*.hxx", "*.inl"]

[template]
message_format = """
{
  "prompt": {{ tojson("<PRE> " + ctx.prefix + " <SUF>" + ctx.suffix + " <MID>") }}
  {%- if existsIn(ctx, "system_prompt") %},
  "system": {{ tojson(ctx.system_prompt) }}
  {%- endif %}
}
"""

[template.sampling]
stream = true

[template.sampling.options]
num_predict = 512
temperature = 0.2
top_p       = 0.9
keep_alive  = "5m"
stop = ["<EOT>", "<PRE>", "<SUF>", "<MID>"]
