前提:要有chatgpt账号,不会注册的关注抖音:21402780125,有免费教程!!
要在 Go 中调用 ChatGPT API,您可以使用 Go 的 net/http
包或其他 HTTP 客户端库来发送 HTTP 请求。
以下是使用 net/http
包调用 ChatGPT API 的示例代码:
package main import ( "encoding/json" "fmt" "io/ioutil" "net/http" "strings" ) func main() { url := "https://api.openai.com/v1/engines/davinci-codex/completions" prompt := "Hello, how are you?" temperature := 0.7 maxTokens := 100 data := map[string]interface{}{ "prompt": prompt, "temperature": temperature, "max_tokens": maxTokens, } jsonData, err := json.Marshal(data) if err != nil { fmt.Println("Error:", err) return } req, err := http.NewRequest("POST", url, strings.NewReader(string(jsonData))) if err != nil { fmt.Println("Error:", err) return } req.Header.Set("Content-Type", "application/json") req.Header.Set("Authorization", "Bearer YOUR_API_SECRET_KEY") client := &http.Client{} resp, err := client.Do(req) if err != nil { fmt.Println("Error:", err) return } defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Println("Error:", err) return } var jsonResponse map[string]interface{} if err := json.Unmarshal(body, &jsonResponse); err != nil { fmt.Println("Error:", err) return } fmt.Println(jsonResponse) }