From e595783d8987a0807b294a39e415e9a461fac7ec Mon Sep 17 00:00:00 2001 From: John Costa Date: Fri, 7 Mar 2025 13:42:50 +0000 Subject: [PATCH] wip: Using mistral instead of OpenAi --- backend/main.go | 3 +++ backend/openai.go | 15 ++++++++------- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/backend/main.go b/backend/main.go index f0b9c7a..2c62899 100644 --- a/backend/main.go +++ b/backend/main.go @@ -88,6 +88,8 @@ func main() { return } + fmt.Printf("%+v\n", image) + imageInfo, err := openAiClient.GetImageInfo(image.Image.ImageName, image.Image.Image) if err != nil { log.Println("2") @@ -180,6 +182,7 @@ func main() { } image, err := io.ReadAll(r.Body) + fmt.Println(image) if err != nil { log.Println("First case") diff --git a/backend/openai.go b/backend/openai.go index cfab5fa..49644ff 100644 --- a/backend/openai.go +++ b/backend/openai.go @@ -72,9 +72,7 @@ func (content *OpenAiMessages) AddImage(imageName string, image []byte) error { arrayMessage := OpenAiArrayMessage{Role: ROLE_USER, Content: make([]OpenAiContent, 1)} arrayMessage.Content[0] = OpenAiImage{ ImageType: IMAGE_TYPE, - ImageUrl: ImageUrl{ - Url: fmt.Sprintf("data:image/%s;base64,%s", extension, encodedString), - }, + ImageUrl: fmt.Sprintf("data:image/%s;base64,%s", extension, encodedString), } content.Messages = append(content.Messages, arrayMessage) @@ -104,8 +102,8 @@ type ImageUrl struct { } type OpenAiImage struct { - ImageType string `json:"type"` - ImageUrl ImageUrl `json:"image_url"` + ImageType string `json:"type"` + ImageUrl string `json:"image_url"` } func (imageMessage OpenAiImage) ToJson() ([]byte, error) { @@ -192,7 +190,7 @@ func CreateOpenAiClient() (OpenAiClient, error) { return OpenAiClient{ apiKey: apiKey, - url: "https://api.openai.com/v1/chat/completions", + url: "https://api.mistral.ai/v1/chat/completions", systemPrompt: PROMPT, Do: func(req *http.Request) (*http.Response, error) { client := &http.Client{} @@ -279,7 +277,7 @@ func parseOpenAiResponse(jsonResponse []byte) (ImageInfo, error) { } func (client OpenAiClient) GetImageInfo(imageName string, imageData []byte) (ImageInfo, error) { - aiRequest, err := getCompletionsForImage("gpt-4o-mini", 1.0, client.systemPrompt, imageName, RESPONSE_FORMAT, imageData) + aiRequest, err := getCompletionsForImage("pixtral-12b-2409", 1.0, client.systemPrompt, imageName, RESPONSE_FORMAT, imageData) if err != nil { return ImageInfo{}, err } @@ -300,6 +298,8 @@ func (client OpenAiClient) GetImageInfo(imageName string, imageData []byte) (Ima return ImageInfo{}, err } + fmt.Println(string(jsonAiRequest)) + request, err := client.getRequest(jsonAiRequest) if err != nil { return ImageInfo{}, err @@ -315,5 +315,6 @@ func (client OpenAiClient) GetImageInfo(imageName string, imageData []byte) (Ima return ImageInfo{}, err } + fmt.Println(string(response)) return parseOpenAiResponse(response) }