我经常在远程Jupyter服务器上做很多工作。我一直使用VSCode在这些服务器上运行笔记本,因为这是我能找到的最简单的同时使用Copilot进行开发的方式,但它变得相当繁琐,希望有更简单的解决方案。
非常感谢您能提供的任何帮助!
我经常在远程Jupyter服务器上做很多工作。我一直使用VSCode在这些服务器上运行笔记本,因为这是我能找到的最简单的同时使用Copilot进行开发的方式,但它变得相当繁琐,希望有更简单的解决方案。
非常感谢您能提供的任何帮助!
虽然不是答案,但对于评论来说太长了。
截至2022年中期,似乎还没有实现。
Copilot使用一种名为OpenAI Codex的底层工具,其中有一个称为codex-davinci-002
的模型,可以完成代码补全。
https://beta.openai.com/docs/models/codex-series-private-beta
(值得注意的是,OpenAI还有一个令人困惑的模型称为text-davinci-002
,它将自然语言转换为代码,这不是我们想要的)。它是免费的,但有一个等待测试的beta列表。有一个名为jupyterlab-codex
的jupyterlab尝试实现这一点。鉴于搜索结果,它可能在某个时候起作用,例如,https://medium.com/codex/jupyter-notebook-can-do-that-b3185058fe76。因此,需要关注的事情是“Jupyter + Codex”,而不仅仅是“Jupyter + copilot”。
编辑 最近有几个基于GPT3的代码自动完成工具可以在Jupyter Lab中使用,但就我所知,它们并不像Copilot那样好用,甚至有点令人不安。Copilot有一个烦人的问题,就是TAB键既可以接受Copilot的建议,也可以添加空格,而PyCharm的建议则与之相冲突。在Jupyter Lab中,TAB键会显示一个选择元素的工具提示,这似乎是Tabnine或kite干净利落地使用了这一点,但它们无法超越变量自动完成。比如你写了def convert_centimetres_to_inches(centimetres:float) -> float:
,在Copilot中,会建议3-4行正确的代码和文档字符串,但我尝试过的jupyterlab克隆版并没有这样的功能,甚至无法强制出现2.6倍数的建议。
现在有一种类似的方法。使用新版的Bing工具,可以读取Jupyter笔记本,并要求其生成代码。
Jupyter笔记本也可以在PyCharm或DataShell上运行,与Copilot兼容。
其他代码补全AI也值得考虑。Tabnine可以直接在浏览器上为jupyter lab或notebook运行,可免费使用或购买更强大的付费版本。