您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[阿里巴巴]:玩转AIGC - 发现报告

玩转AIGC

2025-05-19-阿里巴巴王***
AI智能总结
查看更多
玩转AIGC

序 随着人工智能技术的不断发展,AIGC 作为其中一种重要的应用,正越来越受大众关注与重视。AI 从理解语言、理解文字、理解图片和视频,走向了生成内容,这称之为 AIGC,即人工智能自动生成内容,是一种‘人机共创’新模式。 目前,AIGC 主要的应用场景分为互联网人机交互界面,如问答式购物,问答式搜索,问答式内容推进等;游戏和互娱 AI 内容生产,如游戏原画及素材生成,剧情生成,NPC 人物生成等;消费电子智能家居和家电,如智能音箱,智能手表,其他可穿戴智能设备等。企业服务创意和素材生成,如商业文案生成,法律文件审核,企业广告策划等。 本文将围绕文本生成、图像生成以及视频生成这三块主流 AIGC 的应用来给大家讲解详细的操作指南以及实践方案。以下是来自弹性计算 GPU 云服务器的 8 个 AIGC 最佳实践,可以帮助大家更好、更快速的搭建属于自己的 AIGC 应用,玩转 AIGC。 目录页 从0快速搭建个人版“对话大模型”...................................................5基于AIACC加速器快速实现AIGC绘画........................................ 15快速搭建AI对话机器人..................................................................25AIGC文本生成3D模型.................................................................. 30AIGC文本生成视频........................................................................ 38基于AIACC加速器快速实现LLaMA-7B指令微调........................ 44基于AIACC加速器快速实现Stable Diffusion生成特定物体图片.60使用Megatron-Deepspeed训练GPT-2并生成文本.................... 78 从 0 快速搭建个人版“对话大模型” 一、背景信息 Alpaca 大模型是一款基于 LLaMA 的大语言模型,它可以模拟自然语言进行对话交互,并协助用户完成写作、翻译、编写代码、生成脚本等一系列创作任务。同时,使用了中文数据进行二次预训练,提升了中文基础语义理解能力。 本文基于阿里云 GPU 服务器和 Alpaca 大模型,指导您如何快速搭建个人版“对话大模型”。 二、操作步骤 1. 创建 ECS 实例 1)在 ECS 实例创建页面,创建 ECS 实例。关键参数说明如下,其他参数的配置,请参见自定义购买实例。 •实例规格:选择实例规格为 ecs.gn7i-c16g1.4xlarge。 •镜像:公共镜像 Ubuntu 20.04,并选中安装 GPU 驱动,选择 CUDA 版本 11.4.1/Driver版本 470.161.03/CUDNN 版本 8.2.4。 •公网 IP:选中分配公网 IPv4 地址,带宽计费方式选择按量付费,带宽峰值选择 100 Mbps,以加快模型下载速度。 2)添加安全组规则。 在 ECS 实例安全组的入方向添加安全组规则并放行 7860 端口。具体操作,请参见添加安 全组规则。 3)查看驱动以及 CUDA 库是否安装成功。 a)使用 root 用户远程登录 ECS 实例。具体操作,请参见通过密码或密钥认证登录 Linux实例。首次登录 ECS 实例时,系统会自动安装驱动。当显示如下图所示的回显信息时,表示驱动以及 CUDA 库已安装成功。 特别提醒: 系统自动安装驱动以及 CUDA 库时,请不要手动操作或者重启实例,否则可能会导致驱动或 CUDA 库安装失败。等到安装驱动以及 CUDA 库完成以后,系统会自动重启。 如果创建完 ECS 实例后,没有立即远程登录 ECS 实例,可能看不到类似下图的回显信息。 b)再次使用 root 用户远程登录 ECS 实例。具体操作,请参见通过密码或密钥认证登录Linux 实例。 c)执行以下命令,查看GPU驱动的版本。 nvidia-smi 回显信息类似下图所示。 d)执行以下命令,查看CUDA库的版本。 nvcc-V 回显信息如下图所示。 配置软件 1)执行以下命令,安装Git和GitLFS软件。 aptinstall-ygitgit-lfspython-is-python3 2)依次执行以下命令,安装模型所需要的Python包。 pipinstallgit+https://github.com/huggingface/transformerspipinstallsentencepiece==0.1.97-ihttps://pypi.tuna.tsinghua.edu.cn/simplepipinstallpeft==0.2.0-ihttps://pypi.tuna.tsinghua.edu.cn/simple 说明:从GitHub上下载Transformers库,由于网络原因偶尔可能会不成功,建议您多尝试几次。 3)在PyTorch环境下验证GPU是否正常工作。 a)执行以下命令,进入PyTorch环境。 python b)执行以下命令,验证GPU是否正常工作。 importtorchtorch.cuda.is_available() 返回true,表示GPU正常工作。 c)执行以下命令,退出Python。 quit() 下载与配置模型 1)依次执行以下命令,下载tmux并创建一个tmuxsession。 aptinstall-ytmuxtmux 说明:下载模型耗时较长,建议在tmuxsession中下载,以免ECS断开连接导致下载中断。 2)执行以下命令,下载Chinese-LLaMA-Alpaca模型。 gitclonehttps://github.com/ymcui/Chinese-LLaMA-Alpaca.git 3)执行以下命令,下载chinese-alpaca-lora-13b模型。 git-lfsclonehttps://huggingface.co/ziqingyang/chinese-alpaca-lora-13b 4)执行以下命令,下载llama-13b-hf。 llama-13b-hf是预训练的llama13b模型,已经转换成了Huggingface的模型格式。下载llama-13b-hf大约有40GiB的数据,预估下载时间约30分钟,请您耐心等待。 LLaMA是第三方提供的Huggingface格式的预训练模型数据。Meta官方发布的LLaMA模型禁止商用,并且官方暂时还没有正式开源模型权重。 这里使用这个下载链接只为做演示使用,不承担任何法律责任。 git-lfsclonehttps://huggingface.co/decapoda-research/llama-13b-hf 5)依次执行以下命令,合并代码。 命 令 行 中 需 要 用--output_dir命 令 指 定 一 个 输 出 目 录 , 本 示 例 中 输 出 目 录 为/root/Chinese-LLaMA-Alpaca/llama_with_lora_hf。转换需要一段时间,需要耐心等待。 6)执行以下命令,查看转换完成后的文件。 ls-lhllama_with_lora_hf 部署WebUI 1)执行以下命令,在/root目录或者您的工作目录,下载WebUI并且进行代码部署。 2)执行以下命令,安装代码及依赖库。 cdtext-generation-webui/pipinstall-rrequirements.txt-ihttps://pypi.tuna.tsinghua.edu.cn/simple 3)执行以下命令,在models目录下面生成一个软链接,指向合并后模型数据的目录。合并后的数据模型目录为/root/Chinese-LLaMA-Alpaca/llama_with_lora_hf,您可以从合并代码步骤获取。 ln-s/root/Chinese-LLaMA-Alpaca/llama_with_lora_hf/models/llama_with_lora_hf 参数说明如下: ∙/root/Chinese-LLaMA-Alpaca/llama_with_lora_hf/:指的是合并模型存放的目录,您可以从合并代码步骤获取。∙models/llama_with_lora_hf:指的是模型名称,您可以修改成其他名称。 验证结果 完成以上操作后,您已经成功完成了WebUI部署和个人版对话大模型的搭建。您可以在WebUI页面,进行验证。 1)执行以下命令,运行WebUI。 cdtext-generation-webui/pythonserver.py--modelllama_with_lora_hf--listen--chat--load-in-8bit 参数说明如下: ∙--model:指定的是步骤3生成的软链接的名称,不需要带前面的model/目录名。本示例软链接的名称为llama_with_lora_hf。 ∙--listen:用于设置WebUI监听所有外部IP(不配置--listen默认只能监听本地IP), 以实现从实例外访问WebUI。默认监听端口是7860,您可通过--listen-port来指定其他监听端口。 ∙--chat:用于指定默认的运行模式,本文示例为对话模式(可按需尝试其他模式)。 ∙--load-in-8bit:用于指定以8bit模式加载模型。正常加载13B模型需要26GB以上显存,A10显卡只有24GB,所以需要以8bit模式加载,模型占用显存大约为15GB。 当显示如下图所示的回显信息时,表示运行WebUI成功。 2)在ECS实例页面,获取ECS实例的公网IP地址。 3)在浏览器中输入http://:7860,即可访问个人版对话大模型。您可以输入相应的问题和AI机器人进行对话。 基于AIACC加速器快速实现AIGC绘画 一、背景信息 StableDiffusion是一个可通过文本生成图像的扩散模型,基于CLIP模型从文字中提取隐变量,并通过UNet模型生成图片;最后通过逐步扩散、逐步处理图像,优化图像质量。 AIACC-Inference(AIACC推理加速器)Torch版可通过对模型的计算图进行切割,执行层间融合,以及高性能OP实现,大幅度提升PyTorch的推理性能。您无需指定精度和输入尺寸,即可通过JIT编译的方式对PyTorch框架下的深度学习模型进行推理优化。更多信息,请参见手动安装AIACC-Inference(AIACC推理加速)Torch版。 本文基于阿里云GPU服务器和StableDiffusion的WebUI框架,指导您如何基于AIACC加速器快速实现AIGC绘画。 特别提醒 ∙阿里云不对第三方模型的合法性、安全性、准确性进行任何保证,阿里云不对由此引发的任何损害承担责任。 ∙您应自觉遵守第三方模型的用户协议、使用规范和相关法律法规,并就使用第三方模型的合法性、合规性自行承担相关责任。 二、操作步骤 创建ECS实例 1)前往实例创建页。 2)按照界面提示完成参数配置,创建一台ECS实例。需要注意的参数如下,其他参数的配置,请参见自定义购买实例。 ∙实例:选择实例规格为ecs.gn7i-c16g1)4xlarge。 ∙镜像:本文使用已部署好推理所需环境的云市场镜像,名称为ai-inference-solution。 ∙公网IP:选中分配公网IPv4地址,带宽计费模式选择按使用流量,带宽峰值设