自然語言編程的家族,又添新成員!
近日,Jupyter 宣布了推出免費開源的 AI 助手。
安裝簡單、使用方便,寫代碼、debug,一個窗口就能輕松搞定!
這個叫做 Jupyter AI 的編程神器是用 LangChain 打造的。
相比于 VSCode 裏的 Copilot,Jupyter AI支持的大模型更多。
除了我們耳熟能詳的 ChatGPT 和 Claude 之外,還有來自 AWS、Cohere 等廠商的模型。
甚至隻要有 API,HuggingFace 上的模塊它都能調用,這意味着它的作用不僅僅是編程。
此外,Jupyter AI 的配置也更爲簡便,而且無需排隊、支持中文 prompt。
支持的程序也不隻是 Jupyter 自己,隻要環境支持 notebook 或 IPython 就可以用,VSCode 也包括在内。
這一重磅産品的推出,讓網友直言遊戲規則要改變了:
我們進行了第一手實測,快來看看結果如何!
會寫又會跑,還能 debug
安裝好帶 AI 插件的 Jupyter Lab 并打開之後,新建一個筆記文件。
然後輸入「%load_ext jupyter_ai」對插件進行加載。
之後是對 API key 進行配置,以 ChatGPT 爲例,使用的命令是:
%env OPENAI_API_KEY=(填入 OpenAI 的 API key)
其他大模型的配置方法也都相似。
完成這些配置之後,就可以上手寫代碼了,輸入内容的格式如下:
%%ai 模型名稱 --format= ( code/math/html/image … )
要完成的任務
其中任務用中文描述就可以,format 參數也可以不輸入。
我們從算法、Python 繪圖以及小遊戲三個方面對 Jupyter AI 進行了測試。
先來看算法,這裏我們直接上難度,來一道困難級别的 Leetcode 題。
LeetCode 平台上,這道題的通過率爲 30.7%。
結果代碼很快就出現在了筆記的下方:
那麽究竟對不對呢,我們在 LeetCode 上提交一下試試。
直接一步到位!
如果換成一道數學題呢?
老鐵,依舊沒毛病!
算法問題就展示到這裏,接下來讓我們看看它的繪圖能力。
首先讓 Jupyter AI 随便畫個什麽圖形出來,比如兩顆心。
結果我們得到了一段調用海龜倉庫進行繪圖的代碼。
這裏就要提到這款插件的另一個特性——生成好的代碼可以直接運行。
除了圖形,函數圖像的繪制也不是問題。
依舊是整個複雜的,y=x*sin [ ln ( x ) ] 。
在這個區間之内的确沒毛病,不過沒能完整展示函數的單調性。
沒關系,我們可以對 AI 給出的代碼進行手工調整,改變一下取值範圍。
根據現有數據繪制統計圖表同樣是小菜一碟。
運行這段代碼,一張統計圖就大功告成了。
不過,這裏我們還想展示一下它的多輪對話能力。
比如,這個藍色看起來不好看,我們想給它換個顔色。
除了算法和繪圖這些内容,交互式程序的編寫也難不倒 Jupyter AI。
甚至可以做小遊戲,比如貪吃蛇。
創制和運行程序的能力我們都已經見過了,那麽 debug 的表現又如何呢?
我們讓 ChatGPT 幫忙出了道題——一段包含五處錯誤的 Python 代碼。
我們看到,ChatGPT 生成的這五處錯誤全都沒能逃過插件的法眼。
除了修改操作,也可以要求它解釋修改的原因:
我們看到,or 改成 and 的原因沒有進行解釋,不過沒關系,我們可以進行追問。
結果得到了更爲詳細的解釋:
以上就是關于 Jupyter AI 編寫代碼和調試運行的全部測試了。
但它會的,不隻是編程。
不隻是編程
除了和 Python 程序相關的功能之外,這款 AI 插件還可以生成 LaTex 公式、SVG 圖形、網頁等内容。
首先來看公式,我們想讓它生成一下麥克斯韋方程組。
隻要把 format 的參數改成 math,結果就會以 LaTex 排版之後的格式輸出。
爲了證明這不是圖片,我們查看了相關區域的 HTML 代碼,是貨真價實的 LaTex 格式。
簡單的網頁,這個插件也能做得出來。
我們讓它生成一個時鍾頁面,這裏需要把 format 改成 html。
說到 HTML,就會發現它還有一個妙用。
編程的一節提到過,這個 AI 插件可以生成 Python 繪圖代碼。
但它同樣可以不用 Python,直接生成一些簡單圖形,以 SVG 的形式進行展示。
不過無論是 Python 還是 SVG,畫出的圖形都比較簡單。
那麽複雜的圖像它能畫嗎?答案是肯定的。
這款插件可以調用 Stable Diffusion來畫圖。
不過由于沒有 HuggingFace 的 API,這裏我們隻能展示一下官方給出的 DEMO:
這裏似乎需要把 format 設爲 image。
而且能調用的不隻是 Stable Diffusion,HuggingFace 中的其他模型也可以!
除了在筆記中調用插件,Jupyter AI 還在側邊欄中提供了聊天窗口。
配置好 API 之後,有什麽問題直接問就可以!
還不趕快上手體驗一下? ( GitHub 頁面有安裝教程 )
GitHub 頁面:
https://github.com/jupyterlab/jupyter-ai
參考鏈接:
[ 1 ] https://twitter.com/ProjectJupyter/status/1686773501049327616
[ 2 ] https://blog.jupyter.org/generative-ai-in-jupyter-3f7174824862