diff --git a/server/routes.go b/server/routes.go index afa49d10..7f8f356f 100644 --- a/server/routes.go +++ b/server/routes.go @@ -1092,12 +1092,12 @@ func streamResponse(c *gin.Context, ch chan any) { } // ChatPrompt builds up a prompt from a series of messages for the currently `loaded` model -func chatPrompt(ctx context.Context, model *Model, messages []api.Message) (string, error) { +func chatPrompt(ctx context.Context, template, system string, messages []api.Message, numCtx int) (string, error) { encode := func(s string) ([]int, error) { return loaded.runner.Encode(ctx, s) } - prompt, err := ChatPrompt(model.Template, model.System, messages, loaded.Options.NumCtx, encode) + prompt, err := ChatPrompt(template, system, messages, numCtx, encode) if err != nil { return "", err } @@ -1167,7 +1167,7 @@ func ChatHandler(c *gin.Context) { checkpointLoaded := time.Now() - prompt, err := chatPrompt(c.Request.Context(), model, req.Messages) + prompt, err := chatPrompt(c.Request.Context(), model.Template, model.System, req.Messages, opts.NumCtx) if err != nil { c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) return