基礎概念

什麼是詢問表單?

代理在對話中途當場組出來的小表單——選項、數字、日期——渲染成可以直接點選的東西,而不是一整段要打字回答的問題。

又稱互動表單結構化提問對話內表單ask forminteractive formsin-chat forms

多數商務對話都會走到一個時刻:代理必須先拿到四項具體資訊才能派上用場——幣別、金額、期間、日期。

用文字問,這就變成一段裡面塞了四個問題的話。回來的是其中兩個的答案,順序跟你問的不一樣,金額寫成「大概 160 萬左右」。然後你得再追問一次,接著還要確認那是不是台幣。

詢問表單把這一切換成點幾下就好。

代理可以組出什麼

表單是代理自己在對話中途、依照它當下需要什麼而寫出來的。不是你事先設計好、再綁到某個觸發條件上的表單。

五種欄位,可以混在同一張表單裡:

  • 單選多選 — 從可列舉的選項中挑
  • 數字 — 帶單位與上下限;千分位分隔符號會顯示給客戶看,但在代理拿到值之前就被去掉,所以沒有人需要去解析「160 萬」
  • 日期 — 帶允許的區間
  • 文字 — 留給那個真的沒辦法列舉的項目

客戶填完送出,答案會以一則訊息回到代理手上,它從那裡接著往下走。

有趣的地方在於它的克制

這種功能的誘惑是一直用,而一個什麼問題都丟表單的代理,比一個從來不用表單的更糟。

所以代理被要求:只有在選項真的可以列舉、至少有兩個實質選項、而且非拿到不可才能往下走的時候,才用表單。開放式問題——「跟我說說你的狀況」——維持用問的。收尾的客套話也是:沒有人想在「還有其他需要嗎?」看到一組單選鈕,而一張只有一個選項、寫著「結束對話」的表單,比它取代掉的那句話還糟。

為什麼這對商務代理重要

**回來的資料是結構化的。**數字就是數字,不是一句還要人去解讀的話——當下一步是呼叫一個要求整數的報價工具時,這件事很要緊。

**用更少輪次走到同一個地方。**一次互動拿到四項資訊,取代六則來回確認——而每多一次來回,都是客戶可能中途飄走的地方。

**它會用客戶的語言。**代理寫這些欄位標籤的方式,跟它寫其他東西一樣,所以西班牙語的詢問會得到西班牙語的表單,不需要誰去維護五種翻譯。

答案會流到哪裡

送出的表單不是一次資料庫寫入——它會變成一則訊息,代理從那裡繼續推理。這一點很重要,因為下一步通常就是其他零件之一:一個直接餵給 MCP 工具的數字、一組決定 Skill 要走哪一個分支的選項,或是被記進那位客戶空間裡、下個月不必再問一次的事實。

表單是逐一代理啟用的,所以一個只該回答問題的代理,永遠不會多出開口反問的能力。

這是代理在模型之上多出了什麼的好例子。模型決定的是要問什麼;把它渲染成可以點的東西、驗證回來的內容、再把一個乾淨的數字交給下一個工具,全部都是外圍架構的事。

想了解實作細節?小工具是怎麼渲染回覆的