types/model: fix tag case

This commit is contained in:
Michael Yang 2024-05-08 08:47:09 -07:00
parent 2a5302a1cf
commit 486a2c1d94
2 changed files with 19 additions and 7 deletions

View file

@ -290,12 +290,14 @@ func (n Name) Filepath() string {
if !n.IsFullyQualified() {
panic("illegal attempt to get filepath of invalid name")
}
return strings.ToLower(filepath.Join(
return filepath.Join(
strings.ToLower(filepath.Join(
n.Host,
n.Namespace,
n.Model,
)),
n.Tag,
))
)
}
// LogValue returns a slog.Value that represents the name as a string.

View file

@ -19,6 +19,16 @@ func TestParseNameParts(t *testing.T) {
wantFilepath string
wantValidDigest bool
}{
{
in: "registry.ollama.ai/library/dolphin-mistral:7b-v2.6-dpo-laser-q6_K",
want: Name{
Host: "registry.ollama.ai",
Namespace: "library",
Model: "dolphin-mistral",
Tag: "7b-v2.6-dpo-laser-q6_K",
},
wantFilepath: filepath.Join("registry.ollama.ai", "library", "dolphin-mistral", "7b-v2.6-dpo-laser-q6_K"),
},
{
in: "scheme://host:port/namespace/model:tag",
want: Name{
@ -266,9 +276,9 @@ func TestFilepathAllocs(t *testing.T) {
allocs := testing.AllocsPerRun(1000, func() {
n.Filepath()
})
allowedAllocs := 2.0
var allowedAllocs float64 = 3
if runtime.GOOS == "windows" {
allowedAllocs = 4
allowedAllocs = 5
}
if allocs > allowedAllocs {
t.Errorf("allocs = %v; allowed %v", allocs, allowedAllocs)