开发与工程 multi-agent-orchestrationrag-pipelinesworkflow-daggraph-orchestrationconversation-memoryopenai-apipineconee2b-code-interpreter

Dynamiq

用 Python 编排智能体、LLM 工作流与 RAG 管道。

FollowAgents 评估 · FARS-2.1
谨慎使用
61/ 100 五分制 3.1 / 5
1 2 3 4 5 6
1信任安全13 / 29 · 2.2/5

证据展示了显式工具列表、循环上限、工作流依赖关系,以及仅向内部 PR 或受控标签任务注入凭据;安全政策还提供了保密报告渠道,因此数据流、敏感数据处理和依赖治理达到普通使用水平。扣分点是框架没有统一的权限最小化或逐项授权机制,用户确认仅出现在邮件示例的交互逻辑中,外部调用及数据发送缺少通用披露和审批保障,也没有撤销、补偿事务或回滚设计。来源由仓库、项目元数据、文档、许可证及公司版权声明相互指向,但发布者身份未经独立验证,故未给满分。未发现红线证据。

2可靠稳定8 / 14 · 2.9/5

README、项目元数据、CI 和测试夹具对 Python 框架、LLM、Agent、RAG 与集成能力的描述总体一致;依赖大多设有版本范围,支持 Python 3.10–3.13,并有容器化 CI、隔离测试和凭据集成测试路径。扣分点是默认依赖集合非常庞大且包含众多外部服务,README 示例存在缺少 asyncio 导入、把打印状态描述成邮件已发送等细节不一致;除最大循环行为外,几乎没有失败类型、诊断信息或恢复建议。

3适用触发14 / 18 · 3.9/5

材料覆盖翻译、异步 ReAct、并行与串行 Agent、多 Agent 委派、RAG、记忆聊天和图编排,受众与场景覆盖充分。显式工具、角色、依赖、输入转换、路由、推理模式和循环上限提供了较好的配置边界与触发控制。扣分点是没有形成统一的能力/权限边界,基于 LLM 的委派仍依赖提示词约定;外部服务凭据、系统级 PDF/图形依赖、资源需求和部署差异说明不完整。

4规范维护13 / 18 · 3.6/5

README 的安装、文档、示例、贡献和许可证结构清楚;包名、CLI、版本 0.60.1、Python 范围及项目链接均有元数据支持。大量可直接阅读的示例使示例性文档接近完整,Apache-2.0 全文和元数据一致,故许可证满分。扣分点是没有 FAQ,已知限制仅零散提到 Python 版本、现有 Pinecone 索引等前提;仅提供发布页入口而没有随附变更记录,维护责任虽有团队邮箱、安全邮箱和贡献入口,但具体负责人及发布者身份未得到验证。

5有效结果9 / 13 · 3.5/5

示例展示了可直接消费的节点输出、Agent 内容、按节点编号组织的工作流结果和 RAG 写入/检索路径,且相较于单次 LLM 调用提供了 DAG、并行执行、委派、记忆和多后端集成等显著增量价值。扣分点是输出契约、错误结果和持久化副作用没有系统说明;虽然可配置 max_tokens、max_loops 和模型,但缺少费用、延迟、依赖体积、资源消耗及何时不值得采用该框架的指导。

6证据核验4 / 8 · 2.5/5

核心身份、版本、Python 范围、许可证、CI 路径和主要场景可在 README、pyproject、工作流及测试夹具之间交叉对应,具备普通水平的静态可追溯性。扣分点是材料没有提供运行结果或独立验证,测试片段主要是公共夹具而非具体行为断言;“all-in-one”“自动并行”等营销性或概括性主张未明确区分事实、示例和推断,邮件示例还可能让读者误以为打印文本代表真实发送。

证据充分度: 评估于 2026年8月14日 审查版本 aaf02c1eaf67
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
源码中未见的安全控制:回滚或恢复路径
使用前请注意
  • 这是仅基于所给修订文件的静态审查;未执行代码、测试或网络集成。
  • Agent 可调用 E2B、搜索、数据库、向量存储及云模型等外部服务;部署者应自行增加工具白名单、最小权限、出站数据披露和高影响操作确认。
  • README 直接展示 API 密钥参数占位符,而 CI 会生成包含真实秘密的 .env 文件;应核查日志脱敏、文件清理、密钥轮换及第三方数据保留策略。
  • 默认依赖面很大,并含大量快速演进的服务客户端;采用前应生成锁定清单和 SBOM,进行漏洞扫描,并考虑按功能拆分可选依赖。
  • 图编排邮件示例并未实际发送邮件,只打印“已发送”状态;不要把该示例视为外部效果、确认或交付保证。
  • 未见通用回滚或补偿机制;对写入向量库、数据库或其他有状态系统的工作流,应在应用层加入幂等、审计和恢复设计。
评估证据 [1][2][3][4][5][6][7]
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

Dynamiq 是一个面向智能体应用、LLM 调用和检索增强生成的 Python 编排框架。其核心接口包括 Workflow、Flow、Agent、LLM 节点、工具节点、Memory,以及支持条件分支和循环的 GraphOrchestrator。工作流通过节点依赖和 InputTransformer 连接输入与输出,并可在条件允许时并行执行节点,也能按依赖顺序串行运行。示例展示了 OpenAI 模型调用、E2B 代码解释器、ScaleSerp 搜索、Pinecone 向量存储,以及 PDF 转换、切分、嵌入和检索。它以 Python 库形式运行并返回结构化的节点输出;来源没有给出托管服务、容器部署或生产运维方案。

应用通过 OpenAIConnection 等连接对象配置外部服务,并用 OpenAI、Agent 或其他节点执行任务。Workflow 和 Flow 将节点组织成 DAG;depends_on、NodeDependency、inputs 和 InputTransformer 控制执行顺序与数据传递,独立节点可并行运行。Agent 可以调用 E2BInterpreterTool、ScaleSerpTool,或把其他 Agent 当作工具,由管理智能体分派研究和写作任务。RAG 索引链路使用 PyPDFConverter 读取 PDF,DocumentSplitter 切分文档,OpenAIDocumentEmbedder 生成向量,再由 PineconeDocumentWriter 写入索引;检索链路通过 OpenAITextEmbedder、PineconeDocumentRetriever 和 OpenAI 节点生成答案。Memory 配合 InMemory 后端保存会话历史,而 GraphOrchestrator、GraphAgentManager、状态、边和条件路由可构建带人工反馈的迭代流程。执行结果由 run 或异步的 await agent.run 返回,并可从 result.output 中读取内容。

  1. Python 开发者需要把提示词、OpenAI 模型调用和业务节点组合成可复用的 LLM 流程。
  2. 研究或内容团队希望由管理智能体并行委派搜索与写作任务,再汇总为一份简报。
  3. 知识库团队需要将 PDF 分页转换、按句切分、生成嵌入并写入既有 Pinecone 索引。
  4. 应用开发者需要检索 Pinecone 中的相关文档,并将文档上下文交给模型回答用户问题。
  5. 聊天应用开发者希望使用 Memory 与 InMemory 后端,按用户和会话保存对话历史。
  6. 需要人工审核的团队可用 GraphOrchestrator 构建“生成草稿—收集反馈—继续修改或结束”的循环。

这个 Agent 有哪些优点和局限?

优点
  • 同一套节点与 Workflow API 同时覆盖普通 LLM 流程、串行或并行智能体、RAG 和图式编排。
  • 节点依赖、输出映射和 InputTransformer 提供了明确的数据流连接方式,而不必手工搬运每一步结果。
  • GraphOrchestrator 支持状态、普通边、条件边和循环,可表达带反馈与终止条件的流程。
  • 示例给出了 PDF 到 Pinecone 的完整索引链路,以及从问题嵌入到检索和答案生成的对应链路。
局限
  • 所给示例均使用 OpenAI 模型或嵌入接口,没有证据说明如何切换到其他模型提供商。
  • 代码解释、网页搜索和向量检索分别依赖 E2B、ScaleSerp 与 Pinecone等外部服务,并需要额外凭证。
  • Pinecone 索引示例假定索引已经存在,索引创建步骤未包含在提供的安装流程中。
  • 来源未说明容器化、托管部署、持久化内存、监控、重试或生产故障恢复方案。

如何安装或部署这个 Agent?

需要 Python 3.10 或更高版本。通过 PyPI 安装:

pip install dynamiq

也可以从源码安装依赖:

git clone https://github.com/dynamiq-ai/dynamiq.git
cd dynamiq
uv sync

运行示例前需设置其使用的凭证:基础 LLM 示例需要 OpenAI API key;E2B、ScaleSerp 和 Pinecone 示例还分别需要对应服务的 API key。

如何使用这个 Agent?

最小调用方式是创建连接、模型节点并执行 run:

from dynamiq.nodes.llms.openai import OpenAI
from dynamiq.connections import OpenAI as OpenAIConnection
from dynamiq.prompts import Prompt, Message
prompt = Prompt(messages=[Message(content="Translate the following text into English: {{ text }}", role="user")])
llm = OpenAI(

id="openai",
connection=OpenAIConnection(api_key="OPENAI_API_KEY"),
model="gpt-4o",
temperature=0.3,
max_tokens=1000,
prompt=prompt,
)

result = llm.run(input_data={"text": "Hola Mundo!"})
print(result.output)

多节点应用可创建 Workflow,将 Agent 或处理节点加入 wf.flow,并使用 depends_on、inputs 或 InputTransformer 连接数据,最后调用 wf.run(input_data={...})。异步 Agent 使用 await agent.run(...);相关代码需在 Python 异步事件循环中执行。

常见问题

使用 Dynamiq 是否必须付费?
仓库采用 Apache-2.0 许可证,但示例调用 OpenAI、E2B、ScaleSerp 和 Pinecone 等外部服务;来源未说明这些服务的价格,实际费用取决于所选服务。
是否必须使用 OpenAI?
提供的所有模型与嵌入示例都使用 OpenAIConnection 和 OpenAI 节点。来源没有展示其他模型提供商,因此不能确认无需改动即可替换。
能否直接用于 ChatGPT、Codex 或 Claude?
来源只明确展示 OpenAI API 的 Python 集成,没有记录 ChatGPT、Codex、Claude Code、Claude AI 或 Claude API 的原生接入方式。
对话记忆会持久保存吗?
聊天示例使用 Memory 和 InMemory 后端,只证明了进程内会话历史能力;来源没有展示持久化后端或重启后的恢复行为。
RAG 示例运行前要准备什么?
需要本地 PDF、OpenAI API key、Pinecone API key,以及一个已经存在且维度与示例配置一致的 Pinecone 索引。

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents