package ollama import ( "io" "net/url" "strings" ) func joinURL(baseURL, path string) string { u, err := url.Parse(baseURL) if err != nil { return strings.TrimRight(baseURL, "/") + path } u.Path = strings.TrimRight(u.Path, "/") + path return u.String() } func joinURLRequestURI(baseURL, requestURI string) string { u, err := url.Parse(baseURL) if err != nil { return strings.TrimRight(baseURL, "/") + requestURI } rel, err := url.Parse(requestURI) if err != nil { u.Path = strings.TrimRight(u.Path, "/") + requestURI return u.String() } u.Path = strings.TrimRight(u.Path, "/") + rel.Path u.RawQuery = rel.RawQuery return u.String() } func readLimited(r io.Reader, limit int64) string { b, _ := io.ReadAll(io.LimitReader(r, limit)) return strings.TrimSpace(string(b)) }