許多代理工作 (例如財務計算和資料科學工作流程) 都需要代理生成及執行程式碼。Code Execution 可讓代理在受到隔離與管理的安全沙箱環境中執行程式碼。
程式碼執行功能包括:
沙箱可在 1 秒內建立並執行程式碼。
沙箱支援檔案輸入和輸出,整個要求或回應的大小上限為 100 MB。
沙箱最多可保留執行狀態 (記憶體) 14 天。這項存留時間 (TTL) 設定可調整。
您不一定要將代理部署至 Agent Platform,才能使用執行程式碼功能。代理程式可以在任何地方執行,甚至在本機執行。
執行程式碼功能適用於任何代理架構和生成式模型。
以下是使用程式碼執行沙箱的主要作業:
建立沙箱:建立安全、隔離的空間,用於執行不受信任或可能有害的程式碼。這項隔離措施可防止程式碼接觸系統資源、檔案或網路,降低安全風險。如要安全地執行程式碼,例如資料科學代理、自動化調度管理指令碼,或在開發測試期間,沙箱就非常重要。沙箱提供有限的檔案系統,且無法存取網路。
取得沙箱:顯示特定執行程式碼沙箱的設定和狀態。您可以查看目前狀態 (例如執行中或已停止) 和存留時間 (TTL) 等詳細資料。這樣一來,您就能追蹤沙箱,並在執行程式碼前後驗證沙箱狀態。
列出沙箱:列出專案中所有的執行程式碼沙箱。您可以依沙箱狀態或類型等條件篩選結果。 這有助於檢查、監控及管理專案中的多個沙箱。
執行程式碼:將程式碼和任何必要的輸入檔案傳送至沙箱,以便安全執行。回應會包含結果,例如標準輸出內容 (
stdout)、標準錯誤 (stderr),以及程式碼產生的任何檔案。沙箱也可以維護狀態,讓後續的Execute Code呼叫以先前的呼叫為基礎。這對於互動式工作階段或複雜工作至關重要,因為環境需要在多次執行程式碼時維持狀態。
支援的程式庫
執行程式碼沙箱包含下列程式庫,並依用途分類。您無法在沙箱環境中安裝自己的程式庫。
資料科學與機器學習
本節包含資料分析、操作、機器學習和數值運算等重要程式庫。
核心資料處理和數值
- numpy (2.1.3):Python 數值運算的基本套件,支援大型多維陣列和矩陣,並提供大量高階數學函式,可用於操作這些陣列。
- pandas (2.2.3):強大的資料分析和操作程式庫,提供 DataFrame 和 Series 等資料結構,用於處理結構化資料。
- scipy (1.15.2):數學、科學和工程領域的開放原始碼軟體生態系統。SciPy 以 NumPy 為基礎,提供大量容易使用且有效率的數值常式。
- pyarrow (18.1.0):記憶體內資料的跨語言開發平台。特別適合用於高效處理資料,以及系統間的互通性。
- numexpr (2.14.1):NumPy 的快速數值運算式評估工具,可最佳化陣列運算。
- narwhals (2.19.0):提供一種編寫程式碼的方法,可在多個 DataFrame 程式庫 (例如 pandas 和 Polars) 上運作。
機器學習框架
- scikit-learn (1.6.1):以 NumPy、SciPy 和 matplotlib 為基礎,提供簡單有效率的資料探勘和資料分析工具。
- tensorflow (2.20.0):端對端開放原始碼機器學習平台。
- keras (3.14.0):高階類神經網路 API,以 Python 編寫,可在 TensorFlow、CNTK 或 Theano 上執行。
- xgboost (3.2.0):最佳化的分散式梯度提升程式庫,具備高效率、彈性和可攜性。
- thinc (8.3.13):輕量級深度學習程式庫,提供優雅、經過類型檢查、函式程式設計的 API,用於組合模型。
自然語言處理 (NLP)
- nltk (3.9.1):領先業界的平台,用於建構 Python 程式,以處理人類語言資料。
- spacy (3.8.14):在 Python 和 Cython 中用於進階自然語言處理的程式庫。
- spacy-legacy (3.0.12):spaCy 的舊版元件。
- spacy-loggers (1.0.5):spaCy 專案的記錄公用程式。
- textblob (0.19.0):簡化的文字處理程式庫,為常見的自然語言處理 (NLP) 工作提供簡單的 API。
- catalogue (2.0.10):用於函式註冊的小型程式庫,通常用於 NLP 管道。
- confection (1.3.3):設定系統,通常與 spaCy 搭配使用。
- cymem (2.0.13):Cython 的記憶體管理,由 spaCy 使用。
- murmurhash (1.0.15):MurmurHash 的 Cython 繫結,由 spaCy 使用。
- preshed (3.0.13):Cython 雜湊表和布隆篩選器,由 spaCy 使用。
- srsly (2.5.3):適用於 Python 的現代高效能序列化公用程式。
- wasabi (1.1.3):輕量控制台列印和格式設定公用程式。
- weasel (1.0.0):spaCy 專案的指令列介面。
科學與符號運算
- mpmath (1.3.0):Python 程式庫,用於任意精確度的實數和複數浮點運算。
- sympy (1.13.3):用於符號數學的 Python 程式庫。
- networkx (3.6.1):這個套件用於建立、操控及研究複雜網路的結構、動態和函式。
成效與最佳化
- numba (0.64.0):Python 的即時編譯器,可將 Python 和 NumPy 程式碼子集轉譯為快速機器碼。
- llvmlite (0.46.0):輕量 LLVM Python 繫結,可與 Numba 搭配使用。
- blis (1.3.3):類似 BLAS 的線性代數程式庫,通常是數值套件的依附元件。
- opt_einsum (3.4.0):最佳化 NumPy、TensorFlow 和其他陣列程式庫中的 einsum 運算式。
- optree (0.19.0):在 JAX 中最佳化 PyTree 操作。
- nvidia-nccl-cu12 (2.29.7):NVIDIA Collective Communication Library,用於多 GPU 通訊。
統計模型
- statsmodels (0.14.6):提供類別和函式,用於估算多種統計模型,以及執行統計檢定和統計資料探索。
- patsy (1.0.2):用於描述統計模型和建構設計矩陣的 Python 程式庫。
作業研究
- ortools (9.14.6206):Google 最佳化工具,這是一套用於組合最佳化的工具。
圖表
用於建立靜態、動畫和互動式圖表的程式庫。
- matplotlib (3.10.1):全方位程式庫,可在 Python 中建立靜態、動畫和互動式圖表。
- matplotlib-inline (0.2.1):用於在 Jupyter 筆記本中嵌入 matplotlib 圖表的後端。
- matplotlib-venn (1.1.2):用於繪製文氏圖的程式庫。
- seaborn (0.13.2):以 matplotlib 為基礎的統計資料視覺化程式庫。提供高階介面,可繪製吸引人且資訊豐富的統計圖表。
- plotly (6.1.2):互動式圖表程式庫,可輕鬆在線上和離線建立精美、出版品質的圖表。
- bokeh (3.8.2):互動式視覺化程式庫,適用於新式網路瀏覽器。
- mizani (0.13.5):Python 圖形縮放,靈感來自 ggplot2。
- contourpy (1.3.1):提供等高線生成演算法。
- cycler (0.12.1):matplotlib 的可組合樣式循環。
- fonttools (4.62.1):用於操控字型的程式庫。
- kiwisolver (1.5.0):Cassowary 限制求解演算法的高效 C++ 實作。
圖片和影片處理
用於處理圖像和影片資料的程式庫。
- opencv-python (4.11.0.86):OpenCV 的 Python 繫結,OpenCV 是程式設計函式程式庫,主要用於即時電腦視覺。
- pillow (11.1.0):Python Imaging Library (PIL) 的友善分支版本,新增開啟、操作及儲存多種圖片檔案格式的支援。
- imageio (2.37.0):這個程式庫用於讀取及寫入各種圖片資料,包括動畫圖片、影片和體積資料。
- scikit-image (0.25.2):圖片處理演算法集合。
- tifffile (2026.4.11):讀取及寫入 TIFF 檔案。
檔案處理和 I/O
用於讀取、寫入及操控各種檔案格式的程式庫。
Excel
- openpyxl (3.1.5):用於讀取/寫入 Excel 2010 xlsx/xlsm/xltx/xltm 檔案的程式庫。
- xlrd (2.0.1):可讓開發人員從 Microsoft Excel (tm) 試算表檔案擷取資料的程式庫。
- XlsxWriter (3.2.0):用於建立 XSLX 格式 Excel 檔案的模組。
- PyPDF2 (3.0.1):純 Python PDF 程式庫,可分割、合併、裁剪及轉換 PDF 檔案頁面。
- fpdf (1.7.2):用於生成 PDF 的簡易程式庫。
- reportlab (4.3.1):強大的 PDF 建立程式庫。
- PyLaTeX (1.4.2):用於建立及編譯 LaTeX 檔案的程式庫。
Word
- python-docx (1.1.2):用於建立及更新 Microsoft Word (.docx) 檔案的程式庫。
PowerPoint
- python-pptx (1.0.2):用於建立及更新 PowerPoint (.pptx) 檔案的程式庫。
XML/HTML
- lxml (5.3.1):功能豐富且易於使用的程式庫,用於處理 XML 和 HTML。
- et_xmlfile (2.0.0):用於建立大型 XML 檔案的低記憶體程式庫。
Markdown
- Markdown (3.10.2):John Gruber Markdown 的 Python 實作。
- markdown-it-py (4.0.0):Markdown 剖析器,正確完成。100% 支援 CommonMark。
- mdurl (0.1.2):Markdown 的網址公用程式。
YAML
- PyYAML (6.0.3):Python 的 YAML 剖析器和發射器。
RTF
- striprtf (0.0.28):從 RTF 文件擷取純文字的程式庫。
一般檔案 I/O
- h5py (3.16.0):HDF5 二進位資料格式的 Pythonic 介面。
- smart_open (7.6.0):串流大型檔案 (S3、HDFS、Cloud Storage 等) 的公用程式。
- cloudpathlib (0.23.0):雲端儲存空間的 Pathlib 樣式類別。
網路
用於網頁要求、伺服器開發和網路通訊的程式庫。
- requests (2.33.1):專為人類打造的 Python HTTP 程式庫,優雅且簡單。
- httpx (0.28.1):功能完整的 Python HTTP 用戶端,支援 HTTP/1.1 和 HTTP/2,以及非同步功能。
- httpcore (1.0.9):低階 HTTP 用戶端,構成 HTTPX 的核心。
- urllib3 (2.6.3):功能強大、容易使用的 Python HTTP 用戶端。
- grpcio (1.80.0):Python gRPC (Google 遠端程序呼叫) 程式庫。
- h11 (0.16.0):純 Python、自備 I/O 的 HTTP/1.1 實作。
- idna (3.11):支援 2008 年版應用程式國際化網域名稱 (IDNA)。
- certifi (2026.2.25):提供 Mozilla 精心挑選的根憑證集合,用於驗證 SSL 憑證的可信度。
- tornado (6.5.5):網頁框架和非同步網路程式庫。
- Werkzeug (3.1.8):全方位的 WSGI 網頁應用程式程式庫。
- Jinja2 (3.1.6):適合設計師使用的現代 Python 範本語言。
- MarkupSafe (3.0.3):安全地將不受信任的字串新增至 HTML/XML 標記。
開發人員工具和公用程式
一般公用程式、建構應用程式的工具,以及開發輔助工具。
封裝與發布
- pip (24.2):Python 的套件安裝程式。
- setuptools (82.0.1):用於封裝 Python 專案的程式庫。
- wheel (0.46.3):Python 的建構套件格式。
- packaging (24.0):Python 套件的核心公用程式。
指令列介面 (CLI)
- click (8.3.2):可組合的指令列介面建立工具包。
- typer (0.24.1):這個程式庫用於建構含有類型提示的 CLI 應用程式。
- rich (15.0.0):在終端機中提供 RTF 格式和美觀格式的程式庫。
- termcolor (3.3.0):終端機輸出的 ANSII 顏色格式。
- tqdm (4.67.3):適用於 Python 和 CLI 的快速、可擴充進度列。
- shellingham (1.5.4):偵測使用者殼層的工具。
資料驗證和結構定義
- pydantic (2.13.1):使用 Python 類型註解進行資料驗證和設定管理。
- pydantic_core (2.46.1):Pydantic 的核心驗證邏輯。
- annotated-types (0.7.0):函式引數、變數和資料類別欄位的可重複使用限制類型。
- jsonschema (4.23.0):Python 的 JSON 結構定義實作。
- jsonschema-specifications (2024.10.1):JSON 結構定義中繼結構定義和詞彙。
- referencing (0.37.0):JSON 參照解析。
序列化
- protobuf (6.31.1):Google 的通訊協定緩衝區。
- flatbuffers (25.12.19):高效率的跨平台序列化程式庫。
並行與平行處理
- anyio (4.13.0):非同步相容性層,可讓您編寫適用於不同非同步事件迴圈的非同步程式碼。
- joblib (1.4.2):輕量級管道:以管道形式執行 Python 函式的工具。
- threadpoolctl (3.6.0):Python 介面,用於控制常用程式庫執行緒集區中使用的執行緒數量。
剖析
- pyparsing (3.2.1):建立及執行簡單文法的替代方法,與標準 lex/yacc 方法不同。
- astunparse (1.6.3):Python 抽象語法樹狀結構的反剖析器。
低階和外部函式介面 (FFI)
- libclang (18.1.1):Clang Python 繫結。
日期與時間
- python-dateutil (2.9.0.post0):標準 datetime 模組的擴充功能。
- pytz (2025.2):世界時區定義,包括現代和歷史。
- tzdata (2025.3):時區資料。
一般公用事業
- attrs (25.3.0):不含樣板的類別。
- toolz (1.0.0):Python 的函式標準程式庫。
- six (1.17.0):Python 2 和 3 相容性公用程式。
- wrapt (2.1.2):裝飾器、包裝函式和猴子補丁的模組。
- immutabledict (4.3.1):不可變動的字典。
- ordered-set (4.1.0):可變動的資料結構,是清單和集合的混合體。
- lazy-loader (0.5):延遲匯入 Python 模組。
- google-pasta (0.2.0):重構 Python 程式碼的程式庫。
- traitlets (5.14.3):Python 應用程式的設定系統。
- regex (2026.4.4):替代規則運算式模組,用於取代 Python 的
re模組。 - chardet (7.4.3):通用字元編碼偵測工具。
- charset-normalizer (3.4.7):第一個真正的通用字元集偵測工具。
- typing_extensions (4.15.0):適用於 Python 3.7 以上版本的向後移植和實驗性類型提示。
- typing-inspection (0.4.2):Python 類型的執行階段檢查。
- Pygments (2.20.0):Python 語法醒目顯示工具。
- ml_dtypes (0.5.4):機器學習的 dtype。
- rpds-py (0.30.0):Python 的 Rust 持續性資料結構。
- annotated-doc (0.0.4):文件註解程式庫。
- namex (0.1.0):公用程式庫。
偵錯與剖析
- tensorboard (2.20.0):TensorFlow 的視覺化工具包。
- tensorboard-data-server (0.7.2):TensorBoard 的資料伺服器。
地理空間
專門用於處理地理空間資料的程式庫。
- geopandas (1.0.1):擴充 pandas 使用的資料類型,允許對幾何類型執行空間運算。
- pyogrio (0.12.1):地理空間向量檔案格式的向量化 I/O。
- pyproj (3.7.2):PROJ (地圖投影和座標轉換程式庫) 的 Python 介面。
- shapely (2.1.2):用於操作及分析平面幾何物件的套件。
- xyzservices (2026.3.0):XYZ 圖塊供應商的來源。
其他
- chess (1.11.2):純 Python 西洋棋程式庫,可產生及驗證棋步、剖析及寫入 PGN 等。
- gast (0.7.0):一般 AST 到 AST 轉換器。