Agent K: 自动化的AI智能体,AGI的未来?

TLDR:创造出能够像人类一样思考、学习和解决问题的机器,一直是人工智能 (AI) 领域的终极目标,我们称之为通用人工智能(AGI)。本文介绍了 Agent K,一个由协作智能体组成的自进化 AGI 系统,旨在通过自动创建新的智能体和工具来完成用户交付的任务,其核心特点是模块化、可扩展和自我修复,为 AGI 的发展指明了新的方向。

Agent K:迈向AGI的新路径

不同于依赖庞大、单一模型的传统 AI 系统,Agent K 另辟蹊径,它由多个协作智能体组成,每个智能体都拥有其专业知识和能力。这种模块化的架构赋予了 Agent K 强大的可扩展性和适应性,使其能够随着时间的推移不断学习和进化。

模块化和可扩展的架构

想象一下,一个由许多专家组成的团队,每个专家都精通各自的领域。当面对复杂的任务时,他们可以协同合作,共同找到最佳解决方案。Agent K 正是基于这种理念构建的。

每个智能体都是一个独立的单元,可以独立开发和测试,然后与其他智能体集成以完成更复杂的任务。这种模块化的设计带来了以下优势:

  • 可扩展性: 可以轻松地添加新的智能体和工具,而无需对核心系统进行重大更改。

  • 可维护性: 由于每个智能体都有特定的职责,因此更容易识别和修复错误或进行改进。

  • 可理解性: 模块化设计使 Agent K 的内部工作机制更容易被理解,这对于构建信任和确保负责任的 AI 开发至关重要。

自测试和自我修复

在软件开发领域,我们都知道测试的重要性。测试可以帮助我们发现和修复代码中的错误,确保软件的质量和稳定性。但是,对于 AGI 系统来说,测试的意义远不止于此。

Agent K 被鼓励为自己编写测试,这在 AGI 开发中是一个新颖且重要的概念。通过自动检测和修复错误,Agent K 可以减少对人工干预的依赖,并提高其可靠性和鲁棒性。这种自我修复能力对于在现实世界中部署 AGI 至关重要,在现实世界中,系统需要能够在没有持续人工监督的情况下自主运行。

Agent K 的 Demo 展示

以下内容展示了 Agent K 如何与用户交互并完成任务的示例:

用户输入:

fetch a quote of the day from the web

Agent K 输出:

Understood. Our goal is to fetch a quote of the day from the web.  
  
Here's the plan:  
  
1. Assign the `web_researcher` agent the task of finding a reliable source for a quote of the day.  
2. Once the source is identified, have the `web_researcher` fetch the current quote of the day from that source.  
  
I'll start by assigning the `web_researcher` to find a reliable source for a quote of the day.  
  
... (Agent K 执行任务的过程) ...  
  
Here is the quote of the day from Best Life Online:  
  
"The only person you are destined to become is the person you decide to be." — Ralph Waldo Emerson  
  
If you need more positive quotes, feel free to check out the full article [here](https://bestlifeonline.com/positive-quotes/).

Agent K 如何工作?

Agent K 的工作流程可以概括为以下几个步骤:

  1. 接收用户请求: Agent K 的协调器 “Hermes” 接收用户的请求,例如从网络上获取一条当天的名言。

  2. 理解目标并制定计划: “Hermes” 分析用户的请求,理解其目标,并制定一个计划来实现目标。例如,为了获取当天的名言,“Hermes” 制定的计划可能包括:寻找可靠来源和获取名言两个步骤。

  3. 分配任务给其他智能体: “Hermes” 根据计划将任务分配给其他智能体。例如,“Hermes” 会将寻找可靠来源的任务分配给 “WebResearcher” 智能体,将从可靠来源获取名言的任务分配给其他合适的智能体 (如果需要)。

  4. 智能体协作执行任务: 被分配任务的智能体会根据其核心 prompt 执行相应的操作。例如,“WebResearcher” 会使用网络搜索引擎查找可靠的 “quote of the day” 来源,并返回结果给 “Hermes”。

  5. 返回结果给用户: “Hermes” 收集所有智能体执行任务的结果,并将最终结果返回给用户。

Agent K的核心智能体

Agent K 的内核包含四个关键智能体:

  • Hermes: 协调器,负责与用户交互,理解目标,制定计划,分配任务并协调其他智能体的活动。
    # agents/hermes.py  
      
    # ... (省略导入语句) ...  
      
    system_prompt = f"""You are Hermes, a ReAct agent that achieves goals for the user.  
      
    # ... (省略Agent K 架构说明) ...  
      
    You interact with a user in this specific order:  
    1. Reach a shared understanding on a goal.  
    2. Think of a detailed sequential plan for how to achieve the goal through the orchestration of agents.  
    3. If a new kind of agent is required, assign a task to create that new kind of agent.  
    4. Assign agents and coordinate their activity based on your plan.  
    4. Respond to the user once the goal is achieved or if you need their input.  
      
    # ... (省略其他代码) ...  
      
    def reasoning(state: MessagesState):  
        print()  
        print("hermes is thinking...")  
        messages = state['messages']  
        tooled_up_model = config.default_langchain_model.bind_tools(tools)  
        response = tooled_up_model.invoke(messages)  
        return {"messages": [response]}  
      
    def check_for_tool_calls(state: MessagesState) -> Literal["tools", "feedback_and_wait_on_human_input"]:  
        messages = state['messages']  
        last_message = messages[-1]  
          
        if last_message.tool_calls:  
            # ... (省略部分代码) ...  
        else:  
            return "feedback_and_wait_on_human_input"  
      
    # ... (省略其他代码) ...  
    
    ```
    
***AgentSmith:** 架构师,负责设计、创建和维护其他智能体,根据任务需求打造出最合适的工具。
    
    ```
    # agents/agent_smith.py  
    # ... (省略导入语句) ...  
          
    system_prompt = f"""You are agent_smith, a ReAct agent that develops other ReAct agents.  
    # ... (省略智能体描述) ...  
      
    def reasoning(state: MessagesState):  
        print()  
        print("agent_smith is thinking...")  
        messages = state['messages']  
        tooled_up_model = config.default_langchain_model.bind_tools(tools)  
        response = tooled_up_model.invoke(messages)  
        return {"messages": [response]}  
      
    def check_for_tool_calls(state: MessagesState) -> Literal["tools", END]:  
        messages = state['messages']  
        last_message = messages[-1]  
          
        if last_message.tool_calls:  
            # ... (省略部分代码) ...  
          
        return END  
      
    # ... (省略其他代码) ...
    ```
    
***ToolMaker:** 工具开发者,负责创建和改进智能体执行任务所需的工具。
    
    ```
    # agents/tool_maker.py  
    # ... (省略导入语句) ...  
          
    system_prompt = """You are tool_maker, a ReAct agent that develops LangChain tools for other agents.  
    # ... (省略智能体描述) ...  
      
    def reasoning(state: MessagesState):  
        print()  
        print("tool_maker is thinking...")  
        messages = state['messages']  
        tooled_up_model = config.default_langchain_model.bind_tools(tools)  
        response = tooled_up_model.invoke(messages)  
        return {"messages": [response]}  
      
    def check_for_tool_calls(state: MessagesState) -> Literal["tools", END]:  
        messages = state['messages']  
        last_message = messages[-1]  
          
        if last_message.tool_calls:  
            # ... (省略部分代码) ...  
          
        return END  
      
    # ... (省略其他代码) ...
    ```
    
***WebResearcher:** 知识收集器,负责使用网络搜索信息,并将其转化为 Agent K 可以理解和利用的知识。
    
    ```
    # agents/web_researcher.py  
    # ... (省略导入语句) ...  
      
    system_prompt = """You are web_researcher, a ReAct agent that can use the web to research answers.  
    # ... (省略智能体描述) ...  
    """  
          
    # ... (省略其他代码) ...  
    def reasoning(state: MessagesState):  
        print("web_researcher is thinking...")  
        messages = state['messages']  
        tooled_up_model = config.default_langchain_model.bind_tools(tools)  
        response = tooled_up_model.invoke(messages)  
        return {"messages": [response]}  
      
    def check_for_tool_calls(state: MessagesState) -> Literal["tools", END]:  
        messages = state['messages']  
        last_message = messages[-1]  
          
        if last_message.tool_calls:  
           # ... (省略部分代码) ...  
          
        return END  
      
    # ... (省略其他代码) ...

挑战和未来方向

Agent K代表了AGI发展的新方向。通过其模块化、可扩展和自我修复的架构,Agent K有潜力克服传统AI系统的局限性,并为实现真正通用的AGI铺平道路。

尽管Agent K已经展现出巨大的潜力,但它仍然处于发展的早期阶段。在通往AGI的道路上,Agent K还需要克服许多挑战,例如:

  • 提高智能体之间的协作效率。 如何让不同的智能体更高效地协同工作,是Agent K面临的一个重要挑战。

  • 开发更强大的自学习和推理能力。 为了实现AGI,Agent K需要具备更强的学习和推理能力,才能真正像人类一样思考和解决问题。

  • 解决与AGI相关的伦理和安全问题。 AGI的发展也引发了人们对于伦理和安全的担忧。Agent K需要在设计之初就考虑到这些问题,并采取相应的措施。

Agent K是一个令人兴奋的项目,它为AGI的发展提供了新的视角。通过其独特的架构和对自测试和自我修复的关注,Agent K有可能彻底改变我们与AI互动的方式,并预示着智能自动化新时代的到来。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值