Spaces:
Configuration error
Configuration error
| package templates_test | |
| import ( | |
| . "github.com/mudler/LocalAI/pkg/templates" // Update with your module path | |
| // Update with your module path | |
| . "github.com/onsi/ginkgo/v2" | |
| . "github.com/onsi/gomega" | |
| ) | |
| var _ = Describe("EvaluateTemplate", func() { | |
| Context("templating simple strings for multimodal chat", func() { | |
| It("should template messages correctly", func() { | |
| result, err := TemplateMultiModal("", MultiModalOptions{ | |
| TotalImages: 1, | |
| TotalAudios: 0, | |
| TotalVideos: 0, | |
| ImagesInMessage: 1, | |
| AudiosInMessage: 0, | |
| VideosInMessage: 0, | |
| }, "bar") | |
| Expect(err).NotTo(HaveOccurred()) | |
| Expect(result).To(Equal("[img-0]bar")) | |
| }) | |
| It("should handle messages with more images correctly", func() { | |
| result, err := TemplateMultiModal("", MultiModalOptions{ | |
| TotalImages: 2, | |
| TotalAudios: 0, | |
| TotalVideos: 0, | |
| ImagesInMessage: 2, | |
| AudiosInMessage: 0, | |
| VideosInMessage: 0, | |
| }, "bar") | |
| Expect(err).NotTo(HaveOccurred()) | |
| Expect(result).To(Equal("[img-0][img-1]bar")) | |
| }) | |
| It("should handle messages with more images correctly", func() { | |
| result, err := TemplateMultiModal("", MultiModalOptions{ | |
| TotalImages: 4, | |
| TotalAudios: 1, | |
| TotalVideos: 0, | |
| ImagesInMessage: 2, | |
| AudiosInMessage: 1, | |
| VideosInMessage: 0, | |
| }, "bar") | |
| Expect(err).NotTo(HaveOccurred()) | |
| Expect(result).To(Equal("[audio-0][img-2][img-3]bar")) | |
| }) | |
| It("should handle messages with more images correctly", func() { | |
| result, err := TemplateMultiModal("", MultiModalOptions{ | |
| TotalImages: 3, | |
| TotalAudios: 1, | |
| TotalVideos: 0, | |
| ImagesInMessage: 1, | |
| AudiosInMessage: 1, | |
| VideosInMessage: 0, | |
| }, "bar") | |
| Expect(err).NotTo(HaveOccurred()) | |
| Expect(result).To(Equal("[audio-0][img-2]bar")) | |
| }) | |
| It("should handle messages with more images correctly", func() { | |
| result, err := TemplateMultiModal("", MultiModalOptions{ | |
| TotalImages: 0, | |
| TotalAudios: 0, | |
| TotalVideos: 0, | |
| ImagesInMessage: 0, | |
| AudiosInMessage: 0, | |
| VideosInMessage: 0, | |
| }, "bar") | |
| Expect(err).NotTo(HaveOccurred()) | |
| Expect(result).To(Equal("bar")) | |
| }) | |
| }) | |
| Context("templating with custom defaults", func() { | |
| It("should handle messages with more images correctly", func() { | |
| result, err := TemplateMultiModal("{{ range .Audio }}[audio-{{ add1 .ID}}]{{end}}{{ range .Images }}[img-{{ add1 .ID}}]{{end}}{{ range .Video }}[vid-{{ add1 .ID}}]{{end}}{{.Text}}", MultiModalOptions{ | |
| TotalImages: 1, | |
| TotalAudios: 0, | |
| TotalVideos: 0, | |
| ImagesInMessage: 1, | |
| AudiosInMessage: 0, | |
| VideosInMessage: 0, | |
| }, "bar") | |
| Expect(err).NotTo(HaveOccurred()) | |
| Expect(result).To(Equal("[img-1]bar")) | |
| }) | |
| }) | |
| }) | |