AI News HubLIVE
站内改写2 分鐘閱讀

如何使用iii通過Workers、Functions和Cron Triggers構建文檔智能後端

本教程展示瞭如何使用iii引擎構建文檔智能工作流,包括安裝引擎、註冊模塊化函數、組合分析管道,並通過直接調用、HTTP端點、即發即棄執行和定時cron觸發器複用相同邏輯。

來源MarkTechPost作者: Sana Hassan

在本教程中,我們使用iii構建了一個文檔智能工作流。首先,我們安裝iii引擎和Python SDK,然後以後台進程啓動引擎並連接一個Python worker。設置完成後,我們分別註冊了用於文本歸一化、分詞、情感分析、關鍵詞提取、報告生成和心跳跟蹤的函數。接着,我們將這些函數組合成一個統一的分析管道,並通過直接調用、HTTP端點、即發即棄執行以及定時cron觸發器來運行相同的邏輯。在此過程中,我們還跟蹤了基本的運行時狀態,使工作流更貼近真實的後端系統,而非靜態的筆記本演示。

我們首先導入所需的Python模塊,並設置本地二進制路徑用於III引擎。我們定義了一個小的輔助函數來執行shell命令,並在III引擎尚未安裝時進行安裝。我們還安裝了Python SDK和requests包,然後通過檢查版本號驗證了iii的安裝。

接下來,我們啓動了III引擎,並創建了一個Python worker來連接它。我們等待引擎的WebSocket和HTTP端口就緒,並確認連接成功。

我們定義了文本分析工作流中使用的核心函數,包括歸一化、分詞、情感檢測和關鍵詞提取。然後我們創建了一個分析函數,將其每個步驟都通過III引擎進行路由,而不是直接調用。此外,我們還添加了報告生成、HTTP處理和心跳函數,然後使用worker註冊了所有這些函數。

我們註冊了一個HTTP觸發器,使得分析管道可以通過POST請求調用。我們還嘗試註冊了一個cron觸發器,用於按固定計劃運行心跳函數,並在引擎構建不支持該模式時安全地跳過。然後我們連接了worker並稍作暫停,以便註冊的函數和觸發器準備就緒。

為了測試完整的III工作流,我們向註冊的分析管道發送了示例文本文檔。我們通過直接調用分析了三個文檔,並輸出了關鍵詞和情感結果。接着,我們通過HTTP調用相同的邏輯,測試了即發即棄執行,並檢查了cron心跳是否正在運行。最後,我們打印了聚合狀態報告並顯示了引擎日誌尾部,以便獲得基本運行時可見性。

總之,我們擁有一個可工作的III系統,它使用模塊化、註冊的函數而非單一固定腳本來處理文本。我們分析了示例文檔,通過HTTP暴露了管道,測試了異步執行風格,跟蹤了心跳活動,並打印了聚合狀態報告。本教程保持了示例的可讀性,同時展示了iii的主要工作模式:一次定義函數,使用worker註冊,然後通過不同的觸發器和執行路徑重用它們。它還展示了隨着工作流成長為更接近生產環境時,小函數如何被清晰地連接起來。