基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (四)
基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (四)
大家继续看 https://lilianweng.github.io/posts/2023-06-23-agent/的文档内容
第三部分:工具使用
工具的使用是人类的一个显着而显着的特征。我们创造、修改和利用外部物体来完成超出身体和认知极限的事情。为大模型配备外部工具可以显着扩展模型功能。
- 有些动物制造和使用工具的方式简直就是天才。 海獭漂浮在水中时使用岩石敲开贝壳的照片。虽然其他一些动物也可以使用工具,但其复杂性却无法与人类相比。
MRKL
(Karpas et al. 2022)是“模块化推理、知识和语言”的缩写,是一种用于自主代理的神经符号架构。建议 MRKL 系统包含一组“专家”模块,通用 LLM 作为路由器将查询路由到最合适的专家模块。这些模块可以是神经模块(例如深度学习模型)或符号模块(例如数学计算器、货币转换器、天气 API)。
他们做了一个微调 LLM 以调用计算器的实验,使用算术作为测试用例。他们的实验表明,解决口头数学问题比明确表述的数学问题更难,因为大模型(7B Jurassic1-large model)无法可靠地为基本算术提取正确的论据。结果强调了外部符号工具何时可以可靠地工作,知道何时以及如何使用这些工具至关重要,这由大模型的能力决定。
TALM
(工具增强语言模型;Parisi 等人,2022 年)和Toolformer(Schick 等人,2023 年)都对 LM 进行微调,以学习使用外部工具 API。根据新添加的API调用注释是否可以提高模型输出的质量来扩展数据集。请参阅Prompt Engineering 的“外部 API”部分了解更多详细信息。
ChatGPT插件和 OpenAI API 函数调用是大模型在实践中通过工具使用能力增强的好例子。工具API的集合可以由其他开发者提供(如在插件中)或自定义(如在函数调用中)。
HuggingGPT
(Shen et al. 2023)是一个使用 ChatGPT 作为任务规划器的框架,根据模型描述选择 HuggingFace 平台中可用的模型,并根据执行结果总结响应。
HuggingGPT 工作原理图解
该系统由4个阶段组成:
(1)任务规划:LLM作为大脑,将用户请求解析为多个任务。每个任务有四个关联的属性:任务类型、ID、依赖项和参数。他们使用少量的例子来指导LLM进行任务解析和规划。
指令说明:
The AI assistant can parse user input to several tasks: [{"task": task, "id", task_id, "dep": dependency_task_ids, "args": {"text": text, "image": URL, "audio": URL, "video": URL}}]. The "dep" field denotes the id of the previous task which generates a new resource that the current task relies on. A special tag "-task_id" refers to the generated text image, audio and video in the dependency task with id as task_id. The task MUST be selected from the following options: {{ Available Task List }}. There is a logical relationship between tasks, please note their order. If the user input can't be parsed, you need to reply empty JSON. Here are several cases for your reference: {{ Demonstrations }}. The chat history is recorded as {{ Chat History }}. From this chat history, you can find the path of the user-mentioned resources for your task planning.
AI助手可以将用户输入解析为多个任务:[{“task”:task,“id”,task_id,“dep”:dependency_task_ids,“args”:{“text”:text,“image”:URL,“audio “:网址,“视频”:网址}}]。 “dep”字段表示前一个任务的id,该任务生成当前任务所依赖的新资源。特殊标签“-task_id”是指id为task_id的依赖任务中生成的文本图片、音频和视频。任务必须从以下选项中选择:{{可用任务列表}}。任务之间有逻辑关系,请注意如果无法解析用户输入,则需要回复空 JSON。以下是几种情况供您参考:{{ 演示 }}。聊天记录记录为 {{ Chat History }}。历史记录,您可以找到用户提到的资源的路径,以便您规划任务。
(2) 模型选择:LLM将任务分配给专家模型,其中请求被构建为多项选择题。 LLM 提供了可供选择的模型列表。由于上下文长度有限,需要基于任务类型的过滤。
给定用户请求和调用命令,AI助手帮助用户从模型列表中选择合适的模型来处理用户请求。 AI助手仅输出最合适模型的模型id。输出必须采用严格的 JSON 格式:“id”:“id”,“reason”:“您选择的详细原因”。我们有一个模型列表供您从{{候选模型}}中进行选择。请从列表中选择一种型号。
(3) 任务执行:专家模型执行特定任务并记录结果。
指令说明
有了输入和推理结果,AI助手需要描述过程和结果。前面的阶段可以形成为-用户输入:{{用户输入}},任务规划:{{任务}},模型选择:{{模型分配}},任务执行:{{预测}}。您必须首先以直截了当的方式回答用户的请求。然后描述任务流程,并以第一人称的方式向用户展示你的分析和模型推理结果。如果推理结果包含文件路径,必须告诉用户完整的文件路径。
(4) 响应生成:LLM接收执行结果并向用户提供汇总结果。
为了将 HuggingGPT 投入到现实世界中,需要解决几个挑战:(1)需要提高效率,因为 LLM 推理轮次和与其他模型的交互都会减慢流程; (2) 依赖长上下文窗口来进行复杂任务内容的通信; (3)LLM产出和外部模型服务的稳定性提升。
API-Bank
(Li et al. 2023)是评估工具增强大模型性能的基准。它包含 53 个常用的 API 工具、完整的工具增强的 LLM 工作流程以及涉及 568 个 API 调用的 264 个带注释的对话。 API的选择相当多样化,包括搜索引擎、计算器、日历查询、智能家居控制、日程管理、健康数据管理、账户认证工作流程等等。由于API数量较多,LLM首先要访问API搜索引擎找到合适的API进行调用,然后使用相应的文档进行调用。
在 API-Bank 工作流程中,大模型需要做出几个决定,在每一步我们都可以评估该决定的准确性。决定包括:
- 是否需要API调用。
- 确定要调用的正确 API:如果不够好,大模型需要迭代修改 API 输入(例如,确定搜索引擎 API 的搜索关键字)。
- 基于API结果的响应:如果结果不满意,模型可以选择细化并再次调用。
该基准测试从三个层面评估代理的工具使用能力:
- Level-1评估调用API的能力。给定 API 的描述,模型需要确定是否调用给定的 API、正确调用它并正确响应 API 返回。
- Level-2 检查检索 API 的能力。模型需要搜索可能解决用户需求的API,并通过阅读文档来学习如何使用它们。
- Level-3 评估除了检索和调用之外规划 API 的能力。考虑到不明确的用户请求(例如安排小组会议、预订旅行的航班/酒店/餐厅),模型可能必须进行多个 API 调用来解决它。
大模型技术分享
《企业级生成式人工智能LLM大模型技术、算法及案例实战》线上高级研修讲座
模块一:Generative AI 原理本质、技术内核及工程实践周期详解
模块二:工业级 Prompting 技术内幕及端到端的基于LLM 的会议助理实战
模块三:三大 Llama 2 模型详解及实战构建安全可靠的智能对话系统
模块四:生产环境下 GenAI/LLMs 的五大核心问题及构建健壮的应用实战
模块五:大模型应用开发技术:Agentic-based 应用技术及案例实战
模块六:LLM 大模型微调及模型 Quantization 技术及案例实战
模块七:大模型高效微调 PEFT 算法、技术、流程及代码实战进阶
模块八:LLM 模型对齐技术、流程及进行文本Toxicity 分析实战
模块九:构建安全的 GenAI/LLMs 核心技术Red Teaming 解密实战
模块十:构建可信赖的企业私有安全大模型Responsible AI 实战
Llama3关键技术深度解析与构建Responsible AI、算法及开发落地实战
1、Llama开源模型家族大模型技术、工具和多模态详解:学员将深入了解Meta Llama 3的创新之处,比如其在语言模型技术上的突破,并学习到如何在Llama 3中构建trust and safety AI。他们将详细了解Llama 3的五大技术分支及工具,以及如何在AWS上实战Llama指令微调的案例。
2、解密Llama 3 Foundation Model模型结构特色技术及代码实现:深入了解Llama 3中的各种技术,比如Tiktokenizer、KV Cache、Grouped Multi-Query Attention等。通过项目二逐行剖析Llama 3的源码,加深对技术的理解。
3、解密Llama 3 Foundation Model模型结构核心技术及代码实现:SwiGLU Activation Function、FeedForward Block、Encoder Block等。通过项目三学习Llama 3的推理及Inferencing代码,加强对技术的实践理解。
4、基于LangGraph on Llama 3构建Responsible AI实战体验:通过项目四在Llama 3上实战基于LangGraph的Responsible AI项目。他们将了解到LangGraph的三大核心组件、运行机制和流程步骤,从而加强对Responsible AI的实践能力。
5、Llama模型家族构建技术构建安全可信赖企业级AI应用内幕详解:深入了解构建安全可靠的企业级AI应用所需的关键技术,比如Code Llama、Llama Guard等。项目五实战构建安全可靠的对话智能项目升级版,加强对安全性的实践理解。
6、Llama模型家族Fine-tuning技术与算法实战:学员将学习Fine-tuning技术与算法,比如Supervised Fine-Tuning(SFT)、Reward Model技术、PPO算法、DPO算法等。项目六动手实现PPO及DPO算法,加强对算法的理解和应用能力。
7、Llama模型家族基于AI反馈的强化学习技术解密:深入学习Llama模型家族基于AI反馈的强化学习技术,比如RLAIF和RLHF。项目七实战基于RLAIF的Constitutional AI。
8、Llama 3中的DPO原理、算法、组件及具体实现及算法进阶:学习Llama 3中结合使用PPO和DPO算法,剖析DPO的原理和工作机制,详细解析DPO中的关键算法组件,并通过综合项目八从零开始动手实现和测试DPO算法,同时课程将解密DPO进阶技术Iterative DPO及IPO算法。
9、Llama模型家族Safety设计与实现:在这个模块中,学员将学习Llama模型家族的Safety设计与实现,比如Safety in Pretraining、Safety Fine-Tuning等。构建安全可靠的GenAI/LLMs项目开发。
10、Llama 3构建可信赖的企业私有安全大模型Responsible AI系统:构建可信赖的企业私有安全大模型Responsible AI系统,掌握Llama 3的Constitutional AI、Red Teaming。
解码Sora架构、技术及应用
一、为何Sora通往AGI道路的里程碑?
1,探索从大规模语言模型(LLM)到大规模视觉模型(LVM)的关键转变,揭示其在实现通用人工智能(AGI)中的作用。
2,展示Visual Data和Text Data结合的成功案例,解析Sora在此过程中扮演的关键角色。
3,详细介绍Sora如何依据文本指令生成具有三维一致性(3D consistency)的视频内容。 4,解析Sora如何根据图像或视频生成高保真内容的技术路径。
5,探讨Sora在不同应用场景中的实践价值及其面临的挑战和局限性。
二、解码Sora架构原理
1,DiT (Diffusion Transformer)架构详解
2,DiT是如何帮助Sora实现Consistent、Realistic、Imaginative视频内容的?
3,探讨为何选用Transformer作为Diffusion的核心网络,而非技术如U-Net。
4,DiT的Patchification原理及流程,揭示其在处理视频和图像数据中的重要性。
5,Conditional Diffusion过程详解,及其在内容生成过程中的作用。
三、解码Sora关键技术解密
1,Sora如何利用Transformer和Diffusion技术理解物体间的互动,及其对模拟复杂互动场景的重要性。
2,为何说Space-time patches是Sora技术的核心,及其对视频生成能力的提升作用。
3,Spacetime latent patches详解,探讨其在视频压缩和生成中的关键角色。
4,Sora Simulator如何利用Space-time patches构建digital和physical世界,及其对模拟真实世界变化的能力。
5,Sora如何实现faithfully按照用户输入文本而生成内容,探讨背后的技术与创新。
6,Sora为何依据abstract concept而不是依据具体的pixels进行内容生成,及其对模型生成质量与多样性的影响。
相关文章:

基于 LlaMA 3 + LangGraph 在windows本地部署大模型 (四)
基于 LlaMA 3 LangGraph 在windows本地部署大模型 (四) 大家继续看 https://lilianweng.github.io/posts/2023-06-23-agent/的文档内容 第三部分:工具使用 工具的使用是人类的一个显着而显着的特征。我们创造、修改和利用外部物体来完成超…...

C++进阶:哈希(1)
目录 1. 简介unordered_set与unordered_map2. 哈希表(散列)2.1 哈希表的引入2.2 闭散列的除留余数法2.2.1 前置知识补充与描述2.2.2 闭散列哈希表实现 2.3 开散列的哈希桶2.3.1 结构描述2.3.2 开散列哈希桶实现2.3.3 哈希桶的迭代器与key值处理仿函数 3.…...

第三节课,功能2:开发后端用户的管理接口-- postman--debug测试
一、如何使用postman 网址: https://www.postman.com/downloads/ 【Postman小白教程】五分钟学会如何使用Postman~_哔哩哔哩_bilibili postman安装使用_bowser agent在postman哪里-CSDN博客 二、下载后 登录,开始测试 2.1 关于postman 报错&#…...

Docker-compsoe部署prysm-beacon-chain + geth服务(geth版本v1.14.0)
1、创建目录结构 ~ # mkdir -p /data/docker-compose/eth ~ # cd /data/docker-compose/eth /data/docker-compose/eth# mkdir beacondata eth ethdata prysm2、编写prysm-beacon-chain Dockerfile和启动脚本文件 /data/docker-compose/eth# vim Dockerfile /data/docker-…...

前端人员如何理解进程和线程
进程和线程的概念: 进程和线程本质都是cpu工作过程的时间片。 进程可以理解为cpu在运行指令即加载保存上下文所要用的时间。也可以理解为一个应用程序运行的实例。 线程是进程中更小的单位,描述一段指令所需要的时间。 进程是资源分配的最小单位…...

Linux下网络命令
目录 需求1-查看本机是否存在22端口解法1解法2解法3 需求2-查看其他主机是否存在22端口解法1解法2解法3 需求3-查看TCP连接解法1/2 需求4-统计80端口tcp连接次数解法 需求5-查看总体网络速度解法 需求6-查看进程流量解法 需求7-dns解法 需求8-traceroute到baidu解法 需求9-查看…...

Php swoole和mqtt
在 PHP 中使用 Swoole 处理 MQTT 订阅消息是一种高效的方式,可以充分利用 Swoole 协程的非阻塞特性和高性能 I/O 处理能力。下面是一个示例代码,演示了如何使用 Swoole 的 MQTT 客户端来订阅消息,并加以详细说明。 1. 安装 Swoole 首先&…...

Spring STOMP-连接到消息代理
STOMP 代理中继维护一个与消息代理的“系统”TCP 连接。这个连接仅用于来自服务器端应用程序的消息,不用于接收消息。您可以为此连接配置STOMP凭据(即STOMP帧的login和passcode头部)。这在XML命名空间和Java配置中都以systemLogin和systemPas…...

Excel中的`MMULT`函数
Excel中的MMULT函数是一个用于执行矩阵乘法运算的函数。矩阵乘法是线性代数中的一个基本运算,它允许我们计算两个矩阵的乘积,得到一个新的矩阵。与普通的标量乘法不同,矩阵乘法涉及到行与列的对应元素相乘然后求和的过程。MMULT函数在进行数据…...

孩子多大可以接触python?学习python的好处
孩子接触Python的年龄并没有明确的界限,一般来说,6岁以上的孩子可以开始学习Python编程。虽然Python是一门高级编程语言,但它的语法简单易懂,适合初学者入门。通过学习Python编程,孩子可以培养逻辑思维、创造力和解决问…...

四川汇昌联信:拼多多网点怎么开?大概需要多少钱?
想要开一家拼多多网点,你肯定很关心需要准备多少资金。下面,我们就来详细解答这个问题,并从多个角度分析开设网点的要点。 一、 开设拼多多网点,首要任务是确定启动资金。根据不同的经营模式和地区差异,成本会有所不同…...

ROS 2边学边练(43)-- 利用GTest写一个基本测试(C++)
前言 在ROS(Robot Operating System)中,gtest(Google Test)是一个广泛使用的C测试框架,用于编写和执行单元测试。这些测试可以验证ROS节点、服务和消息等的正确性和性能。 如果我们需要在写的包中添加测试&…...

3.整数运算
系列文章目录 信息的表示和处理 : Information Storage(信息存储)Integer Representation(整数表示)Integer Arithmetic(整数运算)Floating Point(浮点数) 文章目录 系列文章目录前…...

uri.getQueryParameters(name)返回一个列表(List)
uri.getQueryParameters(name)返回一个列表(List)而不是单个值的原因在于URI(统一资源标识符)中查询参数(query parameters)的设计允许同一个名称(name)对应多个值。这意味着一个查询…...

鸿蒙ArkUI开发:常用布局【主轴】
ArkUI中常用布局容器 线性布局(Row/Column) 线性布局的子元素在线性方向上(水平方向和垂直方向)依次排列线性布局容器包括[Row]和[Column]。Column容器内子元素按照垂直方向排列,Row容器内子元素按照水平方向排列开发…...

Spring Security 入门 2
1.项目实战 就以RuoYi-Vue 为例吧,主要以下几点原因: 基于 Spring Security 实现。 基于 RBAC 权限模型,并且支持动态的权限配置。 基于 Redis 服务,实现登录用户的信息缓存。 前后端分离。同时前端采用 Vue ,相对来…...

C++初阶学习第七弹——探索STL奥秘(二)——string的模拟实现
标准库中的string:C初阶学习第六弹——string(1)——标准库中的string类-CSDN博客 前言: 在前面我们已经学习了如何使用标准库中的string类,但作为一个合格的程序员,我们不仅要会用,还要知道如…...

5.nginx常用命令和日志定时切割
一. nginx常用的相关命令介绍 1.强制关闭nginx: ./nginx -s stop 2.优雅的关闭nginx: ./nginx -s quit 3.检查配置文件是否正确: ./nginx -t 4.查看nginx版本: ./nginx -v 5.查看nginx版本相关的配置环境信息:./nginx -V 6.nginx帮助信…...

Redis-详解(基础)
文章目录 什么是Redis?用Redis的特点?用Redis可以实现哪些功能?Redis的常用数据类型有哪些?Redis的常用框架有哪些?本篇小结 更多相关内容可查看 什么是Redis? Redis(Remote DictionaryServer)是一个开源…...

记录minio的bug(Object name contains unsupported characters.)
场景是我将后端服务从121.xxx.xxx.xxx服务器上转移到了另一台服务器10.xxx.xxx.xxx 但图片都还在121.xxx.xxx.xxx服务器上,同样我10.xxx.xxx.xxx也安装了minio并且我的后端服务配置的minio地址也是10.xxx.xxx.xxx 此时有一个业务通过minio客户端获取图片…...

【嵌入式开发 Linux 常用命令系列 7.6 -- sed 替换指定字符串】
请阅读【嵌入式开发学习必备专栏】 文章目录 sed 替换指定字符串 sed 替换指定字符串 背景: 找到当前目录下所有的.h 和 .c 文件 将他们中的字符 print_log替换为 demo_log 可以使用find命令结合sed命令在Linux环境下完成这项任务。下面是一个命令行示例ÿ…...

C++语言的字符数组
存放字符数据的数组是字符数组,字符数组中的一个元素存放一个字符。字符数组具有数组的共同属性。 1. 声明一个字符数组 char c[5]; 2. 字符数组赋值方式 (1)为数组元素逐一赋值 c[0]H c[1]E c[2]L c[3]L c[4]O (2&…...

24届电信红队实习生面经
sql注入的一些:原理、打的靶场的常见绕过、问了一些函数 (load_file、 outfile这些)、后利用 (mysql的udf提权的原理、条件、利用、其他像mssql这些数据库的提权手段、这些就没细问了, 就问有哪些方式; 问了有没有实战遇到mysql的…...

linux下使用jexus部署aspnet站点
1.运行环境 Centos 7 安装dos2unix工具 yum install dos2unix 安装jexus curl https://jexus.org/release/x64/install.sh|sudo sh2.网站部署 2.1. 将windows下的网站发布包Msc_qingdao_admin.zip上传到linux中, 然后解压后放入/var/www(没有则创建)目录下 r…...

代码随想录训练营Day 27|理论基础、力扣 77. 组合
1.理论基础 题目链接/文章讲解:代码随想录 视频讲解:带你学透回溯算法(理论篇)| 回溯法精讲!_哔哩哔哩_bilibili 来自代码随想录的网站: void backtracking(参数) {if (终止条件) {存放结果;return;}for (…...

Spring框架深度解析:打造你的Java应用梦工厂
想要在Java企业级应用开发中大展身手?Spring框架的核心容器是你不可或缺的伙伴! 文章目录 一. 引言1.1 介绍Spring框架的重要性1.2 阐述核心容器在Spring框架中的作用1.3 故事开端 二. 背景介绍2.1 描述Spring框架的发展历程2.2 概述Spring框架的主要特点…...

Python 正则表达式(一)
文章目录 概念正则函数match函数正则表达式修饰符意义: 常用匹配符限定符原生字符串边界字符 概念 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个…...

Cocos Creator 3.8.x报错:5302
在小游戏加载某个bundle后,如果报以下错误: 5302:Can not find class %s 说明bundle中某个预制件*.prefab引用了未加载的bundle的资源。 解决方法有两个: 1、将引用的资源移到预制件*.prefab相同的bundle下; 2、将…...

网页如何集成各社区征文活动
Helllo , 我是小恒 由于我需要腾讯云社区,稀土掘金以及CSDN的征文活动RSS,找了一下没发现,所以使用GET 请求接口对网页定时进行拉取清洗,甚至无意间做了一个简单的json格式API 最终网址:hub.liheng.work API:http://hub.liheng.wo…...

【知识碎片】2024_05_13
本文记录了两道代码题【自除数】和【除自身以外数组的乘积】(利用了前缀积和后缀积,值得再看),第二部分记录了关于指针数组和逗号表达式的两道选择题。 每日代码 自除数 . - 力扣(LeetCode) /*** Note: T…...