- Java锁的逻辑(结合对象头和ObjectMonitor)
- 还在用饼状图?来瞧瞧这些炫酷的百分比可视化新图形(附代码实现)⛵
- 自动注册实体类到EntityFrameworkCore上下文,并适配ABP及ABPVNext
- 基于Sklearn机器学习代码实战
5月26日,2023数据基础设施技术峰会在苏州举办,腾讯云首席存储技术专家温涛受邀出席并分享了腾讯云领先的存储技术在AIGC场景中的应用,通过对AIGC业务流程和场景的提炼,从内容生成、内容审核和内容智理三要素介绍了如何智能的存储和管理数据。下面我们一起回顾下温涛的精彩分享.
从去年年底到今年年初,由新版本的ChatGPT发布开始,全球掀起了一股AIGC的话题狂潮。AIGC触发了内容生成的革命,也引爆了众多行业颠覆式的创新。人工智能突然就从高科技研究课题,演进为渗透到我们每个人生活中的商业产品.
AIGC是使用人工智能技术生成内容的工具,它包含了文本、音频、图像、视频的生成,以及这几者之间的跨模态生成。我认为AIGC的商业化落地节奏,大致可以分为三个阶段:
通用场景的应用落地 。
垂直行业的应用落地 。
创新型综合场景的应用落地 。
通用场景是基于单纯的文本、图片、音视频的AI生产内容技术,提供给设计、媒体、娱乐、客服咨询等没有太强行业属性的企业和个人,解决相对基础的AI市场需求。代表性的应用包括了ChatGPT和Midjourney。这个场景依赖的技术相对比较成熟,已经具有很多实际的商业化落地.
垂直行业是进一步把AIGC的能力和具体行业特点相结合,提供给强行业属性的企业,来提升技术和服务水平,提高行业生产效率。比如自动驾驶和医疗生物基因。这类应用目前还处于商业化前的基于预训练基础之上的Fine Tuning阶段,技术方面的问题基本上能够得到解决,商业模式也比较明确,商业化落地节奏属于正在进行时.
创新型综合场景所对应的行业,是比较新兴的具有前瞻性和实验性的场景,以机器人和元宇宙为代表。在这类场景,AIGC只是核心技术的一部分,还依赖硬件和商业模式等方案的创新。这类场景还处于技术储备和商业落地探索阶段。 目前腾讯云AIGC存储解决方案,聚焦在通用场景和垂直行业这两类AIGC应用的支持。尤其是在图片、音视频和自动驾驶领域有了很多尝试、验证和落地。 我们在实际项目中对AIGC业务处理流程进行了梳理。按照顺序,流程主要分为数据收集、数据预处理、特征工程、模型训练、应用推理这几个环节,也可以聚合为模型训练和应用推理两个阶段.
在实际的项目中,我们了解到客户对训练场景的存储能力有几个要求:
通过对业务流程和场景诉求的总结提炼,AIGC的核心要素,可以归结为内容生成、内容审核和内容智理三个要素。其中内容生成包括大模型训练和推理平台构建;内容审核包括对图片、文本和音视频等生成物的内容审核和数据处理;内容智理包括对生成物的内容分类、标注、内容特征的生产和查询...腾讯云在AIGC场景的存储解决方案,就是依据这三个核心要素来进行设计的。 接下来,我会围绕这三个核心要素,从数据存储与管理的角度,分别介绍腾讯云的解决之道。 内容生成之道 。
我们使用了数据湖存储来满足场景的要求,利用对象存储COS实现了通过一种存储类型,来满足各个环节对存储的需求,无需数据迁移,即可实现数据的统一接入,和数据的自由流动。同时利用数据加速器GooseFS的缓存加速能力,大幅度提升了数据处理和训练性能。使用COS+GooseFS的数据湖存储方案,也大大降低了AIGC系统的存储成本.
什么是GooseFS?
GooseFS是一种利用计算侧资源实现数据缓存加速的存储服务,适用于大数据分析、AI、HPC、基因测序、渲染等多种场景,配合COS对象存储,为客户提供低成本高性能的存储能力.
GooseFS有以下几个特点:
如何实现多级缓存加速?
面向不同的业务场景,会有不同的数据量和不同的性能要求。以AIGC场景为例,对于NLP和GPT场景,训练所需的数据量通常在10 100TB,所需的存储空间不大,但是IO模型属于每次字节级的读操作,对时延要求很高。使用GPU节点自带内存的剩余空间作为缓存的存储介质比较合适,不需要额外配置SSD。而对于ViT和Diffusion这类图片模型训练场景,数据量通常在100T 1PB,就不适合放在内存里,选用本地的SSD介质可以达到更优的性价比。对于需要长期存放的原始数据,就可以放在COS里做持久化,从而降低成本。通过GooseFS多级缓存加速机制,就能够精细化的满足各种不同场景的性能要求.
因为训练场景需要读取海量文件,就需要缓存系统支持对海量文件规模的管理能力。我们来看看GooseFS在水平和垂直两个方向分别是如何实现的。 水平方向上,也就是在跨节点方向上,GooseFS 采用分布式元数据架构,通过分布式KV管理元数据,元数据规模可以按需横向线性扩展。 垂直方向上,也就是在节点内部,GooseFS利用Numa绑核绑内存来部署KV进程,从而使单节点可以部署多个分布式KV进程.
通过上述两个方向上的技术,GooseFS可以支持管理百亿文件规模的元数据,满足单集群管理海量训练数据集的需求.
AIGC训练时到底能够支持多大的体量的文件数?如何保障存储系统性能?关键的点就是元数据管理.
GooseFS支持Master的多机并发读,元数据服务由一个Leader Master和若干Follower Master构成,Follower Master承载跟Leader一样的读流量,元数据QPS性能随着Master节点的数量呈线性增加。从而可以提供百万级QPS的元数据访问能力.
GooseFS也支持私有化部署,来构建混合云缓存方案。基于数据湖搭建混合云大模型训练平台,做到一份Dataset,多地训练。通过这个方案,在数据湖上保存一份数据,可以通过缓存的机制把数据带到任何计算相关的地点去.
除了数据加速以外,腾讯云面向AIGC训练场景提供了端到端的解决方案。基于腾讯云高性能计算集群HCC、TACO训练加速、TCCL网络加速、GooseFS数据加速,构建了AIGC大模型训练和推理应用平台。 存储方面,依靠COS的海量存储能力+GooseFS的数据加速能力,提供高性能低成本的存储,可为AI集群训练快速提供数据。 计算方面,高性能计算集群HCC通过自研服务器提供最新代次A800、H800实例。通过TACO Train加速套件,提供软硬件协同优化,支持训练性能提升30%以上。 网络方面,基于自研星脉网络架构,提供最高3.2Tbps RDMA网络,结合自研拥塞控制算法及TCCL集合通信库加速分布式训练通信效率。 内容审核之道 腾讯云数据万象CI基于深度学习的文本、图片、音视频检测技术,结合腾讯深耕内容领域积累的海量训练数据,可以精准高效识别出生成数据中的敏感信息。提供包括色情、涉政、暴恐、广告等多种合规问题的审核能力。对AIGC的输入和输出环节进行把控,帮助客户规避运营风险.
CI整合了腾讯多个前沿实验室的技术能力,包括了AI实验室的基础算法能量流、优图实验室的图像识别能力、多媒体实验室对编解码的研究,以及天御实验室的安全风控算法。同时具备腾讯多年在泛互行业的实践经验。此外CI还打造了无代码,0基础入门,无需下载,省时好用的智能处理工具-智能工具箱,降低技术接入门槛.
内容智理之道 。
AIGC存储解决方案复用了腾讯企业网盘的一些能力,可以对AI生成物提供权限划分、在线编辑、协同办公等企业化文件管理能力,助力终端用户和企业客户更好的对AI生成物进行管理,提升工作效率.
总结 。
腾讯云存储解决方案,围绕AIGC,提供了涵盖内容生成、内容审核和内容智理的全生命周期的数据存储与管理解决方案,很好的做到了高性能和低成本两个目标方向的兼顾,为基于海量数据的AI训练提供了坚实的存储与管理的数据底座.
最后此篇关于深度解读AIGC存储解决方案的文章就讲到这里了,如果你想了解更多关于深度解读AIGC存储解决方案的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我正在使用python 2.7 当我尝试在其上运行epsilon操作时出现此错误, 这是我的代码 import cv2 import numpy as np img = cv2.imread('img
1 很多程序员对互联网行业中广泛讨论的“35岁危机”表示不满,似乎所有的程序员都有着35岁的职业保质期。然而,随着AI技术的兴起,这场翻天覆地的技术革命正以更加残酷且直接的方式渗透到各行各业。程序员
我有一个包含多个子模块的项目,我想列出每个子模块的相对深度 该项目: main_project submodule1 submodule1\submodule1_1 submo
我有一张彩色图像及其深度图,它们都是由 Kinect 捕获的。我想将它投影到另一个位置(以查看它在另一个视角下的样子)。由于我没有 Kinect 的内在参数(相机参数);我该如何实现? P.S:我正在
给出了这三个网址: 1) https://example.com 2) https://example.com/app 3) https://example.com/app?param=hello 假
这个着色器(最后的代码)使用 raymarching 来渲染程序几何: 但是,在图像(上图)中,背景中的立方体应该部分遮挡粉红色实体;不是因为这个: struct fragmentOutput {
我希望能够在 ThreeJS 中创建一个房间。这是我到目前为止所拥有的: http://jsfiddle.net/7oyq4yqz/ var camera, scene, renderer, geom
我正在尝试通过编写小程序来学习 Haskell...所以我目前正在为简单表达式编写一个词法分析器/解析器。 (是的,我可以使用 Alex/Happy...但我想先学习核心语言)。 我的解析器本质上是一
我想使用像 [parse_ini_file][1] 这样的东西。 例如,我有一个 boot.ini 文件,我将加载该文件以进行进一步的处理: ;database connection sett
我正在使用 Mockito 来测试我的类(class)。我正在尝试使用深度 stub ,因为我没有办法在 Mockito 中的另一个模拟对象中注入(inject) Mock。 class MyServ
我试图在调整设备屏幕大小时重新排列布局,所以我这样做: if(screenOrientation == SCREEN_ORIENTATION_LANDSCAPE) { document
我正在 Ubuntu 上编写一个简单的 OpenGL 程序,它使用顶点数组绘制两个正方形(一个在另一个前面)。由于某种原因,GL_DEPTH_TEST 似乎不起作用。后面的物体出现在前面的物体前面
static FAST_FUNC int fileAction(const char *pathname, struct stat *sb UNUSED_PARAM, void *mo
我有这样的层次结构: namespace MyService{ class IBase { public: virtual ~IBase(){} protected: IPointer
我正在制作一个图片库,需要一些循环类别方面的帮助。下一个深度是图库配置文件中的已知设置,因此这不是关于无限深度循环的问题,而是循环已知深度并输出所有结果的最有效方法。 本质上,我想创建一个 包含系统中
如何以编程方式在树状结构上获取 n 深度迭代器?在根目录中我有 List 每个节点有 Map> n+1 深度。 我已修复 1 个深度: // DEPTH 1 nodeData.forEach(base
我正在构建一个包含大量自定义元素的 Polymer 单页界面。 现在我希望我的元素具有某种主样式,我可以在 index.html 或我的主要内容元素中定义它。可以这样想: index.html
我正在尝试每 25 秒连接到配对的蓝牙设备,通过 AlarmManager 安排,它会触发 WakefulBroadcastReceiver 以启动服务以进行连接。设备进入休眠状态后,前几个小时一切正
假设有一个有默认值的函数: int foo(int x=42); 如果这被其他人这样调用: int bar(int x=42) { return foo(x); } int moo(int x=42)
是否可以使用 Javascript 获取 url 深度(级别)? 如果我有这个网址:www.website.com/site/product/category/item -> depth=4www.w
我是一名优秀的程序员,十分优秀!