Agent的四种设计模式,从零实现Agent框架

让大模型返回json格式,方便直接处理数据。

LLM支持json格式:

def chat(self, user\_prompt, json\_mode=False):  kwargs = {}  if json\_mode:  kwargs\["response\_format"\] \= {"type": "json\_object"}  completion = self.client.chat.completions.create(  model\=self.model,  messages\=\[  {"role": "system",  "content": self.system\_prompt},  {"role": "user", "content": user\_prompt}  \],  temperature\=0.3,  \*\*kwargs  )  return completion.choices\[0\].message.content

但在使用时,需要指定json字典的key,否则这个key就是随机的。

import json  from core.llm import LLM  resp = LLM().chat('你是谁?格式为{“name”:"xxxx","介绍":"xxxx"}')  
print(resp)  
json\_resp = json.loads(resp)  
print(json\_resp)  resp = LLM().chat('你是谁?格式为{“name”:"xxxx","介绍":"xxxx"}', json\_mode\=True)  
print(resp)  
json\_resp = json.loads(resp)  
print(json\_resp\['name'\])  

指令遵循还不错的:

在这里插入图片描述

大模型agent的框架是否需要,这个问题比较纠结。

现在流行的langchain以及更高级的crewai,对大模型做了很多抽象和封装。除了一些tool有用——但这些tool可以拆分出来。

但agent之前的关联,其实本质上还是线性的,就是指望大模型去分拆步骤,然后自主完成任务,目前看还有难度。

Agentic设计模式常见的有4种:

在这里插入图片描述

  • 基于reflection的,纯粹的对结果反思,无外部交互。这是一个非常基础的模式,尽管很简单,但却可以为结果带来挺大的提升。

  • 与工具交互,并对交互结果进行推理。LLM中存储的信息通常不足以准确、有见地地回答问题。这个模式不具备迭代调用。

  • 有规划模块,能完成任务拆解,任务规划,反思迭代。通过将任务分解为更小、更容易完成的子目标,而不会迷失最终目标。

  • 多Agent系统,像 crewAI 或 AutoGen 这样的框架,它们允许创建Multi-Agent的应用。任务可以划分为由不同角色执行的小任务。

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

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

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1561999.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

深圳大学-Java程序设计-选实验1 基础知识练习

实验目的与要求: 实验目的:掌握Java程序设计开发环境的搭建,编写简单Java Project,掌握编译、运行等基本步骤和命令。 实验要求: (1).下载、安装"Java SE Development Kit 20.0.2"最新的版本,需…

【harmonyOS开发笔记3】ArkTS中数组的使用

数组的定义 数组:是一个容器,可以存储多个数据 定义数组的格式: let 数组名: 类型[] [数据1, 数据2, ] 示例:let names: string[] [小明, 小红] // 数组 let 数组名: 类型[] [数据1, 数据2, ] let …

基于yolov8、yolov5的动物检测系统(含UI界面、训练好的模型、Python代码、数据集)

摘要:动物识别在生态保护及科研领域中起着至关重要的作用,不仅能有效监测野生动物的分布,还为自动化生态监测提供了可靠的数据支撑。本文介绍了一款基于YOLOv8、YOLOv5等深度学习框架的动物识别模型,该模型使用了大量图片进行训练…

MySQL 8.4.0解压版安装记录

这几天,安装最新版mysql 8.4的时候,遇到了不少问题,网上的教程大多数都是旧版本的,也安装不成功。 参考了大量教程后,经过自己的摸索终于装好了,这里记录一下。 我下载的是8.4.0 LTS MySQL :: Download …

面试官:讲一下SEO优化

一、什么是SEO优化? SEO就是搜索引擎优化 二、为什么要做SEO优化? 通过优化将网站的排名更靠前,吸引更多的用户访问,达到网站营销或者宣传效果,实现盈利 三、SEO优化要怎么做? 1、TKD设置 可以通过准确的TK…

解决pyinstaller 打包 ddddocr 库方法

前言 ddddocr 库 在打包成 exe 文件后一直有各种各样的问题。无法运行。 总是提示缺少 onnxruntime_providers_shared.dll 等问题。例如下图: 所以这里总结一下打包解决方法。 方法 1、 第一步,先使用命令打包一次 pyinstaller -F demo.py -p D:\Python38\Lib\site-pac…

Tongweb7049m4+THS6010-6012配置故障轉移+重試机制(by lqw)

使用场景 1.ths代理tongweb多套后端,假如有其中一套tongweb因为服务器重启或者宕机后没有及时启动,导致ths一直轮询在这个出故障的节点上。 2.即使在tongweb重启了,有的应用启动也需要一定的时间,这个时候只是启动了应用端口&…

【力扣刷题实战】(归并排序)合并两个有序数组

大家好,我是小卡皮巴拉 文章目录 目录 力扣题目: 合并两个有序数组 题目描述 示例 1: 示例 2: 示例 3: 解题思路 具体思路 题目要点 作图助解 完整代码(C语言) 兄弟们共勉 &#…

Docker 教程二 (架构)

Docker 架构 Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。容器&am…

【C++】——继承(下)

【C】——继承(下) 5 继承与友元6 继承与静态成员7 多继承7.1 继承模型7.2 菱形继承的问题7.3 虚继承7.4 多继承中的指针偏移问题 8 组合与继承 5 继承与友元 友元关系不能被继承。即一个函数是父类的友元函数,但不是子类的友元函数。也就是说…

这篇Cell刚上线的AI for Science论文,能给你带来哪些灵感?

我是娜姐 迪娜学姐 ,一个SCI医学期刊编辑,探索用AI工具提效论文写作和发表。 2024年10月9日,中山大学医学院施莽教授团队和阿里云李兆融团队合作在Cell上发表了文章Using artificial intelligence to document the hidden RNA virosphere。 研…

再也不怕面试官问我几百亿ip相关的问题了

首先要明确这一类的问题都是海量那个数据类型的问题,对于海量数据我们一般采用分而治之的思路去解决,考官考察的就是你有没有处理海量数据的经验。总结几个常见的海量数据相关的面试,供参考。 有一个存放10GB的ip地址文件,每行一…

10款电脑加密软件超好用分享|2024年常用电脑加密软件排行榜

在数字化日益加深的今天,数据安全变得愈发重要。无论是个人的隐私信息还是企业的敏感数据,加密软件都能有效保护文件不被未授权访问。以下是2024年常用的10款电脑加密软件,供您参考与选择。 1.安秉网盾 安秉网盾是一款专为企业设计的信息安全…

超级会员卡积分收银系统源码 余额充值+积分功能+积分商城 带完整的安装代码包以及搭建部署教程

系统概述 超级会员卡积分收银系统是一款专为中小商家设计的会员卡管理系统,旨在通过智能化的会员管理和丰富的营销活动,提升客户的忠诚度和消费频次。该系统采用先进的Web技术架构,支持多终端访问,无论是PC端、手机端还是平板&am…

福禄克通道测试和跳线测试的不同于在哪里?

简单的从测试报告,我们也可以看出,channel的测试参数比patchcord的测试参数多很多。 有的朋友会认为,是不是channel测试更严格,错,反而是patchcord更严格。

转行风口上的AI大模型开发,能不能挽救我的职业生涯?

大模型算是当之无愧最火的一个方向了,算是新时代的风口。有小伙伴觉得,既然是新领域、新方向,那么,人才需求肯定比较大,相应的人才缺乏,竞争也会更少 ,那转行去做大模型是不是一个更好的选择呢&…

2014年国赛高教杯数学建模C题生猪养殖场的经营管理解题全过程文档及程序

2014年国赛高教杯数学建模 C题 生猪养殖场的经营管理 某养猪场最多能养10000头猪,该养猪场利用自己的种猪进行繁育。养猪的一般过程是:母猪配种后怀孕约114天产下乳猪,经过哺乳期后乳猪成为小猪。小猪的一部分将被选为种猪(其中公…

大数据时代!如何利用用户画像提升展会招展效率?

在大数据的浪潮中,企业如何精准捕捉市场脉搏?答案就藏在“用户画像”中。这一新兴工具,正逐渐成为企业精准营销和提升客户体验的秘密武器。本文将带您深入了解用户画像的精髓,探索其在会展招展领域的独特魅力。 用户画像是什么&a…

【Java】jvisualvm工具

jdk8及以下版本自带,在jdk的bin目录下,jvisualvm.exe jdk8以上去官网下载:https://visualvm.github.io/index.html 本地的会自动获取,发布在服务器上的用远程进行连接,发布的程序需配置JVM参数,如下 -Dcom…

基于Spring Boot的医疗病历交互系统开发指南

第2章 设计技术与开发环境 2.1 相关技术介绍 2.1.1 B/S模式分析 C/S模式主要由客户应用程序(Client)、服务器管理程序(Server)和中间件(middleware)三个部件组成。客户应用程序是系统中用户与数据组件交互。服务器程序负责系统资源,如管理信息数据库的有效管理&…