概述
chatGPT从2022年11月份崭露头角以来,一直备受关注。他的人工智能对话颠覆了以往智能对话的刻板印象,跟chatGPT聊天,感觉就像百晓生一样,什么都懂。尤其在编程方面,chatGPT可以根据实际的业务场景需求,编写业务代码,也可以对代码进行优化,改错,本文结合目前的chatGPTBox插件,来演示,如何让chatGPT陪你一起读源码。
准备
chatGPTBox
- 项目链接: https://github.com/josStorer/chatGPTBox
- 使用指南: https://github.com/josStorer/chatGPTBox/wiki/Guide
- 开发构建: https://github.com/josStorer/chatGPTBox/wiki/Development&Contributing
目前该项目已经在谷歌chrome以及火狐firefox的插件商城上线了,可以直接在插件市场进行安装
谷歌:https://chrome.google.com/webstore/detail/chatgptbox/eobbhoofkanlmddnplfhnmkfbnlhpbbo
火狐:https://addons.mozilla.org/zh-CN/firefox/addon/chatgptbox/
chatGPT API Key
使用个人账号登录到openai.com,打开 https://platform.openai.com/account/api-keys 管理API keys
创建一个secret key,来调用openai.com的接口服务,每个账号都有18美元的免费额度
配置chatGPTBox
将secret key配置到chatGPTBox,即可完成
演示
这里我摘取了gin-vue-admin的一个代码片段,来进行演示
func (userService *UserService) Login(u *system.SysUser) (userInter *system.SysUser, err error) {
if nil == global.GVA_DB {
return nil, fmt.Errorf("db not init")
}
var user system.SysUser
err = global.GVA_DB.Where("username = ?", u.Username).Preload("Authorities").Preload("Authority").First(&user).Error
if err == nil {
if ok := utils.BcryptCheck(u.Password, user.Password); !ok {
return nil, errors.New("密码错误")
}
MenuServiceApp.UserAuthorityDefaultRouter(&user)
}
return &user, err
}
代码概要Summary
选中一段代码,点击chatGPTBox的Summary,可以让chatGPT简要解释这段代码的功能
代码优化Polish
选中一段代码,点击chatGPTBox的Polish按钮,可以让chatGPT对这段代码进行优化
解读代码
选中一段代码,点击chatGPTBox的Code explain按钮,可以让chatGPT对这段代码进行详细解读
增加代码注释
在对话框中,输入 “增加中文注释”,即可得到对该代码的详细注释
增加Swagger接口注解
在上下文中,输入"增加swagger接口注解",chatGPT可以理解后,返回注解代码
总结
chatGPTBox集成了chatGPT的api接口,实现了我们在看源码时候,可以快速地帮我们来理解代码片段的意思,从而可以更加快速地掌握产品源码,就像一个编程高手随时在身边一样。