当前位置:  首页>> 技术小册>> ChatGPT通关之路(下)

新手程序员在入门之初,最好的学习路径就是直接阅读其他人的代码,从中学习别人是怎么写的,为什么这么写。过去,这个学习过程可能需要广泛阅读官方文档,在GitHub issue上提问,上Stack Overflow网站查询,见缝插针找同部门的老同事请教……现在,我们可以试试让ChatGPT来当这个老师,由ChatGPT解释代码。

比如我们在GitHub首页右侧的开源项目趋势榜上找到今日热度最高的项目来学习,叫Auto-GPT(由于ChatGPT的火热,目前趋势榜单上几乎都是ChatGPT相关内容)。在主要源代码目录scripts/里,看到一个叫llm_utils.py的Python文件。一般来说,以”util”命名的文件里放的都是独立的抽象功能,可以方便读者快速阅读。我们就让ChatGPT来解释这个文件吧。

请解释下面这段python代码:

ChatGPT很贴心地把文件分成了三段,分别解释了第一段导入OpenAI外部库。第二段导入config.py内部实现类并创建对象,将对象内的属性值传给OpenAI。第三段对具体函数做解释,分别包括入参和出参的含义、数据类型等。

如果是我们自己写代码,其实同样可以让ChatGPT解读。这样可以看看ChatGPT的理解,是否和我们编程时考虑的逻辑保持一致。未来由其他同事来维护这段代码时,不至于产生误解。为了长期留存ChatGPT的解读,我们还可以指定ChatGPT按照代码注释说明文档的形式来生成,如下图所示。

为上述create_chat_completion函数生成一个docstring格式的注释。

ChatGPT生成结果非常惊艳。ChatGPT不光解释了入参和出参,还根据上下文提示了config配置的依赖前提,并给出了一个具体的函数使用和输出示例,可以说大大提升了代码的可维护性。