GolangNote

Golang笔记

ChatGPT Golang 客户端

Permalink

最近 ChatGPT 很火,这是用于 ChatGPI 的 Golang 控制台客户端。

ChatGPT 是一种自然语言处理模型,可以用来实现聊天机器人。客户端通常指的是用于与聊天机器人交互的应用程序。例如,通过客户端,用户可以输入文本,然后聊天机器人将通过文本和语音等方式回复用户。客户端通常包括用户界面,可以让用户浏览消息历史记录,并通过该界面与聊天机器人进行交互。

首先申请 API KEY https://beta.openai.com/account/api-keys

chatgpt 控制台客户端

https://github.com/kkdai/chatgpt

这个库使用了 go-gpt3 库 https://github.com/PullRequestInc/go-gpt3

另一个 gpt3 库 https://github.com/sashabaranov/go-gpt3

PullRequestInc/go-gpt3 简单示例

Go:
1
2
3
4
5
6
7
8
client := gpt3.NewClient(apiKey)
resp, err := client.Completion(ctx, gpt3.CompletionRequest{
    Prompt: []string{"2, 3, 5, 7, 11,"},
})

fmt.Print(resp.Choices[0].Text)
// prints " 13, 17, 19, 23, 29, 31", etc

sashabaranov/go-gpt3 简单示例

Go:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
func main() {
	c := gogpt.NewClient("your token")
	ctx := context.Background()

	req := gogpt.CompletionRequest{
		Model: "ada",
		MaxTokens: 5,
		Prompt:    "Lorem ipsum",
	}
	resp, err := c.CreateCompletion(ctx, req)
	if err != nil {
		return
	}
	fmt.Println(resp.Choices[0].Text)

	searchReq := gogpt.SearchRequest{
		Documents: []string{"White House", "hospital", "school"},
		Query:     "the president",
	}
	searchResp, err := c.Search(ctx, "ada", searchReq)
	if err != nil {
		return
	}
	fmt.Println(searchResp.SearchResults)
}

本文网址: https://golangnote.com/topic/317.html 转摘请注明来源

Related articles

Golang实现简单的Socks5代理

Socks5 代理较 `http/https` 代理有较好的性能,下面是借鉴某个著名开源软件的 local 实现的简单代理。...

Golang http client 处理重定向网页

假设一个网址有多个重定向,A-B-C-D,使用 http.Client.Get 最后取得的内容是网址D的内容,我们该手动处理包含重定向的网址。...

Write a Comment to "ChatGPT Golang 客户端"

Submit Comment Login
Based on Golang + fastHTTP + sdb | go1.22.3 Processed in 0ms