共用方式為


目錄檢索

DevUI 可以自動從目錄結構中發現代理程式和工作流程。 這讓你能組織多個實體,並用一個指令啟動它們。

即將推出

C# 的 DevUI 文件即將推出。 請稍後回來查看,或參考 Python 文件以獲得概念指引。

目錄結構

為了讓 DevUI 發現你的代理程式和工作流程,它們必須以特定的目錄結構組織。 每個實體必須有一個 __init__.py 檔案,能匯出所需的變數(agentworkflow)。

entities/
    weather_agent/
        __init__.py      # Must export: agent = Agent(...)
        agent.py         # Agent implementation (optional, can be in __init__.py)
        .env             # Optional: API keys, config vars
    my_workflow/
        __init__.py      # Must export: workflow = WorkflowBuilder(start_executor=...)...
        workflow.py      # Workflow implementation (optional)
        .env             # Optional: environment variables
    .env                 # Optional: shared environment variables

代理人範例

為您的經紀人建立一個包含所需 __init__.py資料的目錄:

weather_agent/__init__.py

from agent_framework import Agent
from agent_framework.openai import OpenAIChatClient

def get_weather(location: str) -> str:
    """Get weather for a location."""
    return f"Weather in {location}: 72F and sunny"

agent = Agent(
    name="weather_agent",
    chat_client=OpenAIChatClient(),
    tools=[get_weather],
    instructions="You are a helpful weather assistant."
)

關鍵要求是__init__.py檔案必須匯出一個名為(代理)或agent(工作流程)的workflow變數。

工作流程範例

my_workflow/__init__.py

from agent_framework.workflows import WorkflowBuilder

workflow = (
    WorkflowBuilder(start_executor="my_executor")
    .add_executor(...)
    .add_edge(...)
    .build()
)

環境變數

DevUI 若存在 .env 檔案會自動載入:

  1. 實體層級 .env:置於代理/工作流程目錄中,僅載入該實體
  2. 父層級 .env:置於實體根目錄,載入所有實體

範例 .env 檔案:

OPENAI_API_KEY=sk-...
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/

小提示

建立 .env.example 一個檔案來記錄必要的環境變數,但不會暴露實際值。 切勿將包含真實憑證的檔案提交到.env原始碼管理系統。

啟動目錄發現功能

當你的目錄結構建立好後,啟動 DevUI:

# Discover all entities in ./entities directory
devui ./entities

# With custom port
devui ./entities --port 9000

# With auto-reload for development
devui ./entities --reload

當 DevUI 一開始沒有發現實體時,會顯示一個範例 畫廊 ,裡面有來自 Agent Framework 倉庫的精選範例。 您可以:

  • 瀏覽可用的範例代理與工作流程
  • 下載範例以進行檢視與客製化
  • 先在本地跑取樣,快速開始

故障排除

未被發現的實體

  • 確保__init__.py檔案匯出agentworkflow變數
  • 檢查你的 Python 檔案有沒有語法錯誤
  • 確認該目錄是否直接位於給定路徑之下 devui

環境變數未載入

  • 確保 .env 檔案位置正確
  • 檢查檔案權限
  • 使用 --reload flag 來偵測開發過程中的變更

後續步驟