Jupyter大升級(jí):各種大模型都能連,聊天就能生成代碼、錯(cuò)誤修改
現(xiàn)在,大語(yǔ)言模型(LLM)與 Jupyter 連接起來(lái)了!
這主要?dú)w功于一個(gè)名叫 Jupyter AI 的項(xiàng)目,它是官方支持的 Project Jupyter 子項(xiàng)目。目前該項(xiàng)目已經(jīng)完全開(kāi)源,其連接的模型主要來(lái)自 AI21、Anthropic、AWS、Cohere、OpenAI 等各大明星公司和機(jī)構(gòu)。
項(xiàng)目地址:https://github.com/jupyterlab/jupyter-ai
有了大模型的加持,Jupyter 功能也發(fā)生了很大的變化。現(xiàn)在你可以在該環(huán)境中生成代碼、總結(jié)文檔、創(chuàng)建注釋、修復(fù)錯(cuò)誤等。你甚至可以使用文本 prompt 生成 notebooks。
Jupyter AI 的安裝過(guò)程也非常簡(jiǎn)單,安裝代碼如下:
pip install 'jupyter-ai>=1.0,<2.0' # If you use JupyterLab 3
pip install jupyter-ai # If you use JupyterLab 4
此外,Jupyter AI 提供了兩種不同的界面與 LLM 交互。在 JupyterLab 中,你可以使用聊天界面與 LLM 進(jìn)行對(duì)話,以幫助處理代碼。此外,在任何支持 notebook 或 IPython 的環(huán)境中,包括 JupyterLab、Notebook、IPython、Colab 和 Visual Studio Code,你可以使用 %% ai 魔術(shù)命令調(diào)用 LLM。
大模型加持下的 Jupyter
接下來(lái)我們看看效果如何。
編程助手
Jupyter 聊天界面如下圖所示,用戶可以與 Jupyternaut(編程助手)進(jìn)行對(duì)話。在 Jupyternaut 功能欄我們可以看到這樣一句話「大家好,我是 Jupyternaut,你的編程助理。你可以使用文本框向我提問(wèn),也可以使用命令向我提問(wèn)。」
接下來(lái),用戶向 Jupyternaut 詢問(wèn)了一個(gè)問(wèn)題:如「在 Python 中,元組和列表有什么區(qū)別?」Jupyternaut 給出了這兩者的關(guān)鍵區(qū)別,并且回答的非常正確,最后還貼心的舉了示例:
假如有一部分代碼你不是很了解,你可以選中這部分代碼,并將其當(dāng)做 prompt,然后要求 Jupyternaut 解釋這段代碼,除此之外,Jupyternaut 還能對(duì)代碼進(jìn)行修改、識(shí)別代碼錯(cuò)誤等。
如果你對(duì)代碼不滿意,還可以讓 Jupyternaut 按照要求重寫(xiě)代碼:
重寫(xiě)代碼后,Jupyternaut 會(huì)將代碼重新發(fā)送回用戶選擇的語(yǔ)言模型進(jìn)行替換:
從文本 prompt 生成 notebook
Jupyter AI 的聊天界面可以根據(jù)文本 prompt 生成一個(gè)完整的 notebook。想要實(shí)現(xiàn)這一點(diǎn),用戶需要運(yùn)行「/generate」命令,外加一個(gè)文本描述。
Jupyternaut 生成 notebook 后,會(huì)向用戶發(fā)送一個(gè)包含文件名的消息,用戶可以打開(kāi)該文件進(jìn)行查看:
訪問(wèn)本地文件
你可以使用「/learn」命令讓 Jupyternaut 學(xué)習(xí)本地文件,隨后使用「/ask」命令詢問(wèn)有關(guān)本地文件的問(wèn)題。舉例來(lái)說(shuō),使用「/learn」命令,你可以讓 Jupyternaut 學(xué)習(xí)關(guān)于 Jupyter AI 文檔的知識(shí):
一旦 Jupyternaut 學(xué)習(xí)完成,你就可以使用「/ask」命令提出問(wèn)題:
魔法功能
Jupyter AI 還提供了可以在 notebook cells 和 IPython 命令行界面中運(yùn)行的 %% ai 命令,每個(gè) %% ai 命令都需要一個(gè)模型,通常指定為 provider?id:model?id:
還有研究者體驗(yàn)了一下 %% ai 魔法命令,讓其調(diào)用 ChatGPT :
此外,你還可以使用 - f 或 --format 參數(shù)自定義輸出的格式,包括 HTML、數(shù)學(xué)、源代碼和圖像,這對(duì)于研究人員和教育工作者來(lái)說(shuō)非常有用。
一番展示下來(lái),有了大模型加持的 Jupyter 確實(shí)方便了很多。想要嘗試的小伙伴,可以前去一試了。