Category: AI项目和框架

  • IDM-VTON – 逼真的开源AI虚拟试穿框架

    IDM-VTON是什么

    IDM-VTON(Improved Diffusion Models for Virtual Try-ON)是由韩国科学技术院和OMNIOUS.AI的研究人员提出的一种先进的AI虚拟试穿技术,通过改进扩散模型来生成逼真的人物穿戴图像,实现更真实的虚拟试穿效果。该技术包含两个关键组件:一是视觉编码器,用于提取服装图像的高级语义信息;二是GarmentNet,一个并行UNet网络,用于捕捉服装的低级细节特征。IDM-VTON还引入了详细的文本提示,以增强模型对服装特征的理解,从而提升生成图像的真实度。

    IDM-VTON

    IDM-VTON的功能特色

    • 虚拟试穿图像生成:根据用户和服装的图像,生成用户穿戴特定服装的虚拟图像。
    • 服装细节保留:通过GarmentNet提取服装的低级特征,确保服装的图案、纹理等细节在生成的图像中得到准确反映。
    • 支持文本提示理解:利用视觉编码器和文本提示,使模型能够理解服装的高级语义信息,如款式、类型等。
    • 个性化定制:允许用户通过提供自己的图像和服装图像,定制化生成更符合个人特征的试穿效果。
    • 逼真的试穿效果:IDM-VTON能够生成视觉上逼真的试穿图像,不仅在视觉上与服装图像保持一致,而且能够自然地适应人物的姿态和体型。

    IDM-VTON

    IDM-VTON的官网入口

    IDM-VTON的工作原理

    IDM-VTON

    1. 图像编码:首先,将人物(xp)和服装(xg)的图像编码成模型可以处理的潜在空间表示。
    2. 高级语义提取:使用图像提示适配器(IP-Adapter),这是一个利用图像编码器(如CLIP模型)来提取服装图像的高级语义信息的组件。
    3. 低级特征提取:通过GarmentNet,一个专门设计的UNet网络,来提取服装图像的低级细节特征,如纹理、图案等。
    4. 注意力机制
      • 交叉注意力:将高级语义信息与文本条件结合,通过交叉注意力层进行融合。
      • 自注意力:将低级特征与来自TryonNet的特征结合,并通过自注意力层进行处理。
    5. 详细文本提示:为了增强模型对服装细节的理解,提供详细的文本提示,描述服装的具体特征,如“短袖圆领T恤”。
    6. 定制化:通过微调TryonNet的解码器层,可以使用特定的人物-服装图像对来定制化模型,以适应不同的人物和服装特征。
    7. 生成过程:利用扩散模型的逆过程,从加入噪声的潜在表示开始,逐步去噪生成最终的虚拟试穿图像。
    8. 评估与优化:在不同的数据集上评估模型的性能,使用定量指标(如LPIPS、SSIM、CLIP图像相似性得分和FID得分)和定性分析来优化模型。
    9. 泛化测试:在In-the-Wild数据集上测试模型的泛化能力,该数据集包含真实世界的场景,以验证模型在未见过的服装和人物姿态上的表现。

    IDM-VTON的应用场景

    • 电子商务:在线上购物平台中,IDM-VTON可以让用户在不实际穿上衣物的情况下,预览服装穿在自己身上的效果,从而提高购物体验和满意度。
    • 时尚零售:时尚品牌可以利用IDM-VTON来增强顾客的个性化体验,通过虚拟试穿展示最新款式,吸引顾客并促进销售。
    • 个性化推荐:结合用户的身材和偏好数据,IDM-VTON可以用于个性化推荐系统,为用户推荐适合其身材和风格的服装。
    • 社交媒体:用户可以在社交媒体上使用IDM-VTON来尝试不同的服装风格,分享试穿效果,增加互动和娱乐性。
    • 时尚设计和展示:设计师可以使用IDM-VTON来展示他们的设计作品,通过虚拟模特展示服装,而无需制作实体样衣。
  • ID-Animator – 腾讯等推出的个性化人物视频生成框架

    ID-Animator是什么

    ID-Animator是由来自腾讯光子工作室、中科大和中科院合肥物质科学研究院的研究人员推出的一种零样本(zero-shot)人类视频生成技术,能够根据单张参考面部图像生成个性化视频,同时保留图像中的人物身份特征,并能够根据文本提示调整视频内容。该框架通过结合预训练的文本到视频扩散模型和轻量级面部适配器,实现了高效的视频生成,且无需针对特定身份进行额外的训练。ID-Animator通过构建专门的数据集和采用随机面部参考训练方法,提高了视频的身份保真度和生成质量。

    ID-Animator

    ID-Animator的主要功能

    • 修改视频角色(Recontextualization): ID-Animator能够根据提供的参考图像和文本,改变视频中角色的上下文信息。例如,可以通过文本提示调整角色的发型、服装、背景,甚至执行特定动作,从而创造出全新的角色背景故事。
    • 年龄和性别修改(Age and Gender Alteration): 该模型能够根据需要对视频中角色的年龄和性别进行调整,以适应不同的视频内容和风格需求。如生成年轻人像变老、男生变女生的视频。
    • 身份混合(Identity Mixing): ID-Animator能够混合两个不同身份的特征,按照不同的比例生成具有综合特征的视频,这在创造新的角色或混合现实中的人物特征时非常有用。
    • 与ControlNet的结合: ID-Animator可与ControlNet等现有精细条件模块兼容,通过提供单帧或多帧控制图像,可以生成与控制图像紧密结合的视频序列,这在生成特定动作或场景的视频时非常有用。
    • 社区模型集成: ID-Animator还能够与社区模型(如Civitai上的模型)集成,即使没有在这些模型上进行过训练,也能有效地工作,保持了面部特征和动态生成的稳定性。

    ID-Animator

    ID-Animator的官网入口

    ID-Animator的工作原理

    ID-Animator的工作原理

    1. 预训练的文本到视频扩散模型:ID-Animator使用一个预训练的文本到视频(Text-to-Video, T2V)扩散模型作为基础,该模型能够根据文本提示生成视频内容。
    2. 面部适配器(Face Adapter):为了生成与特定身份一致的视频,ID-Animator引入了一个轻量级的面部适配器。这个适配器通过学习面部潜在查询来编码与身份相关的嵌入信息。
    3. 身份导向的数据集构建:研究者构建了一个面向身份的数据集,这包括解耦的人类属性和动作字幕技术,以及从构建的面部图像池中提取的面部特征。
    4. 随机面部参考训练方法:ID-Animator采用随机采样的面部图像进行训练,这种方法有助于将与身份无关的图像内容与与身份相关的面部特征分离,从而使适配器能够专注于学习与身份相关的特征。
    5. 文本和面部特征的融合:ID-Animator将文本特征和面部特征结合在一起,通过注意力机制(Attention Mechanism)进行融合,以生成既符合文本描述又保留身份特征的视频。
    6. 生成过程:在生成视频时,ID-Animator首先接收一个参考面部图像和相应的文本提示。面部适配器将参考图像的特征编码为嵌入,然后将这些嵌入与文本特征一起输入到扩散模型中,最终生成视频。
    7. 优化和训练:为了提高模型的性能,ID-Animator的训练过程包括使用随机面部图像作为参考,以减少参考图像中与身份无关特征的影响,并通过分类器自由引导(Classifier-Free Guidance)等技术优化视频生成质量。
    8. 兼容性和扩展性:ID-Animator设计为与多种预训练的T2V模型兼容,如AnimateDiff,这使得它可以轻松地集成到现有的系统中,并在不同的应用中进行扩展。
  • OpenELM – 苹果开源的高效语言模型系列

    OpenELM是什么

    OpenELM是Apple苹果公司最新推出的系列高效开源的语言模型,包括OpenELM-270M、OpenELM-450M、OpenELM-1_1B和OpenELM-3B不同参数规模的版本(分为预训练版和指令微调版)。该大模型利用层间缩放策略在Transformer模型的每一层中进行参数的非均匀分配,以此提高模型的准确度和效率。该模型在公共数据集上进行了预训练,并且在多个自然语言处理任务上展现出了优异的性能。OpenELM的代码、预训练模型权重以及训练和评估流程全部开放,旨在促进开放研究和社区的进一步发展。

    苹果OpenELM

    OpenELM的基本信息

    • 参数规模:OpenELM总共有八个模型,其中四个是预训练的,四个是指令微调的,涵盖了 2.7 亿到 30 亿个参数之间的不同参数规模(270M、450M、1.1B和3B)。
    • 技术架构:OpenELM采用了基于Transformer的架构,使用了层间缩放(layer-wise scaling)策略,通过调整注意力头数和前馈网络(FFN)的乘数来实现参数的非均匀分配。该模型采用了分组查询注意力(Grouped Query Attention, GQA)代替多头注意力(Multi-Head Attention, MHA),使用SwiGLU激活函数代替传统的ReLU,以及RMSNorm作为归一化层。
    • 预训练数据:OpenELM使用了多个公共数据集进行预训练,包括RefinedWeb、deduplicated PILE、RedPajama的子集和Dolma v1.6的子集,总计约1.8万亿个token。
    • 开源许可:OpenELM的代码、预训练模型权重和训练指南都是在开放源代码许可证下发布的。此外,苹果还发布了将模型转换为 MLX 库的代码,从而在苹果设备上进行推理和微调。

    OpenELM的官网入口

    OpenELM模型

    OpenELM的技术架构

    • Transformer架构:OpenELM采用了仅解码器(decoder-only)的Transformer模型架构,这是一种在自然语言处理中广泛使用的架构,特别适用于处理序列数据。
    • 层间缩放(Layer-wise Scaling):OpenELM通过层间缩放技术有效地在模型的每一层分配参数。这意味着模型的早期层(接近输入端)使用较小的注意力维度和前馈网络维度,而接近输出端的层则逐渐增加这些维度的大小。
    • 分组查询注意力(Grouped Query Attention, GQA):OpenELM使用了GQA代替传统的多头注意力(Multi-Head Attention, MHA)。GQA是一种注意力机制的变体,旨在提高模型处理长距离依赖的能力。
    • RMSNorm归一化:OpenELM使用了RMSNorm作为其归一化层,一种有助于稳定训练过程的技术。
    • SwiGLU激活函数:在前馈网络(Feed Forward Network, FFN)中,OpenELM使用了SwiGLU激活函数,一种门控激活函数,有助于模型捕捉复杂的模式。
    • RoPE位置编码:为了编码位置信息,OpenELM使用了旋转位置编码(Rotary Positional Embedding, RoPE),一种可以处理序列中元素顺序的编码方式。
    • Flash注意力:在计算缩放点积注意力(scaled dot-product attention)时,OpenELM使用了Flash注意力,这是一种快速且内存高效的注意力计算方法。

    OpenELM的性能表现

    研究人员将OpenELM与PyThia、Cerebras-GPT、TinyLlama、OpenLM、MobiLlama和OLMo等模型进行了比较。在相似的模型大小下,OpenELM在ARC、BoolQ、HellaSwag、PIQA、SciQ和WinoGrande等主流的任务测试中的多数任务上展现出了更高的准确度。尤其是,与OLMo模型相比,OpenELM在参数数量和预训练数据更少的情况下,准确率依然更高。

    OpenELM基准测试得分

  • Arctic – Snowflake开源的企业级AI大模型

    Arctic是什么

    Arctic是由云计算巨头Snowflake的AI研究团队开发的一款高效、开源的企业级大型语言模型,该大模型是一个拥有480亿(480B)的参数规模,由128个细粒度的专家构成的混合专家模型(MoE)模型。在成本效益、训练效率和推理效率方面具有显著优势,特别适合执行企业任务,如SQL生成、编程和指令遵循。Arctic采用Apache 2.0许可,提供对模型权重和代码的开放访问,并开源了数据集和研究洞察。

    Snowflake Arctic

    Arctic的主要特点

    • 参数规模:Arctic拥有480亿参数,但在推理时仅激活170亿参数,以提高效率。
    • 技术架构:采用混合架构,结合了密集变换器(Dense Transformer)和128个专家的MoE模型,每个专家有3.66亿参数。
    • 上下文窗口:模型训练时使用4K的注意力上下文窗口,并计划扩展至32K,以支持更长序列的处理。
    • 训练成本:Arctic的训练计算预算大约在200万美元以下(即少于3000个GPU周)即可达到顶级大模型的能力
    • 模型许可:Arctic在开放的Apache 2.0许可下发布,允许自由使用和修改。
    • 主要用途:专为企业设计,擅长执行SQL生成、编程和指令遵循等任务,适合创建定制企业模型。

    Arctic的训练效率

    Arctic的模型架构

    • 架构组成:Arctic采用了Dense-MoE Hybrid Transformer架构,这种架构结合了密集变换器(Dense Transformer)和混合专家模型(MoE)的特点。
    • 密集变换器规模:模型包含一个具有10B(10 billion,即10亿)参数的密集变换器模型。
    • MoE架构规模:在MoE部分,Arctic设计了128个细粒度的专家,每个专家拥有3.66B(3.66 billion,即36.6亿)参数。因此,MoE部分的总参数量为128×3.66B,即约470B(470 billion,即4700亿)参数。
    • 总参数量:结合密集变换器和MoE部分,Arctic的总参数量达到了480B(480 billion,即4.8万亿)参数。
    • 活跃参数选择:在推理过程中,Arctic使用top-2门控机制从128个专家中选择两个最合适的专家,这意味着在任何给定时间,大约有17B(17 billion,即170亿)的参数是活跃的。
    • 通信与计算重叠:为了提高训练效率,Arctic的架构设计允许在训练过程中将专家间的通信开销与计算任务重叠,从而隐藏了通信开销。
    • 推理效率:在小批量(如批量大小为1)的交互式推理中,Arctic模型的内存读取次数比Code-Llama 70B少4倍,比Mixtral 8x22B少2.5倍,这有助于提高推理性能。
    • 系统优化:Arctic与NVIDIA合作,利用TensorRT-LLM和vLLM团队的技术,为Arctic提供了初步的推理实现,并通过FP8量化技术,使得Arctic可以在单个GPU节点上运行。
    • 注意力上下文窗口:Arctic训练时使用的注意力上下文窗口为4K,团队正在开发基于attention-sinks的滑动窗口实现,以支持无限序列生成能力,未来计划扩展到32K注意力窗口。

    Arctic的性能表现

    Snowflake将Arctic与DBRX、Llama、Mixtral等模型在企业指标和学术指标方面的基准测试进行了对比,Arctic在企业智能指标上表现更好,在如MMLU等通用知识基准上的性能可能略低于一些最新模型,但它在这些基准上仍然保持了竞争力。

    Snowflake基准测试得分

    企业指标:与所有其他开源模型相比,Arctic 都表现出顶级性能,这些任务包括:

    • 编码(Coding):通过HumanEval+ 和 MBPP+ 基准测试编码能力。
    • SQL生成(SQL Generation):使用Spider基准测试SQL查询生成能力。
    • 指令遵循(Instruction Following):IFEval基准测试遵循复杂指令的能力。

    如何使用Arctic

    Snowflake Arctic 现已可从 Hugging Face、Replicate 等平台使用,后续将在包括 Snowflake Cortex、Amazon Web Services (AWS)、Microsoft Azure、NVIDIA API Catalog、Lamini、Perplexity 和 Together 等在内的平台陆续上线。

  • Hyper-SD – 字节跳动推出的高效的图像合成框架

    Hyper-SD是什么

    Hyper-SD是由字节跳动的研究人员推出的一个高效的图像合成框架,旨在解决现有扩散模型在多步推理过程中计算成本高昂的问题。Hyper-SD通过轨迹分割一致性蒸馏(TSCD)技术,在不同时间段内保持数据的一致性,从而有效保留了原始的ODE(常微分方程)轨迹。此外,它还融入了人类反馈学习,优化了在低步数推理情况下的模型性能,并利用分数蒸馏进一步提升了单步推理的图像质量。该框架能够在保持高图像质量的同时,大幅减少必要的推理步骤,实现快速生成高分辨率图像,进一步推动了生成AI领域的发展。

    Hyper-SD

    Hyper-SD的官网入口

    Hyper-SD的工作原理

    • 轨迹分割一致性蒸馏(TSCD)将训练时间步长范围[0, T]划分为k个均匀的时间段。在每个时间段内部执行一致性蒸馏,使用原始模型作为教师,学生模型逐步学习教师模型的行为。通过逐步减少时间段的数量(如8 → 4 → 2 → 1),训练学生模型以逼近教师模型的全局行为。
    • 人类反馈学习(ReFL)利用人类对图像的偏好反馈来优化模型。训练奖励模型,使其能够识别并奖励更符合人类审美的图像。通过迭代去噪和直接预测,结合奖励模型的反馈,微调学生模型。
    • 分数蒸馏使用真实分布和假分布的得分函数来指导单步推理过程。通过最小化两个分布之间的KL散度,优化学生的单步生成性能。
    • 低秩适应(LoRA)使用LoRA技术来适配和训练学生模型,使其成为一个轻量级的插件,可以快速部署和使用。
    • 训练和损失函数优化定义损失函数,结合一致性损失、人类反馈损失和分数蒸馏损失。使用梯度下降等优化算法来训练学生模型,同时更新LoRA插件。
    • 推理和图像生成在训练完成后,使用学生模型进行图像生成的推理过程。根据应用场景的需求,选择适当的推理步骤数量,以平衡生成质量和效率。
    • 性能评估使用定量指标(如CLIP分数、美学分数)和定性指标(如用户研究)来评估生成图像的质量。根据评估结果,进一步调整和优化模型参数。
  • Phi-3 – 微软最新推出的新一代小模型系列

    Phi-3是什么

    Phi-3是微软研究院推出的新一代系列先进的小语言模型,包括phi-3-mini、phi-3-small和phi-3-medium三个不同规模的版本。这些模型在保持较小的参数规模的同时,通过精心设计的训练数据集和优化的算法,实现了与大型模型相媲美的语言理解和推理能力。特别是phi-3-mini模型,仅3.8亿参数,却能在多项基准测试中超越参数量更大的模型,并且由于其小巧的体积,甚至可以在智能手机上运行。Phi-3系列模型的研发,展示了在数据工程和模型优化方面的最新进展,为未来小型化、高效能AI模型的发展提供了新的可能性。

    Phi-3

    技术报告:https://arxiv.org/abs/2404.14219

    Hugging Face Phi-3模型地址:https://huggingface.co/collections/microsoft/phi-3-6626e15e9585a200d2d761e3

    Ollama Phi-3模型地址:https://ollama.com/library/phi3

    Phi-3的模型系列

    • phi-3-mini:最小的语言模型,拥有3.8亿参数。尽管体积小巧,但它在多项语言理解任务上的基准测试表现却能与参数量更大的模型如Mixtral 8x7B和GPT-3.5相媲美。它的设计允许在手机上部署,且在iPhone 14 Pro和iPhone 15使用的A16芯片上能够达到每秒12个token的处理速度。
    • phi-3-small:该模型的参数量为7亿,它使用了tiktoken分词器以支持多语言,并额外增加了10%的多语种数据。phi-3-small在MMLU测试中的得分为75.3%,表现出色,超越了Meta最近发布的Llama 3 8B Instruct模型。
    • phi-3-medium:拥有14亿参数的中型模型,在更多数据上进行了训练,并且在多数测试中超越了GPT-3.5和Mixtral 8x7b MoE。该模型在MMLU测试中的得分达到78.2%,显示了其强大的语言处理能力。

    Phi-3的训练方法

    • 高质量数据集:Phi-3模型的训练使用了3.3万亿至4.8万亿tokens的大规模数据集,这些数据集经过了严格的筛选和过滤,以确保数据的教育水平和质量。
    • 合成数据生成:利用大型语言模型(LLM)生成合成数据,这些合成数据用于教授模型逻辑推理和多种专业技能。
    • 分阶段训练:训练过程分为两个阶段,第一阶段主要使用网络数据,目的是让模型掌握通用知识和语言理解;第二阶段则进一步筛选网络数据,并结合合成数据进行训练。
    • 数据优化:训练数据被校准以接近“数据最优”状态,这意味着在数据选择上,会优先考虑能够提升模型推理能力的网页数据。
    • 后训练优化:模型在预训练之后,还经过了监督指令微调和偏好调整(DPO),以及红队测试和自动化测试,以提高模型的安全性、鲁棒性和对话格式的适应性。
    • 安全性和对齐:Phi-3-mini的开发遵循了微软的负责任AI原则,通过后训练阶段的安全性对齐,使用帮助性和无害性偏好数据集进行训练,并通过独立红队的迭代审查来进一步识别改进领域。
    • 量化处理:为了使模型能够在手机上运行,Phi-3-Mini可以进行4-bit量化,显著减少了模型的内存占用。
    • 多语言支持:尽管Phi-3-Mini主要针对英语,但微软也在探索小型语言模型的多语言能力,Phi-3-Small模型就通过包含更多的多语言数据进行了训练。

    Phi-3的性能表现

    • 基准测试得分phi-3-mini 在MMLU(Massive Multitask Language Understanding)基准测试中得分为69%,在MT-bench上得分为8.38。phi-3-small 和 phi-3-medium 分别在MMLU上取得了75.3%和78.2%的得分,显示了模型规模增长带来的性能提升。
    • 性能对比其他模型Phi-3系列在性能上与参数量更大的模型如Mixtral 8x7B和GPT-3.5相媲美。特别是phi-3-mini,尽管只有3.8亿参数,却在多项基准测试中超过了8B参数的Llama 3。在与Meta的Llama-3-8B-Instruct模型的对比中,phi-3-small(7B参数)在MMLU上得分更高(75.3% vs 66%),显示了Phi-3系列在较小模型尺寸下的性能优势。
      Phi-3基准测试得分对比
    • 移动设备上的运行phi-3-mini 特别设计为能够在移动设备上运行,经过4-bit量化后,能够在iPhone 14 Pro和iPhone 15使用的A16芯片上达到每秒12个token的速度,这在之前的大型模型中是难以实现的。
      Phi-3-mini手机上运行
    • 多语言能力phi-3-small 通过使用tiktoken分词器和增加10%的多语种数据,增强了模型的多语言处理能力,这在对比中是一个重要的优势。

    Phi-3的局限与不足

    • 知识存储限制:由于模型大小的限制,特别是phi-3-mini,它在存储大量事实知识方面的能力有限,这在需要广泛背景知识的测试中表现得尤为明显,例如在TriviaQA测试中的低分表现。
    • 对搜索功能的依赖:为了缓解知识存储的限制,微软提出可以通过与搜索引擎的结合来增强模型的性能。这表明在没有外部搜索支持的情况下,模型可能无法独立提供最佳的答案或信息。
    • 多语言能力的限制:尽管phi-3-small通过增加多语言数据进行了优化,但Phi-3系列模型的主要语言能力仍然主要集中在英语上。对于需要广泛多语言支持的应用场景,这可能是一个限制。
    • 特定任务的性能:在某些特定的任务或数据集上,Phi-3模型可能还没有达到最佳性能,这可能需要进一步的训练数据优化和模型调整。
    • 安全性挑战:尽管模型在安全性方面进行了优化,但像大多数大型语言模型一样,Phi-3系列模型可能仍然存在产生幻觉、不适当内容、偏见放大或安全性问题的挑战。
    • 硬件部署限制:虽然Phi-3-Mini能够在智能手机上运行,但对于一些需要极高计算资源的任务,即使是小型化的模型也可能面临硬件性能的限制。
  • FunClip – 阿里达摩院开源的AI自动视频剪辑工具

    FunClip是什么

    FunClip是阿里达摩院通义实验室推出的一款完全开源、本地部署的自动化视频剪辑工具,通过调用阿里巴巴通义实验室的FunASR Paraformer系列模型实现视频的自动化语音识别。用户可以根据识别结果,选择文本片段或特定说话人,快速裁剪出所需视频片段。FunClip的特色包括集成高精度的中文ASR模型、支持热词定制化、说话人识别,以及提供Gradio交互界面,使得视频剪辑变得简单方便。此外,它还支持多段剪辑,并能自动生成SRT字幕文件。

    FunClip

    FunClip的主要功能

    • 自动化语音识别:利用阿里巴巴通义实验室的FunASR Paraformer系列模型,对视频进行语音识别,将语音转换成文字。
    • 热词定制化:通过集成的SeACo-Paraformer模型,用户可以指定一些实体词、人名等作为热词,以提升特定词汇的识别准确率。
    • 说话人识别:集成CAM++说话人识别模型,允许用户根据自动识别的说话人ID裁剪出特定说话人的视频段落。
    • 视频裁剪:用户可以选择识别结果中的文本片段或指定说话人,通过点击裁剪按钮获取对应视频片段。
    • Gradio交互界面:通过Gradio实现的交互界面,简化了视频剪辑的操作流程,用户可以在服务端搭建服务并通过浏览器进行剪辑。
    • 多段剪辑支持:FunClip支持用户对视频进行多段剪辑,提供了灵活的编辑能力。
    • 自动生成字幕:剪辑后的视频可以自动生成全视频和目标段落的SRT字幕文件,方便用户添加或编辑字幕。
    • 命令行调用:除了图形界面,FunClip还支持通过命令行进行视频识别和裁剪,提供了更灵活的使用方式。

    FunClip的官网入口

    如何使用FunClip

    方法一:本地部署Gradio版本

    首先确定电脑上已安装Python和Git,然后打开终端依次输入并运行以下命令

    git clone https://github.com/alibaba-damo-academy/FunClip.git

    cd FunClip && pip install -r ./requirements.txt

    python funclip/launch.py

    最后浏览器访问localhost:7860即可体验FunClip

    方法二:在线体验魔搭社区Demo

    访问魔搭社区提供的在线Demo,然后按照下方的步骤操作:

    1. 上传视频或音频文件(或使用下方的用例体验),点击「识别」按钮
    2. 复制识别结果中所需的文字至右上方,或者右设置说话人标识,设置偏移与字幕配置(可选)
    3. 点击「裁剪」按钮或「裁剪并添加字幕」按钮获得结果

    方法三:命令行运行相关指令

    打开终端依次输入并运行以下命令

    # 1. 克隆GitHub源代码
    git clone https://github.com/alibaba-damo-academy/FunClip.git
    # 2. 安装Python依赖
    cd FunClip && pip install -r ./requirments.txt
    # 3. 添加视频进行识别
    python funclip/videoclipper.py --stage 1 \
    --file examples/2022云栖大会_片段.mp4 \
    --output_dir ./output
    # ./output/目录下将输出识别结果和.srt字幕文件
    # 4. 裁剪命令
    python funclip/videoclipper.py --stage 2 \
    --file examples/2022云栖大会_片段.mp4 \
    --output_dir ./output \
    --dest_text '我们把它跟乡村振兴去结合起来,利用我们的设计的能力' \
    --start_ost 0 \
    --end_ost 100 \
    --output_file './output/res.mp4'
  • Llama 3 – Meta开源推出的新一代大语言模型

    Llama 3是什么

    Llama 3是Meta公司最新开源推出的新一代大型语言模型(LLM),包含8B和70B两种参数规模的模型,标志着开源人工智能领域的又一重大进步。作为Llama系列的第三代产品,Llama 3不仅继承了前代模型的强大功能,还通过一系列创新和改进,提供了更高效、更可靠的AI解决方案,旨在通过先进的自然语言处理技术,支持广泛的应用场景,包括但不限于编程、问题解决、翻译和对话生成。

    Llama 3

    Llama 3的系列型号

    Llama 3目前提供了两种型号,分别为8B(80亿参数)和70B(700亿参数)的版本,这两种型号旨在满足不同层次的应用需求,为用户提供了灵活性和选择的自由度。

    • Llama-3-8B:8B参数模型,这是一个相对较小但高效的模型,拥有80亿个参数。专为需要快速推理和较少计算资源的应用场景设计,同时保持了较高的性能标准。
    • Llama-3-70B:70B参数模型,这是一个更大规模的模型,拥有700亿个参数。它能够处理更复杂的任务,提供更深入的语言理解和生成能力,适合对性能要求更高的应用。

    后续,Llama 3 还会推出 400B 参数规模的模型,目前还在训练中。Meta 还表示等完成 Llama 3 的训练,还将发布一份详细的研究论文。

    Llama 3的官网入口

    Llama 3的改进地方

    • 参数规模:Llama 3提供了8B和70B两种参数规模的模型,相比Llama 2,参数数量的增加使得模型能够捕捉和学习更复杂的语言模式。
    • 训练数据集:Llama 3的训练数据集比Llama 2大了7倍,包含了超过15万亿个token,其中包括4倍的代码数据,这使得Llama 3在理解和生成代码方面更加出色。
    • 模型架构:Llama 3采用了更高效的分词器和分组查询注意力(Grouped Query Attention, GQA)技术,提高了模型的推理效率和处理长文本的能力。
    • 性能提升:通过改进的预训练和后训练过程,Llama 3在减少错误拒绝率、提升响应对齐和增加模型响应多样性方面取得了进步。
    • 安全性:引入了Llama Guard 2等新的信任和安全工具,以及Code Shield和CyberSec Eval 2,增强了模型的安全性和可靠性。
    • 多语言支持:Llama 3在预训练数据中加入了超过30种语言的高质量非英语数据,为未来的多语言能力打下了基础。
    • 推理和代码生成:Llama 3在推理、代码生成和指令跟随等方面展现了大幅提升的能力,使其在复杂任务处理上更加精准和高效。

    Llama 3的性能评估

    根据Meta的官方博客,经指令微调后的 Llama 3 8B 模型在MMLU、GPQA、HumanEval、GSM-8K、MATH等数据集基准测试中都优于同等级参数规模的模型(Gemma 7B、Mistral 7B),而微调后的 Llama 3 70B 在 MLLU、HumanEval、GSM-8K 等基准测试中也都优于同等规模的 Gemini Pro 1.5 和 Claude 3 Sonnet 模型。

    Meta Llama 3的性能

    此外,Meta还开发了一套新的高质量人类评估集,包含 1800 个提示,涵盖 12 个关键用例:寻求建议、头脑风暴、分类、封闭式问答、编码、创意写作、提取、塑造角色/角色、开放式问答、推理、重写和总结。通过与Claude Sonnet、Mistral Medium和GPT-3.5等竞争模型的比较,人类评估者基于该评估集进行了偏好排名,结果显示Llama 3在真实世界场景中的性能非常出色,最低都有52.9%的胜出率。

    Llama 3人类评估对比

    Llama 3的技术架构

    • 解码器架构:Llama 3采用了解码器(decoder-only)架构,这是一种标准的Transformer模型架构,主要用于处理自然语言生成任务。
    • 分词器和词汇量:Llama 3使用了具有128K个token的分词器,这使得模型能够更高效地编码语言,从而显著提升性能。
    • 分组查询注意力(Grouped Query Attention, GQA):为了提高推理效率,Llama 3在8B和70B模型中都采用了GQA技术。这种技术通过将注意力机制中的查询分组,减少了计算量,同时保持了模型的性能。
    • 长序列处理:Llama 3支持长达8,192个token的序列,使用掩码(masking)技术确保自注意力(self-attention)不会跨越文档边界,这对于处理长文本尤其重要。
    • 预训练数据集:Llama 3在超过15TB的token上进行了预训练,这个数据集不仅规模巨大,而且质量高,为模型提供了丰富的语言信息。
    • 多语言数据:为了支持多语言能力,Llama 3的预训练数据集包含了超过5%的非英语高质量数据,涵盖了超过30种语言。
    • 数据过滤和质量控制:Llama 3的开发团队开发了一系列数据过滤管道,包括启发式过滤器、NSFW(不适合工作场所)过滤器、语义去重方法和文本分类器,以确保训练数据的高质量。
    • 扩展性和并行化:Llama 3的训练过程中采用了数据并行化、模型并行化和流水线并行化,这些技术的应用使得模型能够高效地在大量GPU上进行训练。
    • 指令微调(Instruction Fine-Tuning):Llama 3在预训练模型的基础上,通过指令微调进一步提升了模型在特定任务上的表现,如对话和编程任务。

    如何使用Llama 3

    开发人员

    Meta已在GitHub、Hugging Face、Replicate上开源其Llama 3模型,开发人员可使用torchtune等工具对Llama 3进行定制和微调,以适应特定的用例和需求,感兴趣的开发者可以查看官方的入门指南并前往下载部署。

    普通用户

    不懂技术的普通用户想要体验Llama 3可以通过以下方式使用:

  • VASA-1 – 微软推出的静态照片对口型视频生成框架

    VASA-1是什么

    VASA-1是由微软亚洲研究院提出的一个将静态照片转换为对口型动态视频的生成框架,能够根据单张静态人脸照片和一段语音音频,实时生成逼真的3D说话面部动画。该技术通过精确的唇音同步、丰富的面部表情细节和自然的头部动作,创造出高度真实感和活力的虚拟角色。VASA-1的核心创新在于其全貌面部动态和头部运动生成模型,该模型在面部潜在空间中工作,能够高效地生成高分辨率的视频,同时支持在线生成和低延迟。

    VASA-1

    VASA-1的功能特性

    • 逼真的唇音同步:VASA-1能够生成与输入语音音频精确同步的唇部动作,提供高度逼真的说话效果。
    • 丰富的面部表情:除了唇部动作,VASA-1还能捕捉并再现一系列复杂的面部表情和微妙的情感细节,增加动画的真实感。
    • 自然头部运动:模型能够模拟自然的头部动作,如转动和倾斜,使得生成的说话面部视频更加生动。
    • 高效视频生成:VASA-1支持在线生成高达40 FPS的512×512分辨率视频,且具有极低的初始延迟,适合实时应用。
    • 灵活可控生成:通过接受可选信号作为条件,如主要目光方向、头部距离和情感偏移,VASA-1能够控制生成过程,提高输出的多样性和适应性。
    • 处理不同输入:VASA-1能够处理训练分布之外的照片和音频输入,如艺术照片、歌唱音频和非英语语音。

    VASA-1的官网入口

    VASA-1的工作原理

    VASA-1的工作原理

    • 输入准备:VASA-1接受两个主要输入:一张任意个体的静态面部图像和一个来自任何个人的语音音频剪辑。
    • 面部特征提取:使用面部编码器从输入的静态面部图像中提取3D外观体积、身份代码、头部姿态和面部动态代码等特征。
    • 面部潜在空间建模:构建一个面部潜在空间,该空间能够高度解耦面部动态和其他因素(如身份和外观),并具有丰富的表情细节和动态细微差别的表达能力。
    • 扩散模型训练:训练一个基于扩散的模型(Diffusion Transformer),该模型能够在面部潜在空间中生成全面的面部动态和头部运动,条件是给定的音频和可选的控制信号。
    • 条件信号整合:将主要目光方向、头部距离和情感偏移等控制信号作为条件,输入到扩散模型中,以指导面部动态的生成。
    • 面部动态和头部运动生成:利用训练好的扩散模型,根据输入的音频特征和条件信号,生成面部动态和头部运动的潜在代码序列。
    • 视频帧生成:使用面部解码器和从编码器中提取的外观及身份特征,根据生成的面部动态和头部运动潜在代码,产生最终的视频帧。
  • Parler-TTS – Hugging Face开源的文本转语音模型

    Parler-TTS是什么

    Parler-TTS是由Hugging Face推出的一款开源的文本到语音(TTS)模型,能够通过输入提示描述模仿特定说话者的风格(性别、音调、说话风格等),生成高质量、听起来自然的语音。该轻量级的TTS模型是完全开源的,包括所有数据集、预处理、训练代码和权重都公开,旨在促进高质量、可控制的TTS模型的创新发展。Parler-TTS的架构基于MusicGen,包含文本编码器、解码器和音频编解码器,通过集成文本描述和添加嵌入层优化了声音生成。

    Parler-TTS

    Parler-TTS的官网入口

    Parler-TTS的功能特性

    • 高质量语音生成:Parler-TTS能够根据文本输入生成高质量、自然听起来的语音,模仿不同的说话风格,如性别、音高和表达方式等。
    • 风格多样的语音输出:通过详细的文本描述,用户可以控制生成的语音风格,包括说话者的年龄、情感、速度和环境等特征。
    • 开源架构:Parler-TTS基于MusicGen架构,包含文本编码器、解码器和音频编解码器,允许研究者和开发者自由访问和修改代码,以适应不同的需求和应用。
    • 易于安装和使用:Parler-TTS提供了简单的安装指令,用户可以通过一行命令安装,并提供了易于理解的代码示例,使得即使是初学者也能快速上手使用。
    • 自定义训练和微调:用户可以根据自己的数据集对Parler-TTS进行训练和微调,以生成特定风格或口音的语音。
    • 伦理和隐私保护:Parler-TTS避免了使用可能侵犯隐私的声音克隆技术,而是通过文本提示来控制语音生成,确保了技术的伦理性和合规性。

    如何体验Parler-TTS

    1. 访问Parler-TTS的Hugging Face Demo,然后在Input Text处输入你想要转录的文字
    2. 在Description处输入对声音的提示描述
    3. 最后点击Generate Audio即可生成声音

    Parler-TTS Demo

    Parler-TTS的技术架构

    Parler-TTS的架构是一个高度灵活和可定制的系统,基于MusicGen架构进行了一些关键的改进和调整:

    1. 文本编码器
      • 文本编码器的作用是将文本描述映射到一系列隐藏状态表示。
      • Parler-TTS使用的是一个冻结的文本编码器,该编码器完全初始化自Flan-T5模型。这意味着编码器的参数在训练过程中不会改变,它仅仅用于将输入的文本转换为模型可以理解的内部表示。
    2. Parler-TTS解码器
      • 解码器是一个语言模型,它基于编码器的隐藏状态表示自回归地生成音频标记(或称为代码)。
      • 这个过程中,解码器会逐步生成语音的音频表示,每一步都会考虑到之前的输出和文本描述,从而生成连贯且符合描述的语音。
    3. 音频编解码器
      • 音频编解码器的作用是将解码器预测的音频标记转换回可听的音频波形。
      • Parler-TTS使用的是Descript提供的DAC模型,但也可以选择使用其他编解码器模型,例如EnCodec。
    4. 架构的改进
      • Parler-TTS在MusicGen架构的基础上做了一些细微的调整,以提高模型的性能和灵活性。
      • 文本描述不仅通过文本编码器处理,还用于解码器的交叉注意力层,这使得解码器能够更好地结合文本描述和音频生成。
      • 文本提示通过嵌入层处理后与解码器输入的隐藏状态进行拼接,这样可以将文本提示的语义信息直接融入到语音生成的过程中。
      • 音频编码器选择DAC而不是Encodec,因为DAC在质量上表现更佳。