Browse Source

runner/ollamarunner: set temperature to 0 when images are provided

jmorganca 1 month ago
parent
commit
15b8875cfc
1 changed files with 10 additions and 1 deletions
  1. 10 1
      runner/ollamarunner/runner.go

+ 10 - 1
runner/ollamarunner/runner.go

@@ -590,8 +590,17 @@ func (s *Server) completion(w http.ResponseWriter, r *http.Request) {
 		}
 	}
 
+	// temperature > 0 can tend to cause the model to
+	// hallucinate, so when images are provided, so
+	// we use a temperature of 0 for requests that
+	// include them
+	temperature := req.Temperature
+	if len(req.Images) > 0 {
+		temperature = 0
+	}
+
 	sampler := sample.NewSampler(
-		req.Temperature,
+		temperature,
 		req.TopK,
 		req.TopP,
 		req.MinP,