# LLM 相容介面

Source: https://openflow.run/zh-tw/docs/nodes/llm/
Language: zh-TW
Product version: 0.1.0-beta.77

查閱既有 LLM 定義的訊息範本、輸入覆寫和結果約束。新增面板不提供此類型。

新增面板沒有獨立的 LLM 選項。本文說明既有 LLM 定義及其 CLI/MCP 介面。建立模型任務時，可在面板中選擇「AI 智能體」，或選擇應用目錄實際提供的模型操作。

LLM 介面使用明確的一組訊息請求模型。

## 訊息與模型

設定模型和範本預設值。範本透過 `{{input}}` 等佔位符插入具名輸入。透過 `messages` 提供的歷史訊息排在範本訊息之前，歷史訊息本身不做範本替換。

```json
{
  "op": "node.add", "as": "summary", "type": "llm", "name": "Summarize a ticket",
  "config": {
    "model": { "model": "deepseek-v4-flash" },
    "template": [{ "role": "user", "content": "Summarize in one sentence: {{input}}" }]
  },
  "inputs": { "input": { "kind": "value", "value": "The customer cannot complete checkout." } }
}
```

模型必須可透過部署端已設定的模型服務呼叫。只綁定本次請求需要的資料。

LLM 將開始節點的輸入填入訊息範本，回傳一條文字輸出。

**輸入**
{"text":"The customer cannot complete checkout."}

**預期結果**
生成一句話摘要，具體措辭由模型決定。

**執行前準備**
執行前，在目前部署環境中設定模型服務，並選擇可用模型。

[下載工作流程](https://openflow.run/docs/examples/summarize-text.openflow.json)

## 預設值與覆蓋

設定中的 `model`、`template` 和 `messages` 是儲存的預設值。同名輸入綁定優先於這些預設值。修改預設設定，不會移除已有綁定。

使用 `default` 來源恢復繼承預設值，使用 `unset` 明確停用預設值。兩者也都不同於 JSON 字面值 null。

## 結果

公開編排介面負責管理結果連接埠。預設結果為文字，`config.resultSchema` 用於要求結構化結果。服務會按該契約驗證輸出，通過後才送出任務結果。

schema 約束資料結構，不保證事實正確。應按實際任務檢查生成內容。具體措辭取決於模型，離線預覽不會生成或確認結果。

## 失敗

LLM 支援一般[任務重試和錯誤處理](https://openflow.run/zh-tw/docs/concepts/errors-and-retries/index.md)。重試使用相同輸入重新執行模型任務，可能產生不同內容，也可能增加模型用量。

## 資料來源

*   [docs/authoring/node-authoring.md](https://github.com/oomol-lab/open-flow/blob/e25a738d170322734572a0b8a1323cb00b9d355a/docs/authoring/node-authoring.md)
*   [docs/control/contracts/control-api.md](https://github.com/oomol-lab/open-flow/blob/e25a738d170322734572a0b8a1323cb00b9d355a/docs/control/contracts/control-api.md#node-configuration-semantics)
*   [packages/open-flow/src/workbench/browser/runtime/editor/addNodeOptions.ts](https://github.com/oomol-lab/open-flow/blob/e25a738d170322734572a0b8a1323cb00b9d355a/packages/open-flow/src/workbench/browser/runtime/editor/addNodeOptions.ts)
