Community程式設計與開發github.com

SystemTce/dify-skills

Dify 工作流与插件效能最佳化的完整指南

dify-skills 是什麼?

這項技能提供了一套全面、系統化的 Dify 工作流與插件效能最佳化指南。它涵蓋了從圖結構最佳化、LLM 成本控制、Worker 池調整、變數池最佳化,到並行處理與效能監控等關鍵主題。技能的核心價值在於提供可量化的最佳化效果,例如透過並行分支執行減少 40-60% 的處理時間,以及利用 LLM 快取減少 30-50% 的 API 呼叫。此外,它還包含 5 個真實案例,展示如何解決資料庫查詢 N+1 問題、大規模節點渲染、日誌刪除效能、TiDB 分散式儲存整合與 Higress AI Gateway 高可用部署等實際場景。這項技能適用於所有 Dify 使用者,特別是遇到工作流執行時間過長、LLM API 成本過高或系統資源利用率低等效能瓶頸的開發者與維運人員,並能作為快速診斷與最佳化的實戰手冊。

相容平台✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/SystemTce/dify-skills/tree/main/03-performance

Installed? Explore more 程式設計與開發 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Dify 效能最佳化 SKILL

概述

本 SKILL 提供 Dify 工作流與插件的全面效能最佳化指南,涵蓋圖結構最佳化、LLM 成本控制、Worker 池調優、變數池最佳化、並行處理和效能監控等核心主題。

適用場景

當您遇到以下情況時,應使用本 SKILL:

  • ⏱️ 工作流執行時間過長,需要效能最佳化
  • 💰 LLM API 成本過高,需要降低 Token 消耗
  • 🚀 並行處理能力不足,需要提升吞吐量
  • 📊 系統資源利用率低,需要最佳化配置
  • 📈 大規模資料處理效能瓶頸
  • 🔍 需要進行效能診斷和監控

核心價值

  • 可量化的最佳化效果: 並行分支執行減少 40-60% 時間,LLM 快取減少 30-50% 呼叫
  • 實戰案例驅動: 5 個真實最佳化案例,包含最佳化前後對比
  • 全面的最佳化策略: 覆蓋工作流、LLM、插件、監控等所有層面
  • 快速診斷工具: 5 個維度的效能診斷清單

快速診斷清單

在開始最佳化之前,使用以下清單快速定位效能問題:

📊 圖結構診斷

  • 是否存在過多串行依賴?
  • 是否可以使用並行分支? (v0.8.0+)
  • 是否有不必要的節點和連接?
  • 節點數量是否超過 50 個?
  • 是否使用了合適的設計模式?

🤖 LLM 使用診斷

  • 模型選擇是否合適? (輕量任務用輕量模型)
  • Prompt 是否過長? (可以精簡嗎?)
  • 是否啟用了 LLM 回應快取?
  • 是否使用了結構化輸出? (JSON Schema)
  • Token 消耗是否在預算內?

⚙️ Worker 池診斷

  • Worker 數量配置是否合理? (2-8 執行緒)
  • 佇列深度是否過大?
  • 是否存在 Worker 空閒浪費?
  • 擴縮容策略是否合理?

💾 變數池診斷

  • 是否在變數池中儲存了大物件?
  • 變數是否及時清理?
  • 是否使用了引用而非複製?
  • 變數作用域是否合理?

🔄 並行處理診斷

  • 迭代器是否配置了 parallel_nums?
  • 是否使用了流式回應?
  • 非同步任務是否合理配置?
  • 是否存在阻塞操作?

第一部分: 圖結構最佳化

1.1 減少串行依賴

問題: 過多的串行依賴導致工作流執行時間線性增長。

最佳化策略:

  1. 識別可並行的節點: 分析節點間的依賴關係,找出可以並行執行的節點
  2. 使用並行分支: Dify v0.8.0+ 支援並行分支功能
  3. 重構工作流: 將串行流程重構為並行+聚合模式

範例:

# 最佳化前: 串行執行 (總時間 = 3 + 2 + 4 = 9秒)
Start → API呼叫1(3s) → API呼叫2(2s) → API呼叫3(4s) → End

# 最佳化後: 並行執行 (總時間 = max(3,2,4) = 4秒)
Start → [API呼叫1(3s), API呼叫2(2s), API呼叫3(4s)] → 變數聚合 → End

最佳化效果: 執行時間減少 40-60%

1.2 並行分支功能 (v0.8.0+)

Dify v0.8.0 引入了並行分支功能,允許多個分支同時執行。

使用方法:

  1. 在工作流編輯器中建立多個分支
  2. 確保分支間沒有資料依賴
  3. 使用變數聚合器收集結果

適用場景:

  • 多個 HTTP Request 節點並行呼叫
  • 多個 Tool 節點並行執行
  • 知識庫檢索 + API 呼叫並行處理
  • 多模型並行推論 (模型對比場景)

配置範例:

# 並行分支配置
parallel_branches:
  - branch_1:
      nodes: [http_request_1, code_1]
  - branch_2:
      nodes: [http_request_2, code_2]
  - branch_3:
      nodes: [tool_1, llm_1]

1.3 避免不必要的節點

常見問題:

  • 冗餘的資料轉換節點
  • 不必要的中間變數節點
  • 過度的條件判斷節點

最佳化建議:

  • 合併相似的處理邏輯
  • 使用程式碼節點替代多個簡單節點
  • 簡化條件判斷邏輯

1.4 圖結構設計模式

根據任務類型選擇合適的設計模式:

  1. 順序管道: Start → LLM → End (簡單任務)
  2. 條件分支: Start → LLM → If-Else → 多路徑 (決策任務)
  3. 迭代處理: Start → Code → Iteration → LLM (批次任務)
  4. 知識檢索: Start → Knowledge-Retrieval → LLM (RAG 應用)
  5. 多源聚合: 多個 Tool/HTTP → Variable-Aggregator → LLM (資料聚合)

詳細文件: 參見 workflow-optimization/graph-structure.md


第二部分: LLM 最佳化策略

2.1 模型選擇策略

選擇合適的模型是成本最佳化的關鍵。

模型選擇矩陣:

任務類型推薦模型Token 成本適用場景
簡單分類Qwen-Turbo, Gemini Flash低文字分類、情感分析
文字生成GPT-3.5-turbo, Qwen-Plus中內容生成、摘要
複雜推理GPT-4, Claude Opus高複雜分析、決策
本地部署Ollama (Llama 3, Qwen)零 API 成本隱私敏感場景

成本對比:

  • GPT-4: $0.03/1K tokens (輸入) + $0.06/1K tokens (輸出)
  • GPT-3.5-turbo: $0.0015/1K tokens (輸入) + $0.002/1K tokens (輸出)
  • Qwen-Turbo: ¥0.0008/1K tokens (約 20 倍成本差異)

最佳化建議:

  • 輕量任務使用輕量模型 (Qwen/Gemini)
  • 複雜任務使用強力模型 (GPT-4/Claude)
  • 考慮使用本地模型 (Ollama) 降低成本

2.2 Prompt 最佳化技巧

精簡 Prompt:

# 最佳化前 (150 tokens)
"""
你是一個專業的客服助手。請仔細閱讀以下客戶問題,並根據我們的產品知識庫,
提供詳細、準確、友好的回答。回答時請注意以下幾點:
1. 保持專業和禮貌的語氣
2. 提供具體的解決方案
3. 如果不確定,請說明
4. 引用相關的產品文件

客戶問題: {query}
"""

# 最佳化後 (50 tokens)
"""
作為客服助手,根據知識庫回答客戶問題,保持專業禮貌。

問題: {query}
"""

Token 節省: 66% (150 → 50 tokens)

其他最佳化技巧:

  • 移除冗餘的說明和範例
  • 使用簡潔的指令
  • 避免重複的上下文
  • 使用結構化輸出減少解析成本

2.3 快取策略

LLM 回應快取:

使用 Redis 快取 LLM 回應,避免重複呼叫。

實作方案:

import hashlib
import redis

# 連接 Redis
r = redis.Redis(host='localhost', port=6379, db=0)

def get_llm_response_with_cache(prompt, model="gpt-3.5-turbo"):
    # 生成快取鍵
    cache_key = f"llm:{model}:{hashlib.md5(prompt.encode()).hexdigest()}"

    # 檢查快取
    cached = r.get(cache_key)
    if cached:
        return cached.decode('utf-8')

    # 呼叫 LLM
    response = call_llm_api(prompt, model)

    # 儲存快取 (TTL: 1小時)
    r.setex(cache_key, 3600, response)

    return response

快取策略:

  • LLM 回應快取: 相同 Prompt 回傳快取結果
  • 知識庫檢索快取: 相同查詢回傳快取向量
  • 節點結果快取: 避免重複執行相同節點

最佳化效果: API 呼叫減少 30-50%

2.4 結構化輸出

使用 JSON Schema 確保 LLM 輸出穩定性,減少解析錯誤和重試。

配置範例:

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": ["技術", "銷售", "售後"]
    },
    "priority": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    },
    "summary": {
      "type": "string",
      "maxLength": 100
    }
  },
  "required": ["category", "priority", "summary"]
}

最佳化效果:

  • 減少輸出 Token 數量
  • 避免解析錯誤和重試
  • 提升下游節點處理效率

詳細文件: 參見 llm-optimization/


第三部分: Worker 池調優

3.1 動態工作執行緒池

Dify 使用動態 Worker 池並行執行節點,預設配置為 2-8 個工作執行緒。

Worker 池架構:

GraphEngine
├── ReadyQueue (就緒節點佇列)
├── EventQueue (事件佇列)
├── Dispatcher (事件分發器)
└── WorkerPool (2-8 個工作執行緒)
    ├── Worker 1
    ├── Worker 2
    ├── ...
    └── Worker N

3.2 配置參數

關鍵配置:

參數預設值說明最佳化建議
min_workers2最小 Worker 數量根據最小並行需求設定
max_workers8最大 Worker 數量根據 CPU 核心數設定
queue_depth_threshold10擴容觸發閾值根據平均佇列深度調整
idle_timeout60sWorker 空閒超時根據任務頻率調整

擴縮容策略:

# 擴容條件
if queue_depth > queue_depth_threshold and workers < max_workers:
    add_worker()

# 縮容條件
if worker_idle_time > idle_timeout and workers > min_workers:
    remove_worker()

3.3 效能基準

測試場景: 100 個節點的工作流

Worker 數量執行時間吞吐量CPU 使用率
245s2.2 節點/s40%
425s4.0 節點/s70%
815s6.7 節點/s95%

最佳化效果: Worker 數量從 2 增加到 8,吞吐量提升 3x

3.4 最佳化建議

  1. 根據 CPU 核心數設定 max_workers: 通常設定為 CPU 核心數的 1-2 倍
  2. 監控佇列深度: 如果佇列深度持續較高,增加 max_workers
  3. 避免過度擴容: Worker 過多會導致上下文切換開銷
  4. 使用非同步 I/O: 對於 I/O 密集型任務,使用非同步處理提升效率

詳細文件: 參見 workflow-optimization/parallel-execution.md


第四部分: 變數池最佳化

4.1 避免儲存大物件

問題: 在變數池中儲存大物件 (如大檔案、長文字) 會佔用大量記憶體。

最佳化策略:

# ❌ 不推薦: 儲存大物件
variables = {
    "large_file": open("large_file.pdf", "rb").read(),  # 10MB
    "long_text": "..." * 100000  # 1MB
}

# ✅ 推薦: 儲存引用
variables = {
    "file_path": "/path/to/large_file.pdf",
    "text_summary": summarize(long_text)  # 只儲存摘要
}

4.2 使用引用而非複製

問題: 變數複製會增加記憶體佔用和處理時間。

最佳化策略:

# ❌ 不推薦: 複製變數
result = process_data(data.copy())

# ✅ 推薦: 使用引用
result = process_data(data)  # 唯讀操作使用引用

4.3 及時清理變數

問題: 不再使用的變數佔用記憶體。

最佳化策略:

# 在程式碼節點中清理不再使用的變數
def main(args):
    # 處理資料
    large_data = process_large_data(args["input"])
    result = extract_result(large_data)

    # 清理大物件
    del large_data

    return {"result": result}

4.4 變數作用域管理

變數類型:

  • 系統變數: sys.query, sys.files, sys.conversation_id
  • 節點變數: {{#node_id.output#}}
  • 環境變數: 配置和密鑰管理
  • 迭代變數: 迴圈中的當前項和索引

最佳化建議:

  • 使用最小作用域
  • 避免全域變數污染
  • 及時釋放暫存變數

詳細文件: 參見 workflow-optimization/variable-pool.md


第五部分: 並行處理和流式回應

5.1 迭代器並行處理

使用迭代器的 parallel_nums 參數並行處理陣列資料。

配置範例:

iteration_node:
  type: iteration
  inputs:
    items: "{{#code_node.output.items#}}"
  config:
    parallel_nums: 5  # 並行處理 5 個項目

效能對比:

資料量串行處理並行處理 (5)提升
10 項20s5s4x
50 項100s25s4x
100 項200s50s4x

5.2 流式回應

使用流式回應提升使用者體驗,減少首位元組時間 (TTFB)。

實作方式:

# API 呼叫啟用流式回應
response = requests.post(
    "https://api.dify.ai/v1/workflows/run",
    headers={"Authorization": f"Bearer {api_key}"},
    json={"inputs": {...}, "response_mode": "streaming"},
    stream=True
)

for line in response.iter_lines():
    if line:
        event = json.loads(line)
        print(event["data"])

最佳化效果:

  • TTFB 減少 80%
  • 使用者感知回應時間減少 50%

5.3 非同步任務處理

使用 Celery 非同步處理長時間執行的任務。

架構:

API Server → Celery Queue → Worker Pool → Task Execution

適用場景:

  • 大檔案處理
  • 批次資料匯入
  • 長時間 API 呼叫
  • 定時任務

5.4 事件驅動架構最佳化

Dify 採用事件驅動架構,節點執行產生事件流。

最佳化策略:

  • 使用非阻塞事件處理
  • 批次處理事件佇列
  • 最佳化事件分發邏輯

詳細文件: 參見 workflow-optimization/parallel-execution.md


第六部分: 效能最佳化案例

案例 1: 資料庫查詢最佳化 (N+1 問題)

適用場景:

  • 工作流中需要查詢多個相關資料
  • 存在迴圈查詢資料庫的情況
  • 執行時間隨資料量線性增長

問題特徵:

  • 查詢次數 = 1 + N (N 為資料條數)
  • 資料庫連接頻繁建立和關閉
  • 執行時間過長

最佳化前狀態:

# 查詢使用者列表
users = query("SELECT * FROM users LIMIT 100")

# 為每個使用者查詢訂單 (N+1 問題)
for user in users:
    orders = query(f"SELECT * FROM orders WHERE user_id = {user.id}")
    user.orders = orders
  • 查詢次數: 101 次 (1 + 100)
  • 執行時間: 10.5s
  • 資料庫負載: 高

最佳化方案:

# 一次性查詢所有資料
users = query("SELECT * FROM users LIMIT 100")
user_ids = [user.id for user in users]

# 批次查詢訂單
orders = query(f"SELECT * FROM orders WHERE user_id IN ({','.join(map(str, user_ids))})")

# 在記憶體中關聯資料
orders_by_user = {}
for order in orders:
    if order.user_id not in orders_by_user:
        orders_by_user[order.user_id] = []
    orders_by_user[order.user_id].append(order)

for user in users:
    user.orders = orders_by_user.get(user.id, [])

最佳化後效果:

  • 查詢次數: 2 次 (減少 98%)
  • 執行時間: 2.1s (減少 80%)
  • 資料庫負載: 低

預期收益:

  • 短期: 執行時間減少 80%,資料庫負載降低
  • 長期: 支援更大資料規模,系統可擴展性提升
  • ROI: 開發成本 2 小時,每月節省伺服器成本 30%

案例 2: 大規模節點渲染最佳化 (100+ 節點)

適用場景:

  • 工作流包含 100+ 個節點
  • 前端渲染卡頓
  • 編輯器回應緩慢

問題特徵:

  • 頁面載入時間 > 5s
  • 拖拽節點延遲明顯
  • 瀏覽器記憶體佔用高

最佳化前狀態:

  • 節點數量: 150 個
  • 頁面載入時間: 8.5s
  • 記憶體佔用: 500MB
  • 使用者體驗: 卡頓嚴重

最佳化方案:

  1. 虛擬滾動: 只渲染可見區域的節點
  2. 節點懶載入: 按需載入節點詳情
  3. Canvas 最佳化: 使用 Canvas 替代 DOM 渲染
  4. 狀態管理最佳化: 減少不必要的重渲染

最佳化後效果:

  • 頁面載入時間: 2.1s (減少 75%)
  • 記憶體佔用: 150MB (減少 70%)
  • 使用者體驗: 流暢

預期收益:

  • 短期: 使用者體驗顯著提升
  • 長期: 支援更複雜的工作流設計
  • ROI: 開發成本 1 週,使用者滿意度提升 40%

案例 3: 工作流日誌刪除效能最佳化

適用場景:

  • 需要定期清理歷史日誌
  • 日誌資料量大 (百萬級)
  • 刪除操作耗時長

問題特徵:

  • 刪除操作阻塞資料庫
  • 影響正常業務
  • 執行時間不可預測

最佳化前狀態:

  • 日誌數量: 500 萬條
  • 刪除時間: 45 分鐘
  • 資料庫鎖: 長時間鎖表
  • 業務影響: 嚴重

最佳化方案:

# 最佳化前: 一次性刪除
DELETE FROM workflow_logs WHERE created_at < '2024-01-01';

# 最佳化後: 分批刪除
batch_size = 10000
while True:
    deleted = DELETE FROM workflow_logs
              WHERE created_at < '2024-01-01'
              LIMIT batch_size;

    if deleted < batch_size:
        break

    # 短暫休眠,釋放資料庫鎖
    sleep(0.1)

最佳化後效果:

  • 刪除時間: 50 分鐘 (略有增加,但不阻塞業務)
  • 資料庫鎖: 短時間鎖 (0.1s)
  • 業務影響: 無

預期收益:

  • 短期: 業務不受影響
  • 長期: 資料庫穩定性提升
  • ROI: 開發成本 4 小時,避免業務中斷損失

案例 4: TiDB 分散式儲存整合

適用場景:

  • 知識庫資料量大 (TB 級)
  • 單機 PostgreSQL 效能瓶頸
  • 需要水平擴展能力

問題特徵:

  • 查詢回應時間 > 5s
  • 資料庫 CPU 使用率 > 90%
  • 無法繼續擴展

最佳化前狀態:

  • 資料庫: PostgreSQL 單機
  • 資料量: 2TB
  • 查詢回應時間: 8.5s
  • 擴展能力: 受限

最佳化方案:

  1. 遷移到 TiDB: 分散式 SQL 資料庫
  2. 向量索引最佳化: 使用 TiDB Vector 加速檢索
  3. 讀寫分離: 讀請求分發到多個副本
  4. 分割區表: 按時間分割區提升查詢效率

最佳化後效果:

  • 查詢回應時間: 1.2s (減少 86%)
  • 資料庫 CPU: 40% (降低 50%)
  • 擴展能力: 支援 10x 資料規模

預期收益:

  • 短期: 查詢效能顯著提升
  • 長期: 支援業務快速增長
  • ROI: 遷移成本 2 週,支援 10x 業務增長

案例 5: Higress AI Gateway 高可用部署

適用場景:

  • 生產環境需要高可用
  • 多 LLM 模型負載均衡
  • 需要故障轉移能力

問題特徵:

  • 單點故障風險
  • LLM API 呼叫不穩定
  • 無法應對流量突增

最佳化前狀態:

  • 架構: 單實例 Dify
  • 可用性: 95%
  • 故障恢復時間: 10 分鐘
  • 流量峰值: 無法應對

最佳化方案:

# Higress AI Gateway 配置
apiVersion: networking.higress.io/v1
kind: McpBridge
metadata:
  name: dify-gateway
spec:
  replicas: 3  # 3 個實例
  loadBalancer:
    algorithm: round-robin
  healthCheck:
    enabled: true
    interval: 10s
  failover:
    enabled: true
    maxRetries: 3

架構:

使用者請求 → Higress Gateway → [Dify 實例 1, Dify 實例 2, Dify 實例 3]
                ↓
          負載均衡 + 故障轉移

最佳化後效果:

  • 可用性: 99.9%
  • 故障恢復時間: < 1 秒 (自動切換)
  • 流量峰值: 支援 10x 流量

預期收益:

  • 短期: 系統穩定性顯著提升
  • 長期: 支援業務關鍵應用
  • ROI: 部署成本 3 天,避免業務中斷損失

第七部分: 效能測試和監控

7.1 效能指標體系

工作流執行指標:

指標目標值說明
平均執行時間< 2s工作流完整執行時間
P95 執行時間< 5s95% 請求的執行時間
P99 執行時間< 10s99% 請求的執行時間
節點成功率> 99%節點執行成功的比例
API 呼叫成功率> 99.5%外部 API 呼叫成功率
並行處理能力> 100 QPS每秒處理請求數

資源使用指標:

指標目標值說明
CPU 使用率< 70%平均 CPU 使用率
記憶體使用率< 80%平均記憶體使用率
資料庫連線數< 80%連線池使用率
Redis 記憶體< 70%Redis 記憶體使用率

成本指標:

指標目標值說明
Token 使用成本< 預算LLM API 成本
基礎設施成本< 預算伺服器、資料庫成本
成本/使用者持續降低單使用者成本

7.2 監控工具

LLMOps 監控:

# Dify 內建監控
from dify import Monitor

monitor = Monitor()

# 記錄工作流執行
monitor.log_workflow_execution(
    workflow_id="xxx",
    execution_time=2.5,
    node_count=10,
    token_usage=1500,
    cost=0.003
)

# 查詢統計資料
stats = monitor.get_workflow_stats(
    workflow_id="xxx",
    time_range="7d"
)

執行追蹤:

  • 工作流執行歷史
  • 節點運行步數統計
  • LLM 使用統計
  • 錯誤日誌和重試記錄

資源監控:

# Prometheus + Grafana
# 監控 CPU、記憶體、網路、磁碟

# 範例查詢
rate(dify_workflow_execution_total[5m])  # 工作流執行速率
histogram_quantile(0.95, dify_workflow_duration_seconds)  # P95 執行時間

7.3 效能測試方法

負載測試:

# 使用 Locust 進行負載測試
from locust import HttpUser, task, between

class DifyUser(HttpUser):
    wait_time = between(1, 3)

    @task
    def run_workflow(self):
        self.client.post(
            "/v1/workflows/run",
            headers={"Authorization": f"Bearer {self.api_key}"},
            json={"inputs": {"query": "測試問題"}}
        )

# 運行測試
# locust -f load_test.py --users 100 --spawn-rate 10

壓力測試:

# 使用 Apache Bench
ab -n 1000 -c 50 -H "Authorization: Bearer xxx" \
   -p request.json \
   https://api.dify.ai/v1/workflows/run

基準測試:

# 效能基準測試
import time

def benchmark_workflow(workflow_id, iterations=100):
    times = []
    for i in range(iterations):
        start = time.time()
        run_workflow(workflow_id)
        end = time.time()
        times.append(end - start)

    return {
        "avg": sum(times) / len(times),
        "p50": sorted(times)[len(times) // 2],
        "p95": sorted(times)[int(len(times) * 0.95)],
        "p99": sorted(times)[int(len(times) * 0.99)]
    }

7.4 效能分析工具

Python Profiler:

import cProfile
import pstats

def profile_workflow():
    profiler = cProfile.Profile()
    profiler.enable()

    # 執行工作流
    run_workflow()

    profiler.disable()
    stats = pstats.Stats(profiler)
    stats.sort_stats('cumtime')
    stats.print_stats(20)  # 顯示前 20 個最耗時的函式

瀏覽器開發者工具:

  • Performance Tab: 分析前端渲染效能
  • Network Tab: 監控 API 請求時間
  • Memory Tab: 檢查記憶體洩漏

日誌分析:

# 分析 Dify 日誌
cat /var/log/dify/*.log | grep "ERROR" | wc -l  # 錯誤次數
cat /var/log/dify/*.log | grep "execution_time" | awk '{sum+=$NF; count++} END {print sum/count}'  # 平均執行時間

常見問題 (FAQ)

Q1: 如何確定是否需要最佳化?

A: 使用快速診斷清單進行評估。如果工作流執行時間 > 5s、LLM 成本過高或系統資源使用率 > 80%,建議進行最佳化。

Q2: 哪些最佳化策略需要修改工作流?

A: 圖結構最佳化、並行分支、減少冗餘節點需要修改工作流設計。LLM 策略、Worker 池和變數池調整可以通過配置實現。

Q3: 最佳化後如何驗證效果?

A: 使用效能基準測試工具,比較最佳化前後的執行時間、Token 消耗、成本等指標。建議在測試環境驗證後再部署到生產環境。

Q4: 並行處理是否會增加成本?

A: 並行處理通常不會增加 LLM API 成本,但可能增加系統資源消耗。需要平衡效能提升和資源成本。

Q5: 如何處理 LLM API 限流?

A: 實施快取策略、使用模型路由、配置重試策略、調整並行度。詳見 llm-optimization/rate-limit.md。


參考資料

內部文檔

外部資源

工具推薦

Individual skills in this repo

This repo contains 5 individual skills — each has its own dedicated page.

相關技能