microsoft/prompty

Prompty makes it easy to create, manage, debug, and evaluate LLM prompts for your AI applications. Prompty is an asset class and format for LLM prompts designed to enhance observability, understandability, and portability for developers.

它解決了什麼問題

Prompty 讓開發者可以將提示工程與應用程式碼分離。開發者不再需要在 Python 或 TypeScript 檔案中以字串硬編碼提示,而是將提示存放在專屬的 .prompty 檔案中,該檔案以類 Markdown 的格式同時包含設定(模型、輸入與工具)與提示文字本身。

它如何運作

它使用一種特定的檔案格式:YAML 前置資料區塊負責設定,Markdown 主體則寫提示內容。系統支援角色標記(如 system:user:assistant:)來定義訊息邊界,並支援 Jinja2 或 Mustache 的模板語法以產生動態內容。

開發者可以透過 Python 或 TypeScript 的執行環境執行這些檔案,或直接在 VS Code 中使用。此工具支援多種 LLM 供應商,包括 OpenAI、Anthropic 與 Microsoft Foundry,並可透過環境變數輕鬆切換端點與 API 金鑰。

目標對象

AI 開發者與提示工程師,想要以可攜、版本控制的方式管理跨語言與執行環境的提示,且偏好在 VS Code 中整合測試與迭代提示的體驗。

重點特色

  • 跨平台支援:可從 Python、TypeScript 或 VS Code 執行相同的 .prompty 檔案。
  • 設定驅動:模型設定、輸入與工具定義皆寫在 YAML 前置資料區塊中。
  • 整合工具:VS Code 擴充提供即時預覽、連線側邊欄管理模型端點,以及檢視執行流程的追蹤檢視器。
  • 彈性模板:支援 Jinja2 與 Mustache 進行動態提示建構。
  • 可攜端點:可在相容 OpenAI 的端點與自行部署的模型伺服器之間自由切換,且不需更改提示本體。