机器之心报道
编辑:魔王
该扩展利用可处理编程语言和自然语言的预训练模型 CodeBERT,实现快速生成 Python 文档字符串的功能。
Visual Studio Code(简称 VS Code)是一个由微软开发,同时支持 Windows、 Linux 和 macOS 等操作系统的免费代码编辑器,它支持测试,并内置了 Git 版本控制功能,同时也具有开发环境功能,例如代码补全、代码片段和代码重构等。VS Code 是程序员常用的代码编辑器之一,是一个可在所有平台上使用的开源、可扩展和轻量级的编辑器。这些品质使微软的 VS Code 大受欢迎,并成为 Python 开发的绝佳平台。
此外,VS Code 还拥有大量扩展,可以帮助提高开发效率、提升开发幸福感。今天,我们要介绍的就是一款可以生成 Python 文档字符串的 VS Code 扩展。
GitHub 地址:https://github.com/graykode/ai-docstring
扩展地址:https://marketplace.visualstudio.com/items?itemName=graykode.ai-docstring&ssr=false
该扩展利用 AI (NLP) 技术,快速生成 Python 函数的文档字符串(docstring)。原本 Python 函数的描述必须由用户编写,而使用这款扩展之后,AI 可以查看代码并进行总结。
具体而言,该扩展使用了微软等提出的预训练模型 CodeBERT,该模型可以处理双模态数据:自然语言和编程语言。
在训练过程中,该扩展使用 GitHub 团队创建的 CodeSearchNet 语料库作为训练数据,并使用 CodeBERT 中的 Code2NL(代码到自然语言)微调任务。该扩展的推断基准如下所示:
特性
这款 VS Code 扩展具备以下特性:
AI 快速生成文档字符串;
可以选择多种不同类型的文档字符串格式;
通过 pep484 类型提示、默认值和变量名,推断参数类型;
支持 args、kwargs、decorators、errors 和 parameter 类型。
其中支持的文档字符串格式包括:Google(默认)、docBlockr、Numpy、Sphinx,项目主页显示这款扩展还即将支持 PEP0257。
如何使用
这款 VS Code 扩展的使用较为简单。用户只需从容器中运行模型推断服务器,并在 VS Code 中安装扩展,即可使用。
具体步骤如下所示:
1. 从容器中运行模型推断服务器
如果已有 GPU 机器:在安装 nvidia-docker 后,运行 docker run -it -d --gpus 0 -p 5000:5000 graykode/ai-docstring:gpu;
如果只有 CPU:利用 Google Colab 和 ngrok 运行 flask 服务器(推荐)或者使用 docker cpu 镜像:docker run -it -d -p 5000:5000 graykode/ai-docstring:cpu。
2. 在 VS Code 中安装扩展并使用
光标必须在定义下方,以生成完全自动填充的文档字符串。
使用三引号("""或''')打开文档字符串,然后按回车键;
键盘快捷键:ctrl+shift+2,Mac 电脑的快捷键是 cmd+shift+2;
命令:Generate Docstring;
右击菜单:Generate Docstring。
项目作者
该项目的作者是来自韩国庆熙大学的计算机工程本科生 Tae-Hwan Jung。他对开源文化感兴趣,认为一个好的项目可以衍生新的行业和技术。
个人主页:https://libraries.io/github/graykode
© THE END
转载请联系 机器之心 公众号获得授权
投稿或寻求报道:content@jiqizhixin.com