500-AI-Agents-Projects学习之二.crewai_mcp_course 建立 Agent 通用认知

crewai_mcp_course 介绍

一、名称拆解

  1. CrewAI:当下最主流的多智能体协作框架,核心三要素:Agent(角色智能体)Task(任务)Crew(智能体团队),用来搭建分工协作的AI工作流(比如研究员+撰稿人分工写文章)。
  2. MCP = Model Context Protocol(模型上下文协议):CrewAI 官方标准工具协议,统一让智能体调用外部工具、本地服务、远程接口、数据库,不用手写复杂工具封装;新增 mcps 参数一键挂载外部工具服务。
  3. crewai_mcp_course:一套由浅入深的实战课程代码集,专门教你从 CrewAI 基础,到 MCP 工具集成的完整开发流程。

二、价值

  1. 递进式学习,无跳跃
    先掌握CrewAI多智能体底层逻辑,再引入MCP标准化工具方案,避开新手“只会抄代码不懂原理”的问题。
  2. 统一适配任意大模型(DeepSeek/OpenAI/Ollama通吃)
    代码全部支持切换LLM,你现在配置的Windows全局OPENAI_API_KEY/OPENAI_BASE_URL可全课程通用。
  3. MCP是未来标准,不用重复造轮子
    传统CrewAI自定义工具需要写大量schema代码;MCP协议标准化后,一行配置挂载整套工具服务,大幅降低多工具开发成本。
  4. 全可运行源码
    每个lesson独立完整demo,不用自己拼接代码,你当前环境一键安装依赖即可跑通。

三、CrewAI框架

  1. Agent 智能体(执行单元)
    每个 Agent 是独立 AI 角色,为框架核心执行单元,包含四个必填属性:
  • role:智能体身份,如 AI 研究员、文案、测试工程师等,定义岗位定位
  • goal:该智能体的核心工作目标,明确核心任务方向
  • backstory:人设背景,决定 AI 的回答风格、专业深度与思维逻辑
  • llm:绑定大模型,支持直接填写模型名字符串,自动读取全局环境变量
    额外扩展能力:可绑定 tools 工具、开启 memory 上下文记忆、设置 max_iter 最大思考轮次。
  • verbose:控制智能体的详细日志输出开关
  1. Task 任务(工作单元)
    分配给 Agent 的具体工作,用于严格约束 AI 的输出内容、格式与规范,是具体业务载体,核心属性如下:
  • description:任务详细需求,包含主题、需要覆盖的要点、各类限制条件
  • expected_output:规定最终输出的格式、字数、结构、规范要求
  • agent:指定负责执行当前任务的专属智能体
    任务执行结果会自动流转传递给下一个任务或智能体,实现多步骤业务流程串联。
  1. Crew 团队(调度容器)
    用于打包整合多个 Agent 智能体与 Task 任务,是整个项目的调度容器与程序运行入口,核心属性与方法:
  • agents:智能体列表,存放所有参与协作的 AI 角色
  • tasks:任务列表,存放整套业务的所有执行任务
  • process:定义整体任务的执行调度模式
    启动入口方法:crew.kickoff(),一键触发整套 AI 团队协作流程。
  1. Process 执行调度模式
    CrewAI 内置三种主流任务调度策略,适配不同业务场景:
  • Process.sequential 串行:任务按顺序依次执行,上一个任务的输出结果自动传递给下一个任务,流程线性递进
  • Process.parallel 并行:多个无依赖的任务同时运行,提升整体执行效率
  • Process.hierarchical 分层管理:框架自动生成管理型 Agent,智能动态分配、调度子任务,适配复杂大型项目
  1. Tools / MCP 工具能力
    为 AI 智能体拓展外部能力,打破纯文本生成限制,是智能体落地实用场景的核心:
  • 原生 Tools:支持自定义 Python 函数工具,让 AI 实现联网搜索、读写文件、调用第三方接口、数据计算等外部操作
  • MCP(Model Context Protocol):本课程核心进阶重点,标准化工具服务协议,可一行配置批量挂载整套工具服务,无需手动编写大量工具代码,极大简化智能体工具开发流程

Lesson 学习

Lesson 01:CrewAI 基础入门

  • 核心知识点:

    1. 定义 Agent:role角色、goal目标、backstory人设背景、绑定LLM模型
    2. 定义 Task:给智能体分配具体工作、输出要求
    3. 组装 Crew:把多个Agent+Task组成团队,设置执行模式(顺序执行Process.sequential)
  • 示例场景:研究员智能体 + 文案智能体,分工完成AI行业调研报告

  • 报错兼容说明:新版CrewAI不支持直接传入LangChain ChatOpenAI对象,两种解决方式:

    • 最简:llm="deepseek-chat" 字符串写法,自动读取系统全局DeepSeek环境变量
    • 兼容:用 CrewAIModel 包装LangChain LLM实例

    CrewAI 最小运行公式:

    1.导入模块
    2.新建 Agent(员工)
    3.新建 Task(工作)
    4.组装 Crew 并启动(需要指定调度模式)

根据源码了解完了操作流程,开始实操,我们自行实现一个场景

练习场景:AI 职场周报生成小团队

场景设定

公司有两名AI员工:

  1. 数据收集专员:负责整理本周工作内容、项目进度、遇到的问题
  2. 周报撰稿专员:根据收集到的素材,整理成规范、简洁的职场周报,分模块输出
任务分配
任务1(交给数据收集专员)

任务描述:整理软件开发岗位本周工作内容,包含3部分:

  1. 本周完成的开发需求
  2. 当前未完成、待推进的事项
  3. 开发过程遇到的技术难点
    输出要求:纯素材清单,不用润色,分点罗列,简洁直白。
任务2(交给周报撰稿专员)

任务描述:读取上一步收集的全部工作素材,生成标准职场周报,结构分为:本周完成工作、待办计划、问题与解决方案。
输出要求:正式职场文风,篇幅控制在300字以内,条理清晰。

执行规则

执行模式:串行 Process.sequential
先执行收集素材任务,再用素材生成周报,自动传递上一步结果。

Agent基础参考参数(自行填写role/goal/backstory)
  1. Agent1:数据收集专员
  2. Agent2:周报撰稿专员
    llm统一使用 deepseek-chat
完成要求
  1. 完整写出导入、2个Agent、2个Task、Crew组装、kickoff运行整套代码
  2. 在本地根目录执行运行:python crewai_mcp_course/lesson_01/self_demo.py

Demo

# 1.导入 
from crewai import Agent,Task,Process,Crew
# 2.模型
llm="deepseek-chat"
# 3.两个Agent
# 3.1 数据收集专员
data_member=Agent(
	role="开发数据收集专员",
	goal="收集整理本周工作",
	backstory="熟悉开发工作流程,擅长梳理工作",
	llm=llm,
	verbose=True
)
# 3.2 周报撰稿专员
weekly_member=Agent(
	role="周报撰稿专员",
	goal="汇总撰写本周工作",
	backstory="熟悉开发工作流程,擅长整合撰写内容",
	llm=llm,
	verbose=True
)

# 4.两个任务
# 4.1 数据收集任务
data_task=Task(
	description="整理软件开发岗位本周工作内容,必须包含三部分:1.本周完成开发需求;2.待推进未完成事项;3.开发遇到的技术难点,只输出纯素材清单,分点罗列,无需润色",
	expected_output="简洁分点工作素材,无多余修饰文字",
	agent=data_member
	
)
# 4.2 周报汇总任务
weekly_task=Task(
	description="参考上一步收集的全部工作素材,生成标准职场周报,分为三大模块:本周完成工作、待办计划、问题与解决方案,正式职场文风,全文控制300字以内,条理清晰",
	expected_output = "规范结构化职场周报,分段清晰,语言正式简洁",
	agent=weekly_member,
	context=[data_task]  # 读取上一个任务输出作为上下文
)


# 5. Crew 组装

crew = Crew(
	agents=[data_member,weekly_member],
	tasks=[data_task,weekly_task],
	process =Process.sequential,
	verbose=True
)


# 6.启动
if __name__ == "__main__":
	result=crew.kickoff()
	print("=====最终周报结果=====")
	print(result)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Lesson 02:Tools 自定义工具基础

  • 学会给智能体增加搜索、计算、文件读写工具;
  • 理解工具调用逻辑,Agent自主判断什么时候调用工具。

Lesson 03:MCP 协议基础

  • 弄懂MCP客户端/服务端架构;
  • 本地启动简易MCP服务,让CrewAI Agent通过 mcps=[本地MCP地址] 自动加载全部工具,无需手动注册工具函数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值