OxyFactory

May 15, 2026 · View on GitHub


类所在位置:

oxygent/oxy_factory.py

简介

OxyFactory 是用于创建 OxyGent 算子的工厂类。它提供了一种集中式的方式来创建各种类型的 Oxy 组件,包括 Agent、工具、LLM 和工作流。该工厂使用注册表模式,通过一个静态字典将类名映射到对应的类构造函数,从而实现基于字符串标识符的动态组件创建。

参数

参数类型 / 允许值默认值描述
_creatorsdict{}类名到类构造函数的静态映射字典

支持的组件

组件类型类名危险性描述
AgentChatAgent基于聊天的对话 Agent
AgentReActAgentReAct 模式推理 Agent
AgentWorkflowAgent基于工作流的 Agent
工具HttpTool基于 HTTP 的 Web 请求工具
工具MCPToolModel Context Protocol 工具
工具FunctionTool基于函数的工具
LLMHttpLLM基于 HTTP 的语言模型
LLMOpenAILLMOpenAI 语言模型
MCP 客户端StdioMCPClient标准 I/O MCP 客户端
MCP 客户端SSEMCPClientServer-Sent Events MCP 客户端
工作流Workflow工作流组件

安全说明: 上表中标记为"危险"的组件会被 create_oxy() 阻止,如果外部请求创建将抛出 SecurityError。只有安全的组件(LLM)可以通过工厂创建。

方法

方法协程 (async)返回值用途
_init_creators()None类方法,在模块加载时填充 _creators 注册表。
create_oxy(operator_class_name, **kwargs)Oxy静态方法,创建 Oxy 组件。对危险或未知的类将抛出 SecurityError