Mattie/cataclysm

Cataclysm - Code generation library for the end game

解決的問題

Cataclysm 允許開發者呼叫尚未撰寫的函數。無需手動實作邏輯,該程式庫會使用 LLM 根據函數名稱、參數與周圍上下文,動態生成並執行程式碼。

工作原理

此專案整合 OpenAI 的 GPT-4(或 GPT-3.5)以動態生成 Python 程式碼。它分析函數簽名、呼叫堆疊、關鍵字參數、文件字串與註解,以判斷程式碼應執行的動作。為避免持續的 API 呼叫,生成的程式碼會以 YAML 檔案本地快取。若首次執行生成的程式碼失敗,系統會嘗試重新生成一次,然後放棄。

適用對象

希望讓 AI 處理特定函數實作、快速原型開發的實驗性開發者。

特色亮點

  • 全域模式:使用 consume(globals()) 使環境中所有未識別的函數均由 AI 生成。
  • 明確模式:使用 doom 模組進行受控、明確呼叫 AI 生成的函數。
  • 預覽模式doom.impending 功能允許使用者在實際執行前查看生成的程式碼字串。
  • 凍結模式doom.chosen 確保釋出的程式碼使用特定、先前生成的程式碼版本,以維持穩定性。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案