- 博客(28)
- 资源 (2)
- 收藏
- 关注
原创 开源大模型推理GPU资源评估以及优化
随着大模型的火热很多项目中都使用到了开源大模型,这时候准确评估大模型的GPU资源非常重要,主要有下面几个方面:GPU是昂贵的资源。高估内存需求可能导致在硬件上的不必要支出,而低估则可能导致系统故障或性能下降。:适当的内存管理确保模型高效运行,能够更快地响应用户并处理更多并发请求。:随着需求的增长,理解内存需求对于在不牺牲性能或产生高昂成本的情况下扩展服务至关重要。尽管其重要性显而易见,但计算用于服务大型语言模型(LLM)的GPU内存并不简单。
2024-10-09 08:57:01 1341
原创 深入解析开源大模型的GPU资源需求与优化策略
随着大模型的火热很多项目中都使用到了开源大模型,这时候准确评估大模型的GPU资源非常重要,主要有下面几个方面:GPU是昂贵的资源。高估内存需求可能导致在硬件上的不必要支出,而低估则可能导致系统故障或性能下降。:适当的内存管理确保模型高效运行,能够更快地响应用户并处理更多并发请求。:随着需求的增长,理解内存需求对于在不牺牲性能或产生高昂成本的情况下扩展服务至关重要。尽管其重要性显而易见,但计算用于服务大型语言模型(LLM)的GPU内存并不简单。
2024-10-02 14:59:05 1208
原创 使用 BentoML快速实现Llama-3推理服务
本教程手把手的演示了一遍怎么快速的使用一个开源大模型进行推理,通过使用BentoML这一强大的工具。BentoML不仅简化了模型部署过程,还提供了便捷的API接口,使得开发者能够轻松地将大模型集成到各种应用场景中。这种快速部署和使用的方法,为大模型的广泛应用铺平了道路,让更多人能够享受到人工智能带来的便利。然而,尽管BentoML大大简化了大模型的部署和使用流程,我们仍需要注意一些关键点。首先,选择合适的硬件资源至关重要,这直接影响到模型的运行效率和响应速度。
2024-09-08 20:37:05 1321 1
原创 利用大模型实时提取和检索多模态数据探索-利用 Indexify 进行文档分析
Indexify 是一个开源的导入和提取引擎,旨在为实时 LLM 应用提供支持。它能够以极低的延迟从非结构化来源进行实时数据提取。它还支持可应用于各种用例的多模态提取工作流程,包括从文档中提取实体和嵌入、音频转录、摘要以及从图像甚至视频中检测对象。它还支持高效地索引、存储和检索数据,使其成为可扩展实时 RAG 系统的工具。
2024-09-05 21:22:32 1082
原创 如何使用查询路由构建更先进的 RAG
目前大部分RAG的实践方案都是通过检索模型从外部数据库中获取与输入相关的文档或信息;然后,将这些信息与输入结合,输入到生成模型中进行文本生成。这种方案往往会有一个问题就是所有的数据都存储在一起,但这往往是没法在生产实践的,一般情况下单个prompt无法处理所有情况,单个数据源也可能无法适合所有数据。比如这个问题:假设现在需要构建一个聊天机器人来回答员工有关管理的问题,例如工资或绩效相关的问题。如果查询涉及员工福利、绩效评估、休假政策或任何与人力资源直接相关的主题,我们需要将查询路由到 HR 向量数据库。
2024-08-24 23:24:18 796 1
原创 为 LLM 提供服务需要多少 GPU 内存?
模型服务是将经过训练的机器学习模型部署到生产中的过程,以便它可以用于对新数据进行预测。在大型语言模型 (LLM) 的背景下,模型服务是指使 LLM 可根据用户输入回答问题、生成文本或执行其他任务。服务 = 提示输入,应答输出。
2024-08-16 16:26:37 1045
原创 使用Spring AI 、 Qdrant 和 Ollama 实现完全本私有化的RAG应用
图片中所描绘的架构代表了一种处理和分析复杂文档(如调研报告、财务报告等)的复杂方法。用户首先通过一个称为 /load 的 API 上传文档,然后使用另一个称为 /ask 的 API 向系统提问。这表明这是一个交互式系统,初始动作是文档上传,随后是查询过程,使用户能够从上传的文档中提取有意义的信息。此架构的核心是 “Spring AI”,当用户上传文档时,Spring AI 接收解析并分析文本。它将复杂文档的内容转化为一种结构化形式,使其适合于高级数据处理技术。
2024-08-06 23:55:54 1380
原创 使用大型语言模型进行文档解析
此处定义了上述每个属性,其中包含要包含的信息及其格式策略的具体详细信息。例如,多年来,正则表达式一直是我解析文档的首选工具,我相信对于许多技术人员和行业也是如此。尽管正则表达式在某些情况下非常强大,但它们常常在面对真实世界文档的复杂性和多样性时缺少灵活性。另一方面,大型语言模型提供了一种更强大、更灵活的方法来处理多种类型的文档结构和内容类型。
2024-07-30 23:17:36 1259 1
原创 3个最流行的开源大模型网络爬虫框架
在传统网络爬虫中,主要的挑战一直是手动操作的工作量。使用像 Beautiful Soup(BS4)和 Selenium 这样的工具时,我们需要为每个新网站编写解析代码,需要适配和适应不同的 HTML 结构。这种不断的修改既耗时又容易出错。然而,当出现了大模型之后就没那么复杂了。随着具备视觉功能的大型语言模型(LLM)的出现,我们现在可以创建几乎通用的网络爬虫代理,大大简化和自动化了这一过程。在这篇博客中,我们的主要关注点是探讨三种强大的工具:ScrapeGraph、FireCrawl 和 AgentQL。
2024-06-23 17:39:42 3493
原创 LangFlow VS Flowise 选择合适的低代码AI框架
LangFlow注重提供直观的可视化工作流设计、强大的自动化功能和灵活的插件扩展。其详细的文档和活跃的社区支持使用户可以快速上手并深入使用。Flowise强调简洁的用户界面、预构建的集成模块和详细的日志监控功能。其模块化架构和丰富的自定义脚本支持提供了极大的灵活性和扩展性。Flowise 与 LangFlow 的技术差异Agents功能比较CSV Agent: 从CSV文件中检索和操作数据。JSON Agent: 支持JSON数据的提取、转换和操作。
2024-06-18 13:44:33 2037
原创 什么是 Spring AI 以及如何使用它
什么是 Spring AI 以及如何使用它SpringAI 是一个强大的工具,可以帮助 Java 应用程序开发人员以与平台无关的方式使用 LLM。SpringAI 是一个强大的工具,可以帮助 Java 应用程序开发人员以与平台无关的方式使用 LLM。下面我会介绍怎么使用它。全世界的开发者都在研究人工智能如何增强其应用程序。在本文中,我将介绍一个新的 Spring 项目,该项目为 Java 开发人员提供了方便的 API 抽象,以便使用 ChatGPT 等大型语言模型 (LLM)。
2024-06-14 13:47:22 1265 1
原创 LlamaIndex 或 LangChain,哪个更适合作为RAG框架?
无论是公司数据的定制问答聊天机器人、内部分析工具,还是与数据源协作的AI助手,LangChain 内置的链机制帮助开发者将其他工具集成到LLM应用程序中,并将它们链接在一起,从而构建一个更全面的系统。LangChain 利用一个链机制,这种机制实际上是一长串的请求序列,这些请求被发送到LLMs以及其他集成的工具中,其中一个步骤的输出被前推,成为下一个步骤的输入。虽然你的数据是专有的,但可以将其索引为嵌入向量,这些向量在大规模上对最先进的LLMs而言是可以理解的,从而消除了重新训练模型的需求。
2024-06-11 12:54:51 1406
原创 介绍几个热门的文生图开源模型
Openjourney是一个免费的开源文本到图像模型,它生成的AI艺术风格类似于Midjourney,因为它是在超过12.4万张Midjourney v4图像的数据集上进行训练的。该模型是在广泛的laion-aesthetics v2 5+数据集上进行训练的,并且在512×512像素的分辨率下进行了595,000次的微调,因此具有根据任何给定文本输入生成高度逼真图像的卓越能力。通过在大型图像数据集上的训练,该模型对图像特征有了更深入的理解,从而生成出更加栩栩如生的图像。
2024-06-07 12:03:47 1700
原创 用 Unsloth 微调 LLaMA 3 8B
今年4月份,Meta 公司发布了功能强大的大型语言模型(LLM)Llama-3,为从事各种 NLP 任务的开发人员提供了功能强大可以在普通机器上运行的开源LLM。然而,传统的 LLM 微调过程既耗时又耗费资源。但是,Unsloth 的出现改变了这一局面,大大加快了 Llama-3 的微调速度。本文将探讨 Unsloth 如何帮助您以极高的速度和效率,根据具体需求对 Llama-3 进行微调。我们将深入探讨 Unsloth 的优势,并提供 Llama-3 微调流程的流程指南。
2024-06-07 11:40:16 2636
原创 线程的基本原理
早期操作系统没有线程只有进程。由于技术进步以及计算机技术的发展,cpu的性能突飞猛进,从20MHz发展到了2GHz以上,从单核CPU发展到了多核CPU,性能提升了上千倍。为了充分发挥cpu的性能、提升资源利用率同时为了解决进程笨重的调度问题于是就演进出了进程内部调度方式-线程。线程是指“进程代码段”的一次顺序执行流程。线程是CPU调度的最小单位。一个进程可以有一个或多个线程,各个线程之间共享进程的内存空间、系统资源,进程仍然是操作系统资源分配的最小单位。拿java程序作为参考,启动一个java进程需要启动多
2022-07-07 20:48:02 1140 1
原创 进程的基本原理
在计算机中,CPU是核心的硬件资源,承担了所有的计算任务;内存资源承担了运行时数据的保存任务;外存资源(硬盘等)承担了数据外部永久存储的任务。其中,计算任务的调度、资源的分配由操作系统来统领。应用程序以进程的形式运行于操作系统之上,享受操作系统提供的服务。一个进程由程序段、数据段和进程控制块三部分组成。进程的描述信息主要包括:进程ID和进程名称,进程ID是唯一的,代表进程的身份;进程状态,比如运行、就绪、阻塞;进程优先级,是进程调度的重要依据。进程的调度信息主要包括:程序起始地址,程序的第一行指令的内存地址
2022-07-05 20:30:32 656
转载 阿里巴巴开源 Sentinel 进一步完善 Dubbo 生态【转载】
近日,阿里巴巴中间件团队宣布开源 Sentinel,并发布了首个社区版本v0.1.0。Sentinel 作为阿里巴巴“大中台、小前台”架构中的基础模块,覆盖了阿里的所有核心场景,因此积累了大量的流量归整场景以及生产实践。Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。Sentinel 的功能如下:➤ 限流:当我们设计了一个函数,...
2018-08-22 21:36:07 286
转载 编码发展史
转载至:http://blog.csdn.net/dk_0520/article/details/70157426(ANSI、GBK、GB2312、UTF-8、GB18030和 UNICODE)编码一直是让新手头疼的问题,特别是 GBK、GB2312、UTF-8 这三个比较常见的网页编码的区别,更是让许多新手晕头转向,怎么解释也解释不清楚。但是编码又是那么重要,特别在网页这一块。如果你打出来的不是...
2018-03-16 12:28:10 5506
转载 自己手写一个 SpringMVC 框架
转载:https://mp.weixin.qq.com/s/_eZ4277o3nslSRZ7Q9kIDQ前端框架很多,但没有一个框架称霸,后端框架现在Spring已经完成大一统.所以学习Spring是Java程序员的必修课.Spring 框架对于 Java 后端程序员来说再熟悉不过了,以前只知道它用的反射实现的,但了解之后才知道有很多巧妙的设计在里面。如果不看 Spring 的源码,你将会失去一次...
2018-03-14 14:04:59 313
原创 spring加载自定义命名空间【springmvc的【mvc:annotation-driven】配置】
spring加载自定义命名空间具体步骤:1、通过xml命名空间找到具体的解析处理器2、根据localName定位到具体的解析器3、解析具体的xml生成beandefinition注册到spring容器中主要配置文件和类:META-INF/spring.handlersMETA-INF/spring.schemasNamespaceHandlerBeanDefinitionParser*.xsd==...
2018-03-03 17:16:40 1037
原创 jvm学习笔记
java内存分为:方法区,堆,本地方法栈,虚拟机栈,程序计数器虚拟机栈中的局部变量表存储的都是基本类型还有对象的应用,局部变量表在编译结束后就确定大小了。本地方法栈中的语言,使用方式和数据结构没有明确规定。其他和虚拟机栈并无二致java堆,分代收集。方法区,存储已被虚拟机加载的类信息,常量,静态变量。运行时常量池是方法区一部分,Cla
2017-11-04 14:18:36 339
转载 dubbo源码分析之发布
服务发布-原理第一个发布的动作:暴露本地服务Export dubbo service com.alibaba.dubbo.demo.DemoService to local registry, dubbo version: 2.0.0, current host: 127.0.0.1第二个发布动作:暴露远程服务Export dubbo service com.alibaba.dub
2017-10-12 23:07:06 428
原创 【Spring Cloud学习】服务消费者
Spring cloud的服务消费端主要使用到了Spring cloud Ribbon作为负载均衡,服务消费端主要实现两个目标,发现以及消费服务。其中发现服务由Eureka实现,消费服务由Riboon实现。下面是一个Demo实例供大家学习参考。(1)引入eureka和ribbon包 org.springframework.cloud spring-cloud
2017-07-02 13:55:20 419
原创 【Spring Cloud学习】 像服务注册中心上注册服务
服务注册中心搭建好之后需要将服务注册上去,这样客户端就可以调用该服务了。下面简单的通过一个简单的例子说明怎么将服务注册到服务注册中心中。(1)pom.xml中增加对eurekaClient的依赖 org.springframework.cloud spring-cloud-starter-eureka (2)项目启动类上增加注解@Spri
2017-07-01 20:58:38 881
原创 【Spring Cloud学习】 搭建简单的服务注册中心Spring cloud Eureka
Spring Cloud Eureka对Netflix Eurkeka 进行了二次封装。以前调用一个服务必须知道该服务的ip地址端口和通信协议等一系列的信息,当系统不是太大服务个数不是很多的情况下维护起来不是问题,但是当服务数量达到一定数量级时维护成本将会变得很大,在微服务架构下尤其如此。在这种情况下诞生了Spring Cloud Eureka这么一个东西,下面就用一个简单的demo介绍下eure
2017-07-01 20:21:27 819
原创 【Spring学习笔记】Spring Aop细说
AOP(Aspect Oriented Programming)面向切面编程概述AOP(Aspect Oriented Programming)面向切面编程是Spring为了降低代码耦合度而设计的一种方式。我们在实际应用中主要是为了打印日志、业务拦截器、统计业务数据等。细说Spring AopAop中有很多的专有名词,切面(Aspect),通知(Advice),连接点(Jo
2017-06-12 18:27:27 385
原创 【Spring学习笔记】基于profile的高级装配
日常工作中有时候我们会面临一些问题,需要将代码在不同环境之前来回切换,比如在开发环境可以使用嵌入式数据库Hypersonic,这个在开发环境再适合不过了,但是要将他放在生产则就是行不通了。这个时候Spring提供的profile就可以发挥作用了。下面是我的一个小demo:package com.example.readingli.db;import javax.sql.DataSo
2017-06-10 15:40:12 392
原创 【Spring学习笔记】依赖注入
每个java项目都是由很多的java类组成,细粒度到每个功能点都是由这些java类协同完成。静/动态代理技术在Spring依赖注入前工程师们为了降低代码耦合度试了很多的办法,其中被广泛使用的技术就是静/动态代理技术,这里就不做详细介绍。静态与动态代理Spring依赖注入为了降低代码耦合度Spring引入了依赖注入技术,为了使java类协同作业需要Spring知道这些
2017-06-10 13:24:42 367
大数据入门ppt
2016-02-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人