AI智能体(Agent)大模型入门【13】--智能体入门

目录

前言

什么是智能体

智能体的定义

智能体的核心特征

如何快速进入一个入门案例

安装crewai软件框架

代码入门

运行演示


前言

本篇章将会与之前的篇章没有任何关联,本篇章将会独立于之前,将会介绍智能体实现一个独立的开发的入门教程。

什么是智能体

我个人认为是对大模型的的一个规则处理,也就是设定一个处理任务的角色,而不再广泛性,专注于某个领域和任务的处理。

市面上很多的智能体应用啊,你会发现都是设定有特定的角色,例如ppt助手,文案生成,股票分析行情助手,或者短故事生成助手这类型的智能体,都是限制在某个功能。

至于规则处理,我个人认为,就是已经确定了领域,那就要有步骤,有条理的实现功能,而不是遇见什么就处理什么,不是人为导致接口乱调用,而是大模型根据需求来进行按需的接口调用。

以上就是我的理解,那么来看看官方的解释。

智能体的定义

智能体(Agent)是一种能够感知环境、自主决策并执行动作的实体,通常具备目标导向性、适应性和学习能力。在人工智能领域,智能体可以是软件程序、机器人或混合系统,能够通过与环境交互实现特定任务。

智能体的核心特征

自主性:无需外部直接干预,可独立运行并做出决策。
反应性:能实时感知环境变化并作出响应。
目标导向:通过规划和学习实现预设目标。
社会性:部分智能体支持多智能体协作或与人类交互。

如何快速进入一个入门案例

有两个网站可以快速入门

Crewai

Quickstart - CrewAI

AutoGen

Getting Started | AutoGen 0.2

不过为了快速入门,我们选择难度较低的Crewai来进行简单的基础入门。

安装crewai软件框架

先检查个人的python版本,对于crewai是对python有要求的,目前不支持3.14版本的,和3.10版本以下的版本,如果不是这个区间的请手动降低版本或者更新版本。

查看python版本的指令

python3 --version

终端输入

pip install crewai
pip install crewai-tool

代码入门

这个目前不涉及它所创建的完全独立的crewai项目,即类似django通过指令创建一个包含crewai的项目,而是手动创建代码实现类似的独立的测试入门的代码

模块导包

from crewai import  Agent,LLM,Task,Crew

然后配置llm,这里选用的是deepseek。

注:同时除了deepseek你也可以换成ollama本地下载的模型,也可以换成kimi,gpt等模型。

def deepseek():
    return LLM(
        model="deepseek/deepseek-chat",
        api_key = '你的deepseek秘钥',
        api_base = 'https://api.deepseek.com/v1',
        model_kwargs = {"llm_provider": "deepseek"}
    )

然后就是智能体设定,设定一个,或者多个都是ok的,具体根据项目来

re_agent = Agent(
    role = "检索相关信息以回答⽤户查询: {query}",
    goal = "从可⽤资源中检索与⽤户查询最相关的信息: {query},始终优先使⽤pdf搜索⼯具,如果⽆法从pdf搜索⼯具中检索到信息,则尝试使⽤⽹络搜索⼯具。",
    backstory = "你是⼀位细致⼊微的分析师,以敏锐的洞察⼒著称。你以理解⽤户查询: {query} 并从最合适的知识库中检索信息的能⼒⽽闻名。",
    llm = deepseek(),
    verbose=True
)

rp_agent = Agent(
    role = "为用户查询生成最终响应: {query}",
    goal = "根据⽤户查询: {query} 将检索到的信息综合成简洁连贯的响应。如果⽆法检索到信息,则回应“抱歉,我找不到您要的信息。",
    backstory = "你是⼀位熟练的沟通者,擅⻓将复杂的信息转化为清晰简洁的回应。",
    llm = deepseek(),
    verbose=True
)

然后就是任务设置

retrieval_task =Task(
    description="从可⽤资源中检索与⽤户查询最相关的信息: {query}",
    expected_output="以⽂本形式从资源中检索到的最相关信息。",
    agent=re_agent,
)

response_task = Task(
    description="为⽤户查询合成最终响应: {query}",
    expected_output="基于从正确来源检索到的信息,为⽤户查询: {query} 提供简洁连贯的响应。如果⽆法检索到信息,则回应“抱歉,我找不到您要的信息。",
    agent=rp_agent,
)

最后就是crew设置,设置这个是为了运行启动智能体来进行任务操作

crew = Crew(
    agent = [re_agent, rp_agent],
    tasks=[retrieval_task, response_task],
    verbose=True
)

然后就是启动设置

crew_output = crew.kickoff(inputs={"query": "⼤模型如何提⾼编程的效率?"})
print(crew_output)

运行演示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值