genai-processors: 一個用於構建非同步且可組合式多模態 AI 流水線的模組化框架

genai-processors: 一個用於構建非同步且可組合式多模態 AI 流水線的模組化框架

它解決了什麼問題

GenAI Processors 是一個輕量級的 Python 函式庫,旨在減少 LLM API 的碎片化,並簡化複雜、非同步 AI 流水線的建立。它提供了一種統一的方式來處理多模態內容,並在不同的模型、代理(agents)和工具之間串流數據,而無需編寫複雜的管道代碼。

運作原理

該函式庫圍繞著 Processor 抽象進行構建,該抽象封裝了一個工作單元。它使用「雙介面」模式來分離建立處理器(Producer)與使用處理器(Consumer)的邏輯。

關鍵機制包括:

  • 統一內容模型:使用 ProcessorPart 來封裝多模態數據(文字、圖像、音訊、JSON)並附帶 MIME 類型和角色等元數據。
  • Asyncio 整合:基於 Python 的 asyncio 構建,實現原生非同步串流與並行任務編排。
  • 可組合式流水線:可以使用 + 運算符將處理器鏈接在一起,或使用 // 運算符進行並行化,以構建複雜的數據流。
  • 整合 API 支援:包含內建處理器,例如用於標準 API 調用的 GenaiModel 以及用於與 Gemini API 進行即時串流互動的 LiveProcessor

對象是誰

正在構建生成式 AI 應用程式的開發者,特別是那些需要編排多模態串流數據並建立模組化、可重複使用代理行為的人。

重點特性

  • 模組化設計:任務被分解為可重複使用的 ProcessorPartProcessor 單元。
  • 原生串流:預設內建非同步串流功能。
  • 多模態支援:無縫處理文字、圖像、音訊和自定義 JSON。
  • 靈活的編排:同時支援回合制互動與即時、實時串流代理。

Sources