基于 CrewAI 构建应用的决策要点分析

在使用 CrewAI 框架来实现我们需求之前,需要很好地评估 CrewAI 框架提供的各种能力,并选择一些与我们的需求相匹配的能力子集合来构建 AI Agent 应用,否则在实现的过程中,可能会遇到各种无法达到预期的困难。 我们首先要明确的是,为了更好地满足实际应用场景的需要,只有选择最合适的技术组件和方法,在应用场景下需求不断细化明确的过程中,向着更合适的方向进行架构迭代优化,这个过程中甚至可能需要微调或替换各种技术组件(框架的某些特性/能力支持)。 本文大部分内容,是基于 CrewAI 官网文档 “Evaluating Use Cases for CrewAI” 一节的内容,经过重新组织而完成的。 1. CrewAI 决策框架 在使用 CrewAI 框架实现我们的应用之前,CrewAI 给出了一个 “Complexity vs. Precision” 矩阵,它基于复杂性与精确性两个维度,划分了 4 个象限,并针对不同象限对复杂性、精确性的要求,提供了使用 CrewAI 的特性的指导和建议。4 个象限划分,如下图所示: 通过这个矩阵可以很好地评估,我们应该如何选择 CrewAI 具备的能力,从而更好地满足应用需求。 下面先给

探索 CrewAI Knowledge 实现 RAG 应用

CrewAI 的 Knowledge 特性能够使我们非常方便地访问外部信息源,这些信息源可以是特定领域的数据,也可以是 Agent 为完成某个 Task 而需要指定会话上下文数据。可见,通过 Knowledge 特性我们可以实现基于 RAG 架构的 AI Agent 应用。 CrewAI 支持的 Knowledge Source 主要包括两大类: 一类是 Text Source,其中有 Raw String、Text File、PDF Document; 一类是 Structured Data,其中有 CVS File、Excel SpreadSheet、JSON Document。 当然,为了实现 AI Agent 应用的 Task 在执行过程中能够访问外部信息源,CrewAI 框架还支持其他各种的信息源,在 CrewAI 官网文档中可以在 “Tools” 一节中看到这些内置实现好的 Tool,能够非常方便地开箱即用,实现类似 RAG 的功能。 下面列出一些可能会比较常用的 Tool 集合: CSV RAG Search Directory RAG Search DOCX RAG Search JSON RAG Search MDX RAG Search MySQL RAG Search PDF RAG Search PG RAG Search Qdrant Vector Search Tool TXT RAG Search XML RAG Search Website RAG Search YouTube Channel RAG Searc

使用 CrewAI 开发 AI Agent 应用

CrewAI 是一个构建 AI Agent 应用的框架,可以非常方便地开发 AI Agent 应用,支持多个 Agent 之间协作以实现特定的任务。有关 CrewAI 中关于 Crew、Agent、Task 等概念,可以参考官网文档了解,下面是官网给出的一个 CrewAI 框架的设计概览,如下图所示: 在使用 CrewAI 开发 AI Agent 应用时,为了方便快速测试流程,可以采用直观的编码方式来体验或验证基本流程,也可以采用工程的方式构建更加复杂的 AI Agent 应用。下面,我们基于 CrewAI 分别通过这两种方式实现一个简单的 AI Agent 应用。 直接编码开发构建 下面,我们通过一个简单的例子,通过直观编码的来实现基本的 AI Agent,通过一个 Agent 和一个 Task 完成报表的查询和可视化输出。为了方便,可以使用 JupyterLab 开发和调试程序。 1.准备工作 在本地使用 Ollama 来运行大模型,从 Ollama 官网下载并安装 Ollama,为方便调试先安装 DeepSeek R1 7B 的模型,大约 5G 大小: ollama run deepseek-r1:7b 在命令行中可以输入自然语言进行推理,说明安装成功。 然后,在本地安装 CrewAI 的工具包(这里