相信很多小伙伴是Jupyter的重度使用者,本篇介紹一個利器 Chapyter 它將目前火爆的 ChatGPT 代碼解釋器與 Jupyter Notebook 結合了起來,讓編碼更加地高效。
毋庸置疑,在 AI 的幫助下,開發者的編碼效率能夠大大提升。
開發者們將從簡單、重復的編碼工作中解脫出來。但是隨之而來的諸多問題,往往讓使用 AI 的開發者們頭禿不已。
Chapyter 將 GPT-4 這樣強大的代碼生成模型合并到 Jupyter Notebook 編碼環境中,開辟了人類 - AI 協作的新模式,在極大程度上解決了大部分編程助手會出現的問題。
Chapyter 是一個 JupyterLab 擴展,將 GPT-4 無縫連接到你的編碼環境,并且具有一個代碼解釋器,可以將自然語言描述翻譯為 Python 代碼并自動執行。 并且 Chapyter 通過在你最熟悉的 IDE 中啟用「自然語言編程」,提高你的工作效率,并使你能夠探索更多未嘗試過的新想法。
項目鏈接:https://github.com/chapyter/chapyter
下圖為 Chapyter 與部分現有的編碼助手的差別。
可以發現,Chapyter 將編碼助手的優勢綜合了起來。它可以幫助開發者完成各種復雜的編碼任務、自動執行 AI 生成的代碼,還能夠讓開發者進行原位調試、自定義 Prompt,甚至保護了開發者與代碼的隱私性,避免數據被利用。
Chapyter 的特點與優勢
Chapyter 的主要特點有:
1. 從自然語言生成代碼并自動執行
只需在任務自然語言描述的單元格開頭添加命令「%% chat」,代碼就會生成,并且用時極短,只需要幾秒鐘。
別小瞧了 Chapyter 的這個優勢。
自動補全一直是許多 AI 輔助編碼工具的主流交互,在編碼環境中提供 AI 支持,并且可以顯著提高開發人員工作的生產力和滿意度。然而,自動補全并不完美:穿插 AI 代碼建議可能會分散注意力;生成的代碼可能包含可能很難調試的隱藏錯誤;并且生成的代碼通常只跨越幾行,很難在上下文之外生成新的功能。
Chapyter 通過提供單元級代碼生成和自動執行克服了這些問題。你只需鍵入要執行的操作的自然語言描述,Chapyter 將調用 GPT-X 模型來生成代碼并為你執行。這與 Copilot 等系統中的代碼補全非常不同:其旨在支持僅跨越幾行代碼并且與當前工作非常相關的微任務,例如,完成函數調用。而 Chapyter 旨在接管完整的任務,有時可能與現有代碼不同。
默認情況下,生成的代碼是隱藏的,因為 Chapyter 希望淡化 AI 生成的代碼并專注于結果。并且,關于自動執行你也無需擔心,因為 Chapyter 有一個安全模式來防止自動執行可能危險的代碼。
2. 使用編碼歷史和執行輸出來生成代碼
Chapyter 還可以利用你的代碼歷史記錄和執行輸出來提供上下文感知建議。它還可以選擇加載文件,以便為進一步處理和分析提供建議。
如下圖所示,通過在代碼生成中添加 --history 或 -h 標志,Chapyter 可以使用之前的執行歷史和輸出,為加載的 IRIS 數據集生成相應的可視化代碼。
3. 原位調試、編輯代碼
生成的代碼可能并不完美,可能包含 bug 或錯誤。由于 Chapter 已完全集成到 Jupyter Notebook 中,因此無需離開 IDE,你就可以輕松地檢查代碼并修復任何錯誤或 bug (例如,在這種情況下安裝缺少的依賴項)。
4.prompt 和 AI 配置透明化,并允許自定義
Chapyter 發布了庫中使用的所有 prompt,并致力于讓自定義所使用的 prompt 和設置更加便捷。
可查閱:https://github.com/chapyter/chapyter/blob/main/chapyter/programs.py
**5. 使用 AI 時,隱私優先 **
Chapyter 是一個極小的 Python 包,可以在本地安裝并與 JupyterLab 無縫使用。它使用 OpenAI API 調用 GPT-X 模型,默認情況下不會保留交互數據和代碼進行訓練。
因此與 Copilot 或 ChatGPT 緩存你的數據并用來訓練和分析不同,Chapyter 所有發送到 OpenAI 的數據將不會被保存用于訓練(可參閱 OpenAI API 數據使用策略)。
Chapyter 的構成
Chapyter 主要由兩個部分組成:
- 實現 ipython magic 命令,用來處理提示和調用 GPT-X 模型;
- 另一個是監聽 Chapyter 單元格執行情況的前端,它會自動執行新生成的單元格并更新單元格的樣式。
下圖展示了執行 Chapyter 單元格后前端和 ipython 內核的編排。
-
編碼
+關注
關注
6文章
935瀏覽量
54763 -
代碼
+關注
關注
30文章
4748瀏覽量
68354 -
解釋器
+關注
關注
0文章
103瀏覽量
6495
發布評論請先 登錄
相關推薦
評論