Browse Source

fix prompt for non-mllama multimodal

Patrick Devine 7 months ago
parent
commit
96a8b2f7d8
1 changed files with 18 additions and 18 deletions
  1. 18 18
      server/prompt.go

+ 18 - 18
server/prompt.go

@@ -84,25 +84,25 @@ func chatPrompt(ctx context.Context, m *Model, tokenize tokenizeFunc, opts *api.
 			msgs[lastMsgIdx].Content = strings.TrimSpace("<|image|>" + msgs[lastMsgIdx].Content)
 			msgs[lastMsgIdx].Content = strings.TrimSpace("<|image|>" + msgs[lastMsgIdx].Content)
 			images = append(images, imgData)
 			images = append(images, imgData)
 		}
 		}
-	}
-
-	for cnt, msg := range msgs[currMsgIdx:] {
-		for _, i := range msg.Images {
-			imgData := llm.ImageData{
-				ID:   len(images),
-				Data: i,
-			}
-
-			imageTag := fmt.Sprintf("[img-%d]", imgData.ID)
-			prompt := msg.Content
-
-			if !strings.Contains(prompt, "[img]") {
-				prompt = strings.TrimSpace("[img] " + prompt)
+	} else {
+		for cnt, msg := range msgs[currMsgIdx:] {
+			for _, i := range msg.Images {
+				imgData := llm.ImageData{
+					ID:   len(images),
+					Data: i,
+				}
+
+				imageTag := fmt.Sprintf("[img-%d]", imgData.ID)
+				prompt := msg.Content
+
+				if !strings.Contains(prompt, "[img]") {
+					prompt = strings.TrimSpace("[img] " + prompt)
+				}
+				prompt = strings.Replace(prompt, "[img]", imageTag, 1)
+				msgs[currMsgIdx+cnt].Content = prompt
+
+				images = append(images, imgData)
 			}
 			}
-			prompt = strings.Replace(prompt, "[img]", imageTag, 1)
-			msgs[currMsgIdx+cnt].Content = prompt
-
-			images = append(images, imgData)
 		}
 		}
 	}
 	}