国内首个可调用API的视频模型,CogVideoX有多能打?

news2024/9/22 17:20:20
近期,智谱AI在其Maas开放平台(bigmodel.cn)发布了视频生成大模型CogVideoX,它提供了国内首个通过API来使用的文生视频和图生视频服务!
话不多说,我们直接来看一下通过CogVideoX生成的一部短片。

技术原理

CogVideoX融合了文本、时间、空间三维度,参考Sora算法设计,为DiT架构,相比前代CogVideo推理速度提升6倍,理论上6秒视频生成仅需30秒。

深入CogVideoX的原理,得从智谱多模态技术布局讲起。2021年,智谱在NeurIPS’21上发表了文生图大模型CogView,奠定多模态系列基础。2022年,智谱在CogView基础上提出并开源文生视频模型CogVideo,被多家巨头引用。

CogVideo基于CogView2,采用Diffusion Transformer模型架构(DiT),它通过引入噪声并训练神经网络来逆转噪声增加的过程,结合Transformer模型,实现图像或视频的生成与变换。这个过程涉及数据预处理、噪声引入、模型训练以及最终的图像或视频生成。

 😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

数据预处理:将输入的图像或视频数据转换为模型可以处理的格式,如将图像切分成固定大小的patches(小块),然后将这些patches转换为特征向量。

噪声引入:在数据预处理后的特征向量上逐步引入噪声,形成一个噪声增加的扩散过程。这个过程可以视为从原始数据到噪声数据的转换。

模型训练:使用引入了噪声的特征向量作为输入,训练Diffusion Transformer模型。模型的目标是学习如何逆转噪声增加的过程,即从噪声数据恢复出原始数据。

图像或视频生成:在模型训练完成后,可以通过输入噪声数据(或随机生成的噪声)到模型中,经过模型的处理后生成新的图像或视频。这个生成过程利用了模型学习到的从噪声到原始数据的映射关系。

而且智谱还在CogVideoX用户指令遵循方面下功夫,自研视频理解模型生成高质量视频文本对,有效提高模型指令遵循度。

CogVideo论文链接:

https://arxiv.org/abs/2205.15868

CogVideoX上手体验

目前,CogVideoX已经在大模型MaaS平台bigmodel.cn上正式发布,还是国内首个可通过API体验AI生成视频,用户完成注册后即可体验其强大的视频创作能力。

下面,我将通过Python SDK来引导大家如何调用CogVideoX。文档链接:https://open.bigmodel.cn/dev/howuse/cogvideox

首先,请确保你已安装或升级了智谱AI的SDK。如果尚未安装,可以通过pip install zhipuai进行安装;若已安装但非最新版本,则需使用

pip install --upgrade zhipuai

进行升级。

完成SDK安装后,你可以通过简单的几行代码引入智谱AI的客户端:

from zhipuai import ZhipuAI

接下来,我将展示如何使用CogVideo模型进行视频创作,主要的函数有两个:

  • generations:生成视频

  • retrieve_videos_result:查询结果

请参考以下文生视频的示例代码:


from zhipuai import ZhipuAI

# 初始化客户端并传入你的API密钥
client = ZhipuAI(你的API_KEY)

# 使用CogVideo模型生成视频
# prompt参数为描述视频内容的文本
response = client.videos.generations(model="cogvideox", 
prompt="有一个女孩在喝咖啡,阳光洒在她的脸上,她看起来心情很好")
print(response)

请注意,视频生成是一个耗时过程,因此该请求是异步的。你将收到的响应中仅包含任务ID,而非视频内容本身。你可以通过查询该任务ID来获取视频的生成状态及结果。

以下是查询视频生成状态的示例响应:

VideoObject(id='1010028834062354330651310', model='cogvideo', video_result=None, task_status='PROCESSING', request_id='8833470954813038693')

为了获取最终的视频内容,你需要编写代码轮询查询该任务状态,直至其变为COMPLETED。以下是一个轮询查询并打印结果的示例函数:


import time

def video_task():
    response = client.videos.generations(model="cogvideo", prompt="风景优美的河里,有一只船划过")
    print(response)
    task_status = response.task_status
    task_id = response.id
    get_cnt = 0
    
    while task_status == 'PROCESSING' and get_cnt <= 40:
        time.sleep(10)  # 每10秒查询一次
        result_response = client.videos.retrieve_videos_result(id=task_id)
        print(result_response)
        task_status = result_response.task_status
        get_cnt += 1

# 调用函数
video_task()

然后就可以生成这样一段视频了:

如果是图生视频,你还需提供底图的image_url,平台支持通过 URL 链接或 Base64 编码格式上传图片,但请确保图片大小不超过 5MB。

from zhipuai import ZhipuAI
client = ZhipuAI(你的API key) # 填写您⾃⼰的APIKey

response  = client.videos.generations(
    model="cogvideo",
    prompt=prompt,
    image_url=url,
)
print(response)

下面是一个返回的response示例:

id='8868902201637896192' request_id='654321' model='cogvideox' task_status='PROCESSING'

紧接着,我们将利用此返回的id(注意,此处使用的是id而非request_id)来查询生成的视频结果。请参考以下代码示例:

from zhipuai import ZhipuAI
client = ZhipuAI(api_key="") # 请在此处填入您自己的API密钥
response = client.videos.retrieve_videos_result(
    id="8868902201637896192"
)
print(response)

当您执行上述代码后,您将接收到类似以下结构的response示例:


{
    "model": "cogvideox",
    "request_id": "8868902201637896192",
    "task_status": "SUCCESS",
    "video_result": [
        {
            "cover_image_url": "https://sfile.chatglm.cn/testpath/video_cover/4d3c5aad-8c94-5549-93b7-97af6bd353c6_cover_0.png",
            "url": "https://sfile.chatglm.cn/testpath/video/4d3c5aad-8c94-5549-93b7-97af6bd353c6_0.mp4"
        }
    ]
}

如此,你便能优雅地获取到生成的视频及其封面图的链接信息。

提示词技巧

其实,无论是AI对话、AI绘画,还是在此所提及的AI视频生成,提示词的撰写皆遵循一个核心要旨:

那便是——结构化!它可以让纷繁的思绪变得井然有序,更在于它能引领你的创意之旅步入清晰之境。

谈及AI视频生成,其提示词结构的构建可繁可简:

简约结构:人物+场景,再辅以[细致描绘],便足以勾勒出生动的画面。

一群小孩子在街道玩耍,很开心。

繁复架构:(镜头语⾔ + 光影) + 主体 (主体描述) + 主体运动 +[场景的生动再现(含场景细致描绘)]以及[情绪的渲染/氛围的营造/风格的彰显],共同编织出一幅幅引人入胜的视觉盛宴。

从高处俯瞰,清晨的第一缕阳光穿透薄雾,照亮了宁静的小镇。一群穿着色彩鲜艳衣裳的孩子在街道上追逐嬉戏,脸上洋溢着纯真的笑容。街道两旁古朴的建筑和盛开的花朵交相辉映,远处是连绵的山峦和袅袅升起的炊烟。整个画面洋溢着温馨与活力,让人不由自主地沉醉在这份宁静与美好之中。

体验链接

开发者API访问链接:

https://open.bigmodel.cn/dev/howuse/cogvideox

赶紧去试试吧,用cogvideox扩展你的想象空间!

 👉AI大模型学习路线汇总👈
大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

 👉学会后的收获:👈
基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉获取方式:

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓


文章知识点与官方知识档案匹配,可进一步学习相关知识

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1982476.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CSP-J复赛-模拟题4

1.区间覆盖问题&#xff1a; 题目描述 给定一个长度为n的序列1,2,...,a1​,a2​,...,an​。你可以对该序列执行区间覆盖操作&#xff0c;即将区间[l,r]中的数字,1,...,al​,al1​,...,ar​全部修改成同一个数字。 现在有T次操作&#xff0c;每次操作由l,r,p,k四个值组成&am…

未授权访问漏洞系列详解⑦!

VNC未授权访问漏洞 VNC 是虚拟网络控制台 Virtual Network Console 的英文缩写。它是一款优秀的远程控制工具软件由美国电话电报公司AT&T的欧洲研究实验室开发。VNC是基于 UNXI和 Linux 的免费开源软件由 VNC Server 和 VNC Viewer 两部分组成。VNC 默认端口号为 5900、590…

opencascade AIS_TypeFilter AIS_XRTrackedDevice源码学习

opencascade AIS_TypeFilter 前言 通过它们的类型选择交互对象。该过滤器会对本地上下文中的每个交互对象提出问题&#xff0c; 以确定它是否具有非空的所有者&#xff0c;并且如果是&#xff0c;则检查它是否是所需类型。 如果对象在每种情况下都返回 true&#xff0c;则保留…

运动控制卡——固高GTS

文章目录 前言什么是运动控制卡指示灯状态检测主卡指示灯状态说明端子板指示灯状态说明 软件调试(P39)何将控制器配置成脉冲模式设置与定位 编程C#编程 一些概念 前言 在一些控制多轴电机运动的场景下&#xff0c;除了需要驱动器驱动该轴的电机外&#xff0c;还需要用到控制卡…

kickstart自动部署

目录 一 准备工作二 安装软件及其相关配置配置步骤&#xff0c;图形引导部署web服务配置dhcp部署pxe 三 使用新机验证 一 准备工作 主机采用rhel7.9版本 本文使用图形化界面就行操作设置 取消VMware dhcp设置 yum group install "Server with GUI" init 5 #启动图…

vue3中使用logicFlow

浅结logicFlow使用&#xff1a; 应用场景&#xff1a;vue3中使用logicFlow绘制流程图 技术碎片应用&#xff1a; vue3&#xff1a;ref,reactive, onMounted, watchEffect,nextTick,inject logicFlow&#xff1a;节点&#xff0c;边&#xff0c;锚点&#xff0c;事件 官网&#…

大模型微调fine-tuning

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl大模型微调概述 大模型fine-tuning(微调)是一种重要的机器学习技术,特别是在处理自然语言处理(NLP)任务时广泛应用。它指在已经预训练好的大型深度学习模型基础上,使用新的、特定任务相关的…

【文献阅读】GraphAny: A Foundation Model for Node Classification on Any Graph

Abstract 可以执行任何新任务而无需特定训练的基础模型已经在视觉和语言应用中引发了机器学习的革命。然而&#xff0c;涉及图结构数据的应用仍然是基础模型面临的一个难题&#xff0c;因为每个图都有独特的特征和标签空间。传统的图机器学习模型&#xff0c;如图神经网络&…

在Fragment中显示高德地图

一、首先在高德官网上申请key 第一步:按照规定填写Key名称第二步:选择服务平台,运用在android上就勾选anroid就好了第三步:输入发布版安全码SHA1 首先打开命令行按住windows+r两个按键在命令行中输入cd .android,定位到.android文件下调试版本使用 debug.keystore,命令为…

交通预测数据文件梳理:METR-LA

文章目录 前言一、adj_METR-LA.pkl文件读取子文件1读取子文件2读取子文件3 二、METR-LA.h5文件 前言 最近做的实验比较多&#xff0c;对于交通预测数据的各种文件和文件中的数据格式理解愈加混乱&#xff0c;因此打算重新做一遍梳理来加深实验数据集的理解&#xff0c;本文章作…

数位dp学习

参考借鉴&#xff1a; 数位DP学习整理&#xff08;数位DP看完这篇你就会了&#xff09;-CSDN博客 AcWing1081.度的数量(数位DP)题解_求给定区间$ [x,y]$ 中满足下列条件的整数个数:这个数恰好等于 k k k 个互不相等-CSDN博客 就是类似前缀和的思想&#xff0c;进行数字在位数…

最新资讯 | 开源大模型Llama会失去技术优势吗?

昨夜&#xff0c;Meta宣布推出迄今为止最强大的开源模型——Llama 3.1 405B&#xff0c;支持上下文长度为128K Tokens&#xff0c;在基于15万亿个Tokens、超1.6万个H100 GPU上进行训练&#xff0c;这也是Meta有史以来第一次以这种规模训练Llama模型。Meta同时还发布了全新升级的…

2024年,pdf文献热门翻译软件总结推荐

对于如今的时代&#xff0c;市面上存在各式各样的学术资料&#xff0c;对于没有语言天赋的我&#xff0c;看得眼花缭乱。看个学术资料都不知道要用哪个工具&#xff0c;试来试去和睦浪费时间。今天就我使用过的翻译软件中&#xff0c;整理了四款能帮助我们解决文献翻译难题的四…

未授权访问漏洞系列详解⑧!

Druid未授权访问漏洞 漏洞特征:http://www.xxxx.com/druid/index.html 当开发者配置不当时就可能造成未授权访问下面给出常见Druid未授权访问路径 ------------- /druid/websession.html /system/druid/websession.html /webpage/system/druid/websession.html(jeecg) ----…

GitHub惊天安全漏洞:删除的仓库竟能永远访问

引言 近日&#xff0c;GitHub 被曝出一个严重的安全漏洞&#xff0c;引发了广泛关注。开源安全软件公司 Truffle Security 的安全研究员 Joe Leon 发现&#xff0c;在 GitHub 上删除的代码仓库实际上仍然可以被访问。这一发现震惊了整个开源社区。本文将详细探讨这一安全漏洞的…

PXE服务器自助部署

kickstart部分 一、实验环境 两台主机&#xff1a;一台用于环境搭建&#xff08;ngnix.yee.org&#xff09;&#xff0c;一台用于测试(check_ks)。测试机 二、开启主机图形工具&#xff0c;并进行基本配置 查看 /root/anaconda-ks.cfg 文件&#xff0c;这个文件是系统安装以…

学习记录——day26 进程间的通信(IPC)无名管道 无名管道 信号通信 特殊的信号处理

目录 一、进程间通信引入 二、无名管道 1、无名管道相关概念 2、无名管道的API接口函数 pipe(int pipefd[2]); 3、管道通信的特点 4、管道的读写特点 三、无名管道 1、有名管道&#xff1a;有名字的管道文件&#xff0c;其他进程可以调用 2、可以用于亲缘进程间的通信&…

windows下,使用vs code远程连接云服务器【以CentOS7为例】

windows下&#xff0c;使用vs code远程连接云服务器 1. 下载VS code并准备相关插件2. 使用Remote - SSH远程控制Linux 1. 下载VS code并准备相关插件 1. VS code官网&#xff1a; 下载地址&#xff1a;https://code.visualstudio.com/Download下载合适版本的vs code。 2. 推荐…

20款奔驰S450升级原厂红外夜视系统,提升您夜晚行车安全

夜视辅助系统增强版不仅可以对处于潜在危险位置的行人进行探测&#xff0c;还可发现动物。当车辆进入没有路灯的区域&#xff0c;第三代夜视系统可自动将仪表盘的显示内容从车速表转变为锐度极高的夜视图像&#xff0c;并将探测到前方出现的行人或动物在系统中以鲜明的色彩突出…

CSS前端:元素的布局技巧

【备注】在线测试网站&#xff0c;点此进入。 一、内边距和外边距 【总结】padding增加本元素和子元素的距离&#xff0c;margin增加本元素和父元素的距离。 二、居中和对齐 【需求】 【HTML】 <div id"container"><p id"top">我在div容器…