AI接入微信公众号方法总结
环境准备
2.AI的访问api-key,这个需要科学上网申请个账号,获取api-key并保存好。
3.一台云服务器。各大云商有提供,包年很便宜,部署下Golang的后台服务。
实现思路
总体方案介绍
客服回复消息接口
需要注意的是,需要使用golang的协程异步处理,因为用户发送信息后若5秒内没响应,会报服务异常的。异步示例如下:
var wxReceiveFunc = func(msg wxapi.WxReceiveCommonMsg) error {
fmt.Println("weixin msg received")
fmt.Printf("%#v
", msg)
touser := msg.FromUserName
content := msg.Content
accessToken := wxapi.WxGetAccessToken()
//异步请求chatAI,成功后调用客服接口回复
go func(){
resp:=chatapi.AskChatAI(content)
if(resp !=""){
wxapi.WxPostCustomTextMsg(accessToken,touser,resp)
}else{
wxapi.WxPostCustomTextMsg(accessToken,touser,"chatGPT服务异常")
}
}()
return nil
}
text-davinci-003介绍
使用text-davinci-003的模型的ai的接口,详细的介绍参照地址:
https://beta.openai.com/docs/api-reference/completions/create#completions/create-model
关于text-davinci-003和官方AI的区别,参照下面文章,其实用起来差别不大。甚至text-davinci-003在写作创造方面更优秀。简单说AI是个产品,text-davinci-003更面向开发者开发产品使用。
curl https://api.openai.com/v1/completions
-H "Content-Type: application/json"
-H "Authorization: Bearer YOUR_API_KEY"
-d {"model": "text-davinci-003", "prompt": "Say this is a test", "temperature": 0, "max_tokens": 7}
{
"id": "cmpl-uqkvlQyYK7bGYrRHQ0eXlWi7",
"object": "text_completion",
"created": 1589478378,
"model": "text-davinci-003",
"choices": [
{
"text": "
This is indeed a test",
"index": 0,
"logprobs": null,
"finish_reason": "length"
}
],
"usage": {
"prompt_tokens": 5,
"completion_tokens": 7,
"total_tokens": 12
}
}
官方貌似只提供了python的demo和接口实现,其实模拟http调用使用其他语言都可以实现。
main.go代码实现
至于里面的每日发送是啥?
大盘信息获取接口实现:
每日天气接口实现:
其他资源
https://beta.openai.com/docs/api-reference/completions/create#completions/create-model
上一篇:
uniapp开发微信小程序-2.页面制作
下一篇:
个人号微信机器人API接口
