|
|
|
@ -47,8 +47,7 @@ var _ = Describe("API test", func() { |
|
|
|
|
It("returns the models list", func() { |
|
|
|
|
models, err := client.ListModels(context.TODO()) |
|
|
|
|
Expect(err).ToNot(HaveOccurred()) |
|
|
|
|
Expect(len(models.Models)).To(Equal(5)) |
|
|
|
|
Expect(models.Models[0].ID).To(Equal("testmodel")) |
|
|
|
|
Expect(len(models.Models)).To(Equal(7)) |
|
|
|
|
}) |
|
|
|
|
It("can generate completions", func() { |
|
|
|
|
resp, err := client.CreateCompletion(context.TODO(), openai.CompletionRequest{Model: "testmodel", Prompt: "abcdedfghikl"}) |
|
|
|
@ -97,6 +96,33 @@ var _ = Describe("API test", func() { |
|
|
|
|
Expect(err).ToNot(HaveOccurred()) |
|
|
|
|
Expect(resp.Text).To(ContainSubstring("This is the Micro Machine Man presenting")) |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
It("calculate embeddings", func() { |
|
|
|
|
if runtime.GOOS != "linux" { |
|
|
|
|
Skip("test supported only on linux") |
|
|
|
|
} |
|
|
|
|
resp, err := client.CreateEmbeddings( |
|
|
|
|
context.Background(), |
|
|
|
|
openai.EmbeddingRequest{ |
|
|
|
|
Model: openai.AdaEmbeddingV2, |
|
|
|
|
Input: []string{"sun", "cat"}, |
|
|
|
|
}, |
|
|
|
|
) |
|
|
|
|
Expect(err).ToNot(HaveOccurred()) |
|
|
|
|
Expect(len(resp.Data[0].Embedding)).To(BeNumerically("==", 384)) |
|
|
|
|
Expect(len(resp.Data[1].Embedding)).To(BeNumerically("==", 384)) |
|
|
|
|
|
|
|
|
|
sunEmbedding := resp.Data[0].Embedding |
|
|
|
|
resp2, err := client.CreateEmbeddings( |
|
|
|
|
context.Background(), |
|
|
|
|
openai.EmbeddingRequest{ |
|
|
|
|
Model: openai.AdaEmbeddingV2, |
|
|
|
|
Input: []string{"sun"}, |
|
|
|
|
}, |
|
|
|
|
) |
|
|
|
|
Expect(err).ToNot(HaveOccurred()) |
|
|
|
|
Expect(resp2.Data[0].Embedding).To(Equal(sunEmbedding)) |
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
Context("Config file", func() { |
|
|
|
@ -123,8 +149,7 @@ var _ = Describe("API test", func() { |
|
|
|
|
|
|
|
|
|
models, err := client.ListModels(context.TODO()) |
|
|
|
|
Expect(err).ToNot(HaveOccurred()) |
|
|
|
|
Expect(len(models.Models)).To(Equal(7)) |
|
|
|
|
Expect(models.Models[0].ID).To(Equal("testmodel")) |
|
|
|
|
Expect(len(models.Models)).To(Equal(9)) |
|
|
|
|
}) |
|
|
|
|
It("can generate chat completions from config file", func() { |
|
|
|
|
resp, err := client.CreateChatCompletion(context.TODO(), openai.ChatCompletionRequest{Model: "list1", Messages: []openai.ChatCompletionMessage{openai.ChatCompletionMessage{Role: "user", Content: "abcdedfghikl"}}}) |
|
|
|
|