如何快速接入chatgpt?[引入go-gpt3]
- 上文介绍了如何在网页使用chatgpt?
- V1.介绍下在golang中使用chatgpt?
- 1.查看官网推荐的chatgpt项目
- 2.访问go-gpt3
- 3.使用并运行在自己的项目中...(是因为例子很难理解,所以一一对应了属性做了配置)
- 3.1安装项目
- 3.2换上自己的代码
- 3.3换上自己的key
- 4.运行结果如图...
- 5.对照网页版运行结果...
- V2.已集成Gin/Html做成网页版本...
- 完整代码
上文介绍了如何在网页使用chatgpt?
ChatGPT-OpenAI注册使用保姆级教程?[开箱可用][免费使用]
V1.介绍下在golang中使用chatgpt?
1.查看官网推荐的chatgpt项目
先看官网推荐的项目
2.访问go-gpt3
go-gpt3
3.使用并运行在自己的项目中…(是因为例子很难理解,所以一一对应了属性做了配置)
3.1安装项目
先是go get github.com/sashabaranov/go-gpt3
参数很多,跟网页版的区别不大…
3.2换上自己的代码
package mainimport ("context""fmt"gogpt "github.com/sashabaranov/go-gpt3"
)func main() {token := "Your Key"ask := "Please write a article About how to live in the china?"example(token, ask)
}func example(token string, prompt string) {c := gogpt.NewClient(token)ctx := context.Background()req := gogpt.CompletionRequest{Model: gogpt.GPT3TextDavinci001,Temperature: 0.4,MaxTokens: 1000,TopP: 1,FrequencyPenalty: 0,PresencePenalty: 0,BestOf: 1,Prompt: prompt,}resp, err := c.CreateCompletion(ctx, req)if err != nil {return}fmt.Println(resp.Choices[0].Text)
}
3.3换上自己的key
4.运行结果如图…
5.对照网页版运行结果…
V2.已集成Gin/Html做成网页版本…
main.go
package mainimport ("embed""github.com/gin-gonic/gin""html/template""io/ioutil""net/http""strings"
)//go:embed static/* templates/*
var f embed.FSfunc main() {router := gin.Default()// asset加载htmltemplates, err := loadTemplate()if err != nil {panic(err)}// 配置模板router.SetHTMLTemplate(templates)// 配置静态文件夹路径 第一个参数是api,第二个是文件夹路径router.StaticFS("/static/", http.FS(f))rootGroup := router.Group("/"){rootGroup.GET("/", Index)rootGroup.GET("/index", Index)rootGroup.GET("/test/", Test)rootGroup.POST("/chatgpt", ChatGPT)}router.Run(":9090")
}// 执行命令: go-assets-builder templates -o assets.go -p main
func loadTemplate() (*template.Template, error) {t := template.New("")for name, file := range Assets.Files {// 可以用.tmpl .htmlif file.IsDir() || !strings.HasSuffix(name, ".html") {continue}h, err := ioutil.ReadAll(file)if err != nil {return nil, err}t, err = t.New(name).Parse(string(h))if err != nil {return nil, err}}return t, nil
}
完整代码
Github-chatgpt-demo