google-gemini/genai-processors

GenAI Processors is a lightweight Python library that enables efficient, parallel content processing.

What it solves

GenAI Processors 是一个轻量级的 Python 库,旨在减少 LLM API 的碎片化,并简化复杂、异步 AI 流水线的创建。它提供统一的方式来处理多模态内容,并在不同模型、代理和工具之间流式传输数据,无需编写繁琐的管道代码。

How it works

该库围绕 Processor 抽象构建,封装一个工作单元。它使用“双接口”模式,将创建处理器的逻辑(Producer)与使用处理器的逻辑(Consumer)分离。

关键机制包括:

  • Unified Content Model:使用 ProcessorPart 包装多模态数据(文本、图像、音频、JSON),并附带 MIME 类型和角色等元数据。
  • Asyncio Integration:基于 Python 的 asyncio,提供原生异步流式传输和并发任务编排。
  • Composable Pipelines:可以通过 + 运算符将处理器链式连接,或使用 // 运算符并行化,构建复杂的数据流。
  • Integrated API Support:内置 GenaiModel 处理标准 API 调用,LiveProcessor 处理与 Gemini API 的实时流式交互。

Who it’s for

适用于构建生成式 AI 应用的开发者,尤其是需要协调多模态流式数据并创建模块化、可复用代理行为的场景。

Highlights

  • Modular Design:任务被拆分为可复用的 ProcessorPartProcessor 单元。
  • Native Streaming:默认内置异步流式传输功能。
  • Multimodal Support:无缝处理文本、图像、音频和自定义 JSON。
  • Flexible Orchestration:支持回合制交互和实时流式代理。