renderer.go 422 Bytes
Newer Older
Devon Rifkin's avatar
Devon Rifkin committed
1
2
package renderers

3
import "github.com/ollama/ollama/api"
Devon Rifkin's avatar
Devon Rifkin committed
4

5
6
type Renderer interface {
	Render(messages []api.Message, tools []api.Tool, think *api.ThinkValue) (string, error)
Devon Rifkin's avatar
Devon Rifkin committed
7
8
}

9
func RendererForName(name string) Renderer {
Devon Rifkin's avatar
Devon Rifkin committed
10
11
	switch name {
	case "qwen3-coder":
12
13
14
15
16
		renderer := &Qwen3CoderRenderer{}
		return renderer
	case "qwen3-vl-instruct":
		renderer := &Qwen3VLRenderer{false}
		return renderer
Devon Rifkin's avatar
Devon Rifkin committed
17
18
19
20
	default:
		return nil
	}
}