소스 검색

llm: do not evaluate symlink for exe path lookup (#9088)

In some cases, the directories in the executable path read by
filepath.EvalSymlinks are not accessible, resulting in permission
errors which results in an error when running models. It also
doesn't work well on long paths on windows, also resulting in
errors. This change removes filepath.EvalSymlinks when accessing
os.Executable() altogether
Jeffrey Morgan 2 달 전
부모
커밋
f05774b04c
2개의 변경된 파일0개의 추가작업 그리고 10개의 파일을 삭제
  1. 0 5
      discover/path.go
  2. 0 5
      llm/server.go

+ 0 - 5
discover/path.go

@@ -19,11 +19,6 @@ var LibOllamaPath string = func() string {
 		return ""
 	}
 
-	exe, err = filepath.EvalSymlinks(exe)
-	if err != nil {
-		return ""
-	}
-
 	var libPath string
 	switch runtime.GOOS {
 	case "windows":

+ 0 - 5
llm/server.go

@@ -320,11 +320,6 @@ func NewLlamaServer(gpus discover.GpuInfoList, model string, f *ggml.GGML, adapt
 			return nil, fmt.Errorf("unable to lookup executable path: %w", err)
 		}
 
-		exe, err = filepath.EvalSymlinks(exe)
-		if err != nil {
-			return nil, fmt.Errorf("unable to evaluate symlinks for executable path: %w", err)
-		}
-
 		// TODO - once fully switched to the Go runner, load the model here for tokenize/detokenize cgo access
 		s := &llmServer{
 			port:        port,