自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1578)
  • 资源 (4)
  • 收藏
  • 关注

原创 LLM(十八):LLM 的推理优化技术纵览

目录收起一、子图融合(subgraph fusion)二、模型压缩(Model Compression)2.1 稀疏(Sparsity)2.2 量化(Quantization)2.3 蒸馏(Distillation)2.4 MoE三、并行化(Parallelism)3.1 数据并行 (Data Parallelism, DP)3.2 张量并行(Tensor Parallelism, TP)3.3 流水线并行(Pipeline Parallelism, PP)

2024-04-19 18:36:01 512

原创 KV Cache 技术分析

LLM(大型语言模型)中的 Attention 机制中的 KV Cache(键值缓存)主要作用是存储键值对,以避免在每次生成 token 时重新计算键值向量,从而减少计算量和提高效率。利用预先计算好的 K 值和 V 值,可以节省大量计算时间,尽管这会占用一定的存储空间。随着模型规模的增大和数据量的增加,LLM 的窗口长度也在不断增大,因此就出现一组主要矛盾,即:对不断增长的 LLM 的窗口长度的需要与有限的 GPU 显存之间的矛盾。

2024-04-19 08:07:39 674

原创 前沿论文 | LLM推理性能优化最佳实践

当batch size为1时,4xA100-40GB GPU对应的MBU为55%,而2xH100- 80GB GPU上可以实现更高的MBU,达到60%(如图2所示)。曲线上的每一条线都是通过将batch size从1增加到256得到的,有助于确定在不同的延迟限制条件下,我们可以使用的batch size。有些服务器在所有GPU之间都是高带宽连接,而有些服务器的GPU是成对的,之间的通信带宽较低。此外,在下一次token生成的迭代过程中,新的KV项会被添加到现有的缓存中,使缓存随着新token的生成而增大。

2024-04-19 07:43:52 618

原创 大模型推理百倍加速之KV cache篇

KV cache对应的优化方法,总结成下表:由上表可以看出,KV cache是个值得投入精力去研究的一个重要方向,算法上有着许多未知的方法可以去探索,工程上相对滞后,至少在主流推理框架上对部分方向的优化策略相对保守,这就给了足够多的机会。

2024-04-19 07:34:16 374

原创 Transformer推理性能优化技术很重要的一个就是K V cache,能否通俗分析,可以结合代码?

KV cache对应的优化方法,总结成下表:​由上表可以看出,KV cache是个值得投入精力去研究的一个重要方向,算法上有着许多未知的方法可以去探索,工程上相对滞后,至少在主流推理框架上对部分方向的优化策略相对保守,这就给了足够多的机会。

2024-04-19 07:25:26 386

原创 AIGC教育行业全景报告:AI助教和家教成真,学习机迎来新机遇

AI以一种新的形式——Agent,融入到教师和学生的日常中,在提供教、学帮助的基础上,改变二者的学习和工作状态。生成式AI将我们带入AI2.0时代,通过海量数据的学习,AI开始出现涌现能力,所生成的答案以一种更符合人类沟通的方式呈现,并且能够一定程度上激发人的思辨意识。而到了脑机时代,AI智能体与人类的交互将更加深入,AI智能体对人类的意图理解及状态分析都将更准确,并且能够对有学习障碍的人群进行干预,人机共融将达到新的高度。在工具使用上,AI智能体降低了教师的学习成本,为其提供几乎零门槛的使用方式。

2024-04-16 22:02:30 1082

原创 AutoGen - Build Powerful AI Agents with ChatGPT/GPT-4

【代码】AutoGen - Build Powerful AI Agents with ChatGPT/GPT-4。

2024-04-14 20:17:54 890

原创 vllm 参数介绍

一个重要参数enable-prefix-caching 特殊场景会提高很大性能。详细建视频:https://www.toutiao.com/video/7355331984845734435/?channel=&source=search_tabBelow, you can find an explanation of every engine argument for vLLM:--model Name or path of the huggingface mode

2024-04-12 19:01:53 987

原创 Uniapp从零开始,手把手教学(附精选源码32套,涵盖商城团购等)

如果是刚入门小程序的,又或者刚听到这个名词的人,可能跟我之前一样,带着诸多的疑惑。比如:什么是uniapp?它和原生微信小程序有什么异同之处?为什么推荐uniapp开发?这里一句话两句话解释了可能还是云里雾里的。我的建议是看看下面这个视频,个人觉得讲的很清楚明白。开发微信小程序使用原生开发还是uniapp开发,详细介绍原生小程序与uni-app开发的优缺点_哔哩哔哩_bilibili页面文件遵循Vue单文件组件规范组件标签靠近小程序规范,详细见uni-app组件规范。

2024-04-12 08:00:17 1029

原创 AI Kimi:帮助教师做好试卷命题

最近,Kimichat工具很火。这款软件不仅仅是一个聊天和阅读工具,还是一个强大的教学辅助工具。作为一位教师,尝试使用Kimichat,发现它在命题方面有着出色的表现,让我深感惊喜。Kimichat为教师可以轻松指定题型、题量以及难度,无论是选择题、填空题还是简答题,都能迅速生成。这一功能极大地减轻了教师的备课压力,使他们能够更专注于教学内容的策划和教学方法的创新。它不仅能生成题目,还能自动生成对应的答案。特别是Kimichat还能完成面命题细目表的生成。

2024-04-04 23:14:46 441

原创 Whisper对于中文语音识别与转写中文文本优化的实践(Python3.10)

Whisper开源模型通过transformers的微调,可以将预训练模型应用于特定的中文NLP任务,从而提高模型在该任务上的性能。微调使模型能够学习适应特定任务的特征和模式,从而实现更好的效果。发布于 2024-01-25 14:30・IP 属地北京。

2024-04-03 17:24:06 1610 1

原创 最近,00后小伙用AI技术和奶奶实现「对话」,数字生命要成为现实了吗?

在自述中他也提到,奶奶在大年初六去世,最后的几天里奶奶意识模糊,而UP主也没有好好的和奶奶告别。而如今,随着AI技术和数字虚拟人技术的不断发展,让已故的亲人变成虚拟的数字人继续和我们交谈不再是停留在科幻小说中的情节。奶奶的头像也是一样,AI根据上传的图片与文字描述生成了一些选择,而UP主再根据脑海中的回忆挑选一张最逼真的。无论ta是谁,在我们的回忆中永远有他们的一席之地,他们一辈子都会在我们心底最柔软的角落驻留。有意思的是,奶奶的这些「回复」是UP主借助时下大热的ChatGPT生成的。

2024-04-01 11:50:27 567

原创 pytorch剪枝

在这篇文章中,我将向你介绍如何在PyTorch中实现模型剪枝。剪枝是一种优化模型的技术,可以帮助减少模型的大小和计算量,同时保持模型的准确性。我将为你提供一个详细的步骤指南,并指导你如何在每个步骤中使用适当的PyTorch代码。接下来,我们需要定义一个剪枝算法,这里我们以Global Magnitude Pruning(全局幅度剪枝)为例。# 定义剪枝比例# 对模型的全连接层进行剪枝1.2.3.4.5.6.7.8.9.10.

2024-04-01 11:19:07 643

原创 FastAPI 如何在FastAPI中返回图片

FastAPI是一个基于Python的现代、快速(高性能)、基于标准的Web框架,用于构建API。它是一个非常流行的框架,因为它具有出色的性能和易于使用的特性。FastAPI具有自动化的请求和响应验证,并能够通过使用异步请求处理和响应,从而提供高速的数据传输。现在,让我们来看一下如何在FastAPI中返回图片。在本文中,我们介绍了如何在FastAPI中返回图片。通过使用Response类和适当的MIME类型,我们可以轻松地返回包含图片的响应。快速和简便的图像传输是使用FastAPI构建API的一大优势之一。

2024-04-01 10:12:49 456

原创 不写代码也能年薪百万?Prompt+低代码开发实战

基本原则:langchain 是一个非常好用的框架,能够帮助我们快速构建基于大模型的应用程序。它提供了很多工具、组件和接口。对于前端来讲甚至可以把它类比成 lodash/jquery 一样的基础库。langchain 的模块大致如上所示,简单介绍一下就是:我们可以看下如何使用 langchain 快速搭建一个基于 GPT 的爬虫应用:结果如下:可以看到,我们结合 langchain + 简单的 prompt 就完成了一个爬虫的编写。

2024-03-31 07:22:03 1179

原创 实时的软件生成 —— Prompt 编程打通低代码的最后一公里?

实现实时软件生成的一种方式是 Prompt 编程,可以将自然语言转化为直接运行的软件,而无需生成中间的一次性过渡代码。Prompt 编程是实现实时软件生成的一种方式,可以将自然语言转化为直接运行的软件,而无需生成中间的一次性过渡代码。ChatGPT 可以为我们生成这部分的程序!值得注意的是,在简单的问题下,只要我们给定了示例,那么 AI 就会根据示例去计算输入和输出,不关注中间的处理逻辑。而在复杂的场景之下,Prompt 编写需要足够的形式化,才能让机器理解,也因此,我才把它称为 Prompt 编程。

2024-03-31 07:20:35 730

原创 您现在可以在家训练 70b 语言模型

我们认为,如果我们可以使用 QLoRA 将模型的大小减少大约 400%(因此 70b 模型将适合 35GB RAM),然后我们使用 FSDP 将其分片到两个或更多 24GB 消费卡上,那么就剩下剩余足够的 RAM 来训练模型。项目,这是他发现的最完整的 FSDP 微调实现,并密切跟踪它如何与 BitsandBytes 以及 Hugging Face 的 PEFT、Transformers 和 Accelerate 项目一起工作,他设法构建了一个最小的独立脚本,手动完成微调模型所需的所有步骤。

2024-03-30 21:03:55 1342

原创 伯克利大模型排名

网站: https://arena.lmsys.org/

2024-03-26 16:06:50 173

原创 LangGraph 入门与实战

工具的定义,可以参考这篇文章,写的比较详细了,比较方便的就是使用 tools 这个注解。雨飞:使用智普清言的Tools功能实现ToolAgentLangGraph 中最基础的类型是 StatefulGraph,这种图就会在每一个Node之间传递不同的状态信息。然后每一个节点会根据自己定义的逻辑去更新这个状态信息。具体来说,可以继承 TypeDict 这个类去定义状态,下图我们就定义了有四个变量的信息。input:这是输入字符串,代表用户的主要请求。

2024-03-25 17:00:14 673 1

原创 编程的未来 — 使用 LangGraph 的多智能体LLM框架

连接:编程的未来 — 使用 LangGraph 的多智能体LLM框架-CSDN博客

2024-03-25 10:37:36 195

原创 chatgpt How to call functions with chat models

This notebook covers how to use the Chat Completions API in combination with external functions to extend the capabilities of GPT models. is an optional parameter in the Chat Completion API which can be used to provide function specifications. The purpose

2024-03-07 17:19:55 1187

原创 OpenAI要为GPT-4解决数学问题了:奖励模型指错,解题水平达到新高度

对于正确的解决方案,两种方法提供的信息相同,因为每一步都是正确的解题方法。对于每个数据集,OpenAI 提供三种形式的监督:来自 PRM_large 的过程监督,来自 PRM_large 的结果监督以及来自最终答案检查的结果监督。为了更好的比较结果监督和过程监督,首先需要注意的是 ORM 和 PRM 的训练集不具有直接可比性,PRM 训练集是使用主动学习构建的,偏向于答案错误的解决方案,还比 ORM 训练集少一个数量级。图 2 为同一个问题的 2 种解决方案,左边的答案是正确的,右边的答案是错误的。

2024-02-28 22:55:57 988

原创 Prompt 编程的优化技巧

我们使用官方的 ChatGPT 的网页进行多次对话时,很少出现超出 GPT上下文的错误提示,是因为官方的 ChatGPT 会将相对较老的上下文清理掉,从而避免超 GPT 上下文限制的情况发生,这其实也是一种精简 GPT 上下文的思路。OpenAI 按照传入的上下文 + 最新回复的信息总和,然后折算成 Token 计费,所以上下文越多计费越贵,并且成逐步上涨的趋势(因为多轮会话中,上下文会越来越大),所以节省上下文实际上就是节省费用。”,可以缩短 GPT回复的字数,从而减少 Token 消耗。

2024-02-26 18:58:54 1532

原创 大语言模型推理加速技术:计算加速篇

其中Q,K,V是模型的三个矩阵。context phase也叫prefill phase:需要计算整个prompt的自注意力,q_input, k_input, v_input大小都为[seq_len, emb_dim],即整个prompt的embedding,context phase只需要进行一次,生成第一个token。

2024-02-26 09:25:16 1177

原创 大语言模型推理加速技术:模型压缩篇

本篇介绍左边蓝色的部分,右边绿色的部分在上篇文章在上一篇文章中我们介绍了不改变模型结构的条件下,加速模型推理的技术,即让模型“算得更快”。而这篇文章将介绍模型压缩的技术,即让模型“算得更少”。量化(Quantization):使用低精度(≤16位)存储模型权重。精简Attention:通过一些变种的Attention算法减少模型计算量。除此之外还有“投机采样”这种巧妙的采样方法也可以视为对大模型的压缩。而传统的几个压缩方法比如知识蒸馏和剪枝。

2024-02-26 09:22:21 1326

原创 微信公众号集成文心一言API

在Python环境 ≥ 3.8的情况下,你可以使用以下命令来安装这些库: pip install erniebot flask gevent 如果你在安装过程中遇到任何问题,或者需要更具体的帮助,欢迎随时向我询问。集成文心一言API:将文心一言API集成到你的微信公众号中,需要在Flask应用中实现一个或多个函数来与文心一言API进行交互。如果不匹配,将返回错误消息。总的来说,使用Python语言和Flask技术来集成微信公众号与文心一言API是一个相对复杂的过程,需要具备一定的编程和Web开发经验。

2024-02-19 08:01:48 1292

原创 读懂 FastChat 大模型部署源码所需的异步编程基础

FastChat 是 2023 年非常知名的一个大语言模型项目,该项目不仅提供了大语言模型全量参数微调、Lora参数微调、模型推断、模型量化、模型部署及调度等全套的源代码,而且还开源了他们基于 LLaMA2 底座进行指令微调的一系列 Vicuna 模型权重,因此非常适合学习和使用。就 FastChat 模型部署部分而言,它分为三个部分:controller、worker、api_server。这三个服务使用 FastAPI + Uvicorn 的方式构建,都是单线程程序,且各自都支持并发。

2024-02-07 22:11:08 1370

原创 我的PyTorch模型比内存还大,怎么训练呀?

随着深度学习的飞速发展,模型越来越臃肿,哦不,先进,运行SOTA模型的主要困难之一就是怎么把它塞到 GPU 上,毕竟,你无法训练一个设备装不下的模型。改善这个问题的技术有很多种,例如,分布式训练和混合精度训练。本文将介绍另一种技术: 梯度检查点(gradient checkpointing)。简单的说,梯度检查点的工作原理是在反向时重新计算深层神经网络的中间值(而通常情况是在前向时存储的)。这个策略是用时间(重新计算这些值两次的时间成本)来换空间(提前存储这些值的内存成本)。

2024-02-07 08:02:46 941

原创 PyTorch 2.2大更新!集成FlashAttention-2,性能提升2倍

PyTorch 2.2将FlashAttention内核更新到了v2版本,不过需要注意的是,之前的Flash Attention内核具有Windows实现,Windows用户可以强制使用sdp_kernel,仅启用Flash Attention的上下文管理器。FlashAttention-2调整了算法以减少非matmul的计算量,同时提升了Attention计算的并行性(即使是单个头,也可以跨不同的线程块,以增加占用率),在每个线程块中,优化warps之间的工作分配,以减少通过共享内存的通信。

2024-02-07 07:52:42 1947

原创 大语言模型量化方法对比:GPTQ、GGUF、AWQ

在过去的一年里,大型语言模型(llm)有了飞速的发展,在本文中,我们将探讨几种(量化)的方式,除此以外,还会介绍分片及不同的保存和压缩策略。说明:每次加载LLM示例后,建议清除缓存,以防止出现OutOfMemory错误。如果在jupyter中无法释放显存,请重启这个jupyter notebook。

2024-02-01 21:55:00 1662

原创 LM Studio-简化安装和使用开源大模型 | OpenAI API 文字转语音本地运行程序分享

这样既节省了调用API的成本,又能发挥大模型的强大能力。,最近用上了LM Studio,对比Ollama,LM Studio还支持Win端,支持的模型更多,客户端本身就可以多轮对话,而且还支持启动类似OpenAI的API的本地HTTP服务器。实测,dolphin-2.6-mistral 7B模型在我Mac M1 Max 32G的电脑上运行速度很快,生成质量不错,而且dolphin是可以生成NSFW内容的。也就是说,如果你之前做过一些应用,用的是OpenAI API的模型,那现在可以非常方便转成本地模型。

2024-02-01 11:01:38 2433

原创 动手学RAG:汽车知识问答

在自然语言处理领域,大型语言模型(LLM)如GPT-3、BERT等已经取得了显著的进展,它们能够生成连贯、自然的文本,回答问题,并执行其他复杂的语言任务。然而,这些模型存在一些固有的局限性,如“模型幻觉问题”、“时效性问题”和“数据安全问题”。为了克服这些限制,检索增强生成(RAG)技术应运而生。RAG技术结合了大型语言模型的强大生成能力和检索系统的精确性。它允许模型在生成文本时,从外部知识库中检索相关信息,从而提高生成内容的准确性、相关性和时效性。

2024-01-29 14:34:34 1409

原创 最高20倍!压缩ChatGPT等模型文本提示,极大节省AI算力

同时,也与其他提示压缩方法进行了对比,如基于困惑度的LLMLingua和基于检索的方法,评估了LongLLMLingua的有效性。工作原理是,利用源文本、压缩文本、生成文本之间的子序列关系,从生成结果中恢复完整的关键名词词组,修复压缩带来的信息缺失,提高结果的准确性。通过利用粗粒度压缩模块计算出的各段落与问题的关联度,对段落进行排序,使关联度最高的段落排在最前面。关联度最高的段落压缩比率最低,依次类推。对更相关的段落使用更低的压缩比率,分配更多的保留词语预算,而对相关性较弱的段落则使用更高的压缩比率。

2024-01-28 11:09:50 1001

原创 体验 AutoGen Studio - 微软推出的友好多智能体协作框架

1. AutoGen和AutoGen Studio都是微软研究团队开发的工具,用于创建和管理AI智能体。AutoGen提供底层框架,AutoGen Studio提供直观的用户界面。2. AutoGen Studio的主要特性包括定义和修改智能体、与智能体互动、增加技能、发布会话等。3. 与CrewAI和MetaGPT相比,AutoGen Studio提供了可视化界面,对新手更友好。4. AutoGen Studio可应用于文档管理、客户服务、数据分析、教育培训、创意内容生成等场景,助力任务自动化。

2024-01-27 21:18:27 1676

原创 使用 OpenLLM 构建和部署大模型应用

需要注意的是,内存不是连续的,因此需要一个 block table 来存储内存的物理位置和实际序号的映射关系,使得在大模型中看起来是获得了一个逻辑上连续的内存。然而,由于输入可能存在重复计算,例如在输入"我是一只"后,模型返回"我是一只猫",在输入"我是一只猫"时,又返回"我是一只猫,",这导致了 Transformer 框架中有许多重复的计算。此外,在 BentoCloud 上,可以指定扩容的方式,可以分别为 API 指定需要扩容的节点数,或者为每个 runner 指定需要的 GPU 数量或实例数。

2024-01-20 14:46:06 1015

原创 L40S解析,同是AD102核心为什么强于A800(A100)近2成性能

一、L40S解析一个朋友测试测试了4张4090和1张l40,性能。发现l40 性能训练大模型性价比超高。我就找了类似文章看看,分享一下。一、L40S解析一张硬件上比较平平无奇,但是性能与售价又惊为天人的显卡引起了我的注意。由于是未发售的企业级显卡因此只能用已有公开媒体数据做个推测。L40S,一张OEM渠道拿货就近1w美刀的被动散热卡,无NVLINK,无PCIE5.0,无HBM3显存,只有一块和4090同样的AD102核心配上几乎没眼看的GDDR6(ECC)显存。

2024-01-19 07:21:14 1227

原创 奥数能力金牌级:DeepMind几何推理模型alphageometry登上Nature,代码开源

过去针对基于证明的竞争问题的人工智能解决方案有时是碰巧的(输出有时是正确的,需要人工检查),而 AlphaGeometry 没有这个弱点:它的解决方案具有机器可验证的结构。一般的奥林匹克几何问题基于图表,需要添加新的几何结构才能解决,例如点、线或圆。在 AlphaGeometry 的研究上,DeepMind 从跨越 2000 年到 2022 年之间的 30 个奥林匹克几何问题(IMO-AG-30)的基准测试集中进行了测试,结果表明,AlphaGeometry 在比赛时间限制下能够解决 25 个问题。

2024-01-18 11:53:28 967

原创 语言大模型的分布式训练与高效微调指南

目录收起1 分布式训练2 ZeRO驱动的数据并行3 全分片数据并行4 实现5 高效微调6 实践指南7 关于DeepSpeed和FSDP的更多内容OneFlow编译翻译|杨婷、宛子琳最近语言大模型(LLM)异常火爆,一个非常特别的开源社区正在探索在消费级硬件上微调、提供服务和进行推理的最佳方式。为满足上述需求,出现了许多出色的开源代码库,以HuggingFace生态系统为中心,这些代码库还包括FastChat、Axolotl和LLama.cpp。本文专注于分布式训练策略的具体细节,特别是DeepSpeed和

2024-01-18 10:32:12 968

原创 创建大模型的新方法 - 配比两个模型

现在,创建大模型的新方法还可以使用配比两个模型- 正如炼金术巫师那样。工具1 medusa:Medusa 为 LLM 添加了额外的“头”,以同时预测多个未来代币。当使用 Medusa 增强模型时,原始模型保持不变,只有新的头部在训练过程中进行微调。在生成过程中,这些头每个都会为相应位置生成多个可能的单词。然后使用基于树的注意力机制组合和处理这些选项。最后,采用典型的接受方案从候选者中挑选最长的合理前缀以进行进一步解码。mergekit。

2024-01-14 09:50:41 1088

原创 安装、运行和控制AI apps在您的计算机上一键式

pinokio

2024-01-12 15:57:32 646 1

2007年下半年系统分析师下午试卷Ⅱ.doc

2007年下半年系统分析师下午试卷Ⅱ.doc

2007-11-21

2007年下半年系统分析师下午试卷Ⅰ.doc

2007年下半年系统分析师下午试卷Ⅰ.doc

2007-11-21

2007年下半年系统分析师上午试卷.doc

2007年下半年系统分析师上午试卷.doc

2007-11-21

2007年下半年系统分析师考试试题分析.doc

2007年下半年系统分析师考试试题分析.doc

2007-11-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除