环境需求:
- 一台有公网IP的服务器。
- 用于学习的SS代理账号。
- 一个chat.openai账号。
- 一门熟悉的开发语言。
1.在openapi-platfrom获取go实例代码
# Libraries
https://platform.openai.com/docs/libraries
2.有请求外网的能力(ss),参考以下文章,搭建本地服务器代理
#Ubuntu Server 安装 shadowsocks 客户端
https://www.liwuguan.cn/2023/02/26/ubuntu-server-安装-shadowsocks-客户端/
3.实例代码
package main
import (
"context"
"crypto/tls"
"fmt"
gogpt "github.com/sashabaranov/go-gpt3"
"net/http"
"net/url"
)
func main() {
u, err := url.Parse("//127.0.0.1:8118")
if err != nil {
panic(err)
}
tr := &http.Transport{
Proxy: http.ProxyURL(u),
// Disable HTTP/2.
TLSNextProto: make(map[string]func(authority string, c *tls.Conn) http.RoundTripper),
}
client := &http.Client{Transport: tr}
AuthToken := "sk-********jlV" # your token
conf := gogpt.DefaultConfig(AuthToken)
conf.HTTPClient = client
c := gogpt.NewClientWithConfig(conf)
ctx := context.Background()
req := gogpt.CompletionRequest{
Model: gogpt.GPT3TextCurie001,
MaxTokens: 1000,
Prompt: "Write a poem",
}
resp, err := c.CreateCompletion(ctx, req)
if err != nil {
return
}
fmt.Println(resp.Choices[0].Text)
}
4.即见效果:
5.观察计费:
chat-GPT的API调用是需要收费的,API 由一组具有不同功能和价位的模型提供支持。它的基础 GPT-3 模型称为 Davinci、Curie、Babbage 和 Ada。它的 Codex 系列是 GPT-3 的后代,已接受自然语言和代码方面的培训。要了解更多信息,请访问官方的模型文档。
6.拓展延伸:
这样你就可以把openai作为一个资源库输出到想要的地方了。(公众号、小程序、其它..)œ