跳至主要内容

REFERENCE

開發者參考

認證、API、SDK、Flow Agent 處理節點與參數取值的完整參考。

介紹

伺服器傳送事件 (Server-Sent Events) 的端點 (Endpoint) 是客戶端 (Client Side) 與伺服器傳送事件建立連結的介面,用於接收從伺服器 (Server) 發出的訊息 (Messages) 和事件 (Events)。 這些訊息包含各種內容,例如 Agent 或 Bot 發送的訊息、系統事件、終端用戶訊息等。一旦呼叫了端點,客戶端就會保持連線開啟並接收來自伺服器的事件。

  1. Request​

    常見的請求事件有分為四種,分別是:

    • 啟動/重置
    • 發送訊息
    • 上傳檔案
    • 附加檔案並發送訊息

    請求事件流程圖​

  2. Response​

    事件類型彙整如下:

    Event Types​

    名稱描述
    asgard.run.initSSE 服務初始化事件
    asgard.message.start對話的起始(可能包含初始文字)
    asgard.message.delta對話的內容更新(打字機效果,逐字傳送)
    asgard.message.complete對話的結束(完整文字 + Template 格式)
    asgard.run.doneSSE 服務事件完成
    asgard.run.errorSSE 服務事件錯誤,有發生錯誤時才會出現
    asgard.process.startprocess 的開始
    asgard.process.completeprocess 的完成
    asgard.tool_call.starttool 的開始,有使用 Toolset 功能才會出現
    asgard.tool_call.completetool 的完成,有使用 Toolset 功能才會出現

    事件開始必須先初始化,才會開始訊息的傳送,訊息分成開始、持續以及完成等階段,其中訊息持續的階段,可能會有多個 delta 直至訊息完成為止,可利用 idx 來觀察訊息的次序。訊息完成後才會接續著一個事件的完成。

    一般對話事件流程圖​

    使用到 Toolset 功能的事件流程圖​

    Fact Fields​

    參考Fact 表格整理事件內的欄位如下:

    名稱描述
    runInitinit 回傳內容
    runDonedone 回傳內容
    runErrorerror 回傳內容
    messageStart訊息的開始,message 物件支援欄位有:
    messageId, replyToCustomMessageId, text, payload, idx, template
    messageDelta訊息的疊加,message 物件支援欄位有:
    messageId, replyToCustomMessageId, text, payload, idx, template(省略為 null)
    idx 為識別該段訊息的次序,參考底下 Delta 範例。
    messageComplete訊息的完成,message 物件支援欄位有:
    messageId, replyToCustomMessageId, text, payload, idx, template
    processStartprocess 的開始
    processCompleteprocess 的完成
    toolCallStarttool 的開始,有使用 Toolset 功能才會出現
    toolCallCompletetool 的完成,有使用 Toolset 功能才會出現

準備好開始了嗎?

想知道 Asgard 怎麼用在你的團隊?跟我們聊聊。

聯絡我們