Pour vous connecter à l’API de ChatGPT avec Go, vous aurez besoin de faire une requête HTTP à l’API de OpenAI. Voici un exemple de code que vous pouvez utiliser :
```
package main
import (
“bytes“
“encoding/json“
“io/ioutil“
“log“
“net/http“
)
type Payload struct {
Model string `json:“model”`
Prompt string `json:“prompt”`
MaxTokens int `json:“max_tokens”`
}
func main() { data := Payload{ Model: “text-davinci-002”, Prompt: “Once upon a time”, MaxTokens: 100, }
payloadBytes, err := json.Marshal(data) if err != nil { log.Fatal(err) } body := bytes.NewReader(payloadBytes)
req, err := http.NewRequest(“POST”, “https://api.openai.com/v1/engines/davinci-codex/completions”, body) if err != nil { log.Fatal(err) } req.Header.Set(“Content-Type”, “application/json”) req.Header.Set(“Authorization”, “Bearer YOUR_OPEN_AI_KEY”)
resp, err := http.DefaultClient.Do(req) if err != nil { log.Fatal(err) } defer resp.Body.Close()
bodyResp, err := ioutil.ReadAll(resp.Body) if err != nil { log.Fatal(err) }
log.Println(string(bodyResp))
}
```
Dans ce code, remplacez `“Bearer YOUR_OPEN_AI_KEY”` avec votre clé API réelle. De plus, n’oubliez pas de remplacer la valeur de l’attribut “Modèle” et l’URL en fonction du modèle ChatGPT que vous souhaitez interroger.
La variable `data` est le payload que vous envoyez à l’API. Dans cet exemple, nous avons défini les champe ‘model’, ‘prompt’ et ‘max\_tokens’ pour générer 100 tokens à partir de la phrase “Once upon a time” en utilisant le modèle “text-davinci-002”. Vous pouvez modifier ces valeurs en fonction de vos besoins.
Veuillez noter que ce code envoie une requête POST avec le payload JSON à l’API de OpenAI, et lit ensuite la réponse, en l’affichant dans la console.