package build import ( "os" "path/filepath" "sync" ) var ( defaultDir = sync.OnceValues(func() (string, error) { dir := os.Getenv("OLLAMA_MODELS") if dir == "" { home, err := os.UserHomeDir() if err != nil { return "", err } dir = filepath.Join(home, ".ollama", "models") } return dir, nil }) ) // DefaultDir returns the default directory for models. It returns the value // of the OLLAMA_MODELS environment variable if set; otherwise it returns // "$HOME/.ollama/models". func DefaultDir() (string, error) { return defaultDir() }