Category: AI项目和框架

  • Grok-1 – 马斯克旗下xAI开源的大模型,参数量3140亿

    Grok-1是什么

    Grok-1 是由马斯克旗下的人工智能初创公司 xAI 开发的一款大型语言模型,是一个混合专家(MoE)模型,拥有 3140 亿参数,使其成为目前参数量最大的开源大语言模型。Grok-1 的开发和训练过程遵循了开源的原则,其权重和网络架构已经公开,基于Apache 2.0许可,允许用户自由地使用、修改和分发,用于个人和商业用途。

    Grok-1

    Grok-1的官网入口

    Grok-1的模型信息

    根据xAI官方的模型介绍(https://x.ai/model-card/),Grok-1的信息如下:

    项目 详细信息
    模型细节 Grok-1是一个基于Transformer的自回归模型,预训练用于下一个token预测。该模型通过来自人类和早期Grok-0模型的广泛反馈进行了微调。初始版本的Grok-1具有8192个token的上下文长度,并在2023年11月发布。
    预期用途 Grok-1旨在用作Grok聊天机器人背后的引擎,用于包括问答、信息检索、创意写作和编码辅助在内的自然语言处理任务。
    局限性 虽然Grok-1在信息处理方面表现出色,但是需要人类审查Grok-1的工作以确保准确性。Grok-1语言模型没有能力独立搜索网络。在Grok中部署时,搜索工具和数据库增强了模型的能力和事实性。即使在访问外部信息源的情况下,模型仍然可能产生幻觉。
    训练数据 Grok-1发布版本使用的训练数据来自截至2023年第三季度的互联网和xAI的AI训练人员提供的数据。
    评估 Grok-1在一系列推理基准任务和精选的外国数学考试问题上进行了评估。xAI已与早期alpha测试者接触,评估了包括对抗性测试在内的Grok-1版本。xAI正在通过Grok早期访问扩大我们的早期采用者范围,以便进行封闭beta测试。

    Grok-1的技术细节

    • 基础模型和训练:Grok-1是基于大量文本数据进行训练的,没有针对任何具体任务进行微调。这意味着它是一个通用的语言模型,可以应用于多种不同的自然语言处理任务。它的训练从头开始,使用JAX库和Rust语言组成的自定义训练堆栈。
    • 参数数量:Grok-1拥有3140亿个参数,是目前参数量最大的开源大语言模型。这些参数在给定token上的激活权重为25%,表明了模型的规模和复杂性。
    • 混合专家模型(MoE):Grok-1采用了混合专家系统的设计,这是一种将多个专家网络(expert networks)结合起来的方法,以提高模型的效率和性能。在Grok-1中,每个token从8个专家中选择2个进行处理。
    • 激活参数:Grok-1的激活参数数量为860亿,这比Llama-2的70B参数还要多,表明其在处理语言任务时的潜在能力。
    • 嵌入和位置嵌入:Grok-1使用旋转嵌入而非固定位置嵌入,这是一种处理序列数据的方法,可以提高模型处理长文本的能力。Tokenizer词汇大小为131,072,类似于GPT-4,嵌入大小为6,144。
    • Transformer层:模型包含64个Transformer层,每层都包含一个解码器层,由多头注意力块和密集块组成。多头注意力块有48个头用于查询,8个头用于键/值(KV),KV大小为128。密集块(密集前馈块)的加宽因子为8,隐藏层大小为32,768。
    • 量化:Grok-1还提供了一些权重的8bit量化内容,这有助于减少模型的存储和计算需求,使其更适合在资源有限的环境中运行。
    • 运行要求:由于Grok-1是一个规模较大的模型(314B参数),因此需要有足够的GPU内存的机器才能运行。据估计,可能需要一台拥有628GB GPU内存的机器(每个参数2字节)。
  • AutoDev – 微软推出的AI编程和程序开发智能体框架

    AutoDev是什么

    AutoDev是由微软的研究人员推出的一个AI编程工具,专门设计用于自主规划和执行复杂的软件工程任务,如代码编写、调试、测试和版本控制等。AutoDev的目标是提高软件开发的效率和质量,同时减少开发人员在某些重复性或繁琐任务上的负担。

    AutoDev

    AutoDev的主要功能

    • 目标定义与任务分配:用户可以定义复杂的软件工程目标,AutoDev将这些目标分配给自主AI智能体来实现。这包括但不限于代码编写、测试、构建和部署等任务。
    • 代码生成:AutoDev能够根据用户的需求生成代码,这可能包括新功能的实现、现有代码的改进或优化等。
    • 测试生成与执行:AutoDev可以创建测试用例,并执行这些测试来验证代码的正确性。它能够分析测试结果,并在必要时对代码进行调整以修复错误。
    • 代码维护与调试:AutoDev能够对现有代码进行审查和维护,包括识别和修复潜在的错误、优化代码性能以及更新代码以适应新的需求。
    • 版本控制:AutoDev支持Git操作,可以帮助管理代码版本,包括提交、推送和合并等操作。
    • 文件编辑与管理:AutoDev可以执行文件编辑任务,如添加、修改或删除代码库中的文件内容。
    • 检索与信息提取:AutoDev能够从代码库中检索信息,帮助完成如代码复用、模式识别和知识提取等任务。
    • 构建与执行:AutoDev可以编译、构建和执行代码库,确保代码的可运行性和性能。
    • 多智能体协作:AutoDev的架构支持多个智能体协同工作,每个智能体都有特定的角色和责任,共同完成复杂的软件工程任务。
    • 对话管理:AutoDev通过对话管理器与用户进行交互,管理会话历史,并确保用户与AI智能体之间的有效沟通。
    • 安全与隐私维护:AutoDev在Docker环境中执行任务,确保操作的安全性和隐私性,防止潜在的安全风险。
    • 自我评估与迭代:AutoDev能够自我评估其生成的代码和测试,通过迭代过程不断改进和优化任务执行的效果。

    AutoDev的架构组成

    AutoDev主要由四个功能模块组成,该技术架构设计使其能够自动化复杂的软件工程任务,同时保持高效、安全和可控。这种架构允许AutoDev在没有人类干预的情况下自主完成任务,同时提供了灵活性,允许用户根据自己的需求定制AutoDev的行为。

    AutoDev的工作流程

    1. 对话管理器(Conversation Manager)
      • 负责初始化和管理会话历史。
      • 维护来自AI智能体和评估环境的操作结果。
      • 包含解析器、输出组织器和对话终止器,用于解释代理响应、组织输出信息和决定会话结束的时机。
    2. 工具库(Tools Library)
      • 提供了一系列命令,使AI智能体能够对代码库执行操作。
      • 包括文件编辑、检索、构建与执行、测试与验证、Git操作和通信等类别的命令。
    3. 代理调度器(Agents Scheduler)
      • 负责协调AI智能体以实现用户定义的目标。
      • 使用循环、基于令牌或基于优先级的算法来决定代理参与对话的顺序和方式。
    4. 评估环境(Evaluation Environment)
      • 在Docker容器中运行,安全地执行文件编辑、检索、构建、执行和测试命令。
      • 提供了一个简化的界面给AI智能体,抽象了底层命令的复杂性。
    5. AI智能体(Agents)
      • 由大型语言模型(如OpenAI GPT-4)和为代码生成优化的小型语言模型组成。
      • 接收目标和对话历史,根据规则和行动配置指定行动。
    6. 规则、行动和目标配置
      • 用户通过YAML文件配置规则和操作来启动流程。
      • 定义了AI代理可以执行的命令(操作)和用户可以启用/禁用的特定命令。
  • Follow-Your-Click – 腾讯等开源的图像到视频模型,可生成局部动画

    Follow-Your-Click是什么

    Follow-Your-Click是一个由来自腾讯公司(混元团队)联合清华大学和香港科技大学的研究人员共同研发的图像到视频(Image-to-Video,简称I2V)生成模型,允许用户通过简单的点击和简短的动作提示来生成局部图像动画,从而将静态图像转换为动态视频。该模型旨在解决现有的大多数图像到视频方法并不具备局部动画的特性,只能移动整个场景。

    Follow Your Click

    Follow-Your-Click的官网入口

    Follow-Your-Click的主要功能

    • 简单友好的交互:Follow-Your-Click提供了直观的用户控制界面,用户可以通过简单的点击来指定动画区域,并通过简短的提示词来定义动画类型和动作。
    • 局部动画生成:用户可以通过点击图像中的特定区域,使这些区域产生动画效果。即用户可以选择图像的任何部分,并为其添加动态效果,如让物体微笑、摇摆或移动。
    • 多对象动画:模型支持对图像中的多个对象同时进行动画处理,允许用户创建更为丰富和复杂的动态场景。
    • 简短动作提示:用户只需提供简短的动作描述,模型就能够理解并生成相应的动画效果。简化了动画制作过程,使得用户无需进行复杂的操作或提供冗长的描述。
    • 高质量视频生成:模型采用了先进的技术策略,如第一帧遮罩策略和基于光流的运动幅度控制,以确保生成的视频具有高质量和真实感。
    • 运动速度控制:模型还允许用户控制动画对象的运动速度,通过精确的控制来满足不同的动画需求。

    Follow-Your-Click的工作原理

    1. 用户交互用户首先通过点击图像上的特定位置来选择需要动画化的对象区域。这种交互方式简单直观,不需要用户进行复杂的操作或提供详细的描述。接着,用户提供一个简短的动作提示,如“摇动身体”或“微笑”,来指定所选区域应执行的动作。
    2. 图像分割为了将用户的点击转换为可以用于动画的区域掩码,框架集成了SAM(Segment Anything)工具。SAM是一个可提示的图像分割工具,能够根据用户的点击生成高质量的对象掩码。Follow Your Click工作架构
    3. 第一帧遮罩策略为了提高视频生成质量,框架采用了第一帧遮罩策略。在训练过程中,输入图像的潜在表示(latent representation)会被随机遮罩一部分,以增强模型学习时间相关性的能力。这种方法显著提高了生成视频的质量。
    4. 运动增强模块为了使模型能够更好地响应简短的动作提示,框架设计了一个运动增强模块。该模块通过一个新的交叉注意力层来增强模型对动作相关词汇的响应。在训练阶段,该模块使用短动作提示进行训练,而在推理阶段,这些提示被输入到运动增强模块和U-Net的交叉注意力模块中。
    5. 基于光流的运动幅度控制传统的运动强度控制依赖于调整每秒帧数(FPS)。然而,这种方法不能精确控制单个对象的运动速度。为了准确学习运动速度,框架提出了一种基于光流的运动幅度控制方法。通过计算光流的平均幅度并将其投影到位置嵌入中,可以在所有帧中一致地应用运动强度。
    6. 视频生成在推理阶段,用户点击的位置和简短的动作提示被用来生成动画视频。模型结合了用户指定的区域掩码和动作提示,生成了一系列连贯的动画帧,同时保持了输入图像的其余部分静止。
  • ComflowySpace – 免费开源且简单易用的ComfyUI整合工具

    ComflowySpace是什么

    ComflowySpace是一款专为简化和增强AI图像及视频生成工具使用体验而设计的开源软件,基于ComfyUI和Stable Diffusion,旨在提供一个更加用户友好和精美高效的工作台界面。ComflowySpace由国内的开发者Marc Chen开发并开源,提供Windows和Mac客户端,个人可免费使用。相比SD WebUI和ComfyUI的上手难度,ComflowySpace提供更加易上手和更具互动性的体验,即使是没有技术背景的用户也能够轻松上手,利用AI技术进行图像和视频的生成。

    ComflowySpace

    ComflowySpace的主要功能

    • 一键安装:ComflowySpace提供了开箱即用的Windows和Mac软件,简化了安装过程,用户可以通过一键安装功能快速完成软件的部署,大大减少了传统安装过程中可能遇到的问题和时间消耗。
    • 工作流管理:软件内置了工作流管理功能,允许用户查看、管理和运行历史工作流。用户无需手动导出和保存他们的工作流,从而提高了工作效率。
    • 多标签页支持:ComflowySpace支持多标签页功能,用户可以同时打开和运行多个工作流,这对于需要同时处理多个项目的多任务用户来说非常有用。
    • 模板使用:ComflowySpace提供了多种工作流模板,用户可以利用这些模板快速搭建自己的工作流,即使是初学者也能够轻松开始他们的AI创作之旅。
    • 用户友好的界面:软件对用户体验进行了优化,提供了更加直观和友好的界面设计,使得用户在使用过程中感到更加舒适和便捷。
    • 模型和插件管理:ComflowySpace提供了友好的模型和插件管理功能,用户可以根据需要导入、切换和管理不同的AI模型,以及添加扩展插件来扩展软件的功能。

    ComflowySpace ComfyUI

    ComflowySpace的官网入口

    如何使用ComflowySpace

    1. 下载软件:首先,访问 ComflowySpace 的官方 GitHub 页面或网站提供的下载链接来获取最新版本的安装包。
    2. 一键安装:根据你的操作系统,选择相应的安装包进行下载并安装。
    3. 启动应用:安装完成后,启动 ComflowySpace,软件界面会开始安装Conda、ComfyUI等依赖项。
    4. 修改语言:默认的应用程序界面为英文,可以点击左下角的齿轮按钮进入设置修改语言为中文。
    5. 工作流管理:在 ComflowySpace 中,你可以查看和管理你的工作流。如果你是新用户,可以从提供的模板中选择一个开始,或者创建一个新的工作流。
    6. 选择模板:ComflowySpace 提供了多种预设的工作流模板,你可以根据需要选择一个模板作为起点,然后根据项目需求进行调整。
    7. 编辑工作流:在工作流编辑器中,你可以根据项目的具体需求来定制工作流,如添加、删除或修改步骤,调整参数,以及导入和导出模型。
    8. 模型和插件管理:可以自由地导入和管理不同的AI模型,以及添加扩展插件来扩展功能。
    9. 运行工作流:配置好工作流后,点击运行按钮来生成图像或视频。根据工作流的复杂性和硬件配置,生成过程可能需要一些时间。
    10. 查看结果:生成完成后,你可以在 ComflowySpace 中查看结果,或将其导出到本地计算机上。
  • Pix2Gif – 微软推出的静态图像转动态GIF的扩散模型

    Pix2Gif是什么

    Pix2Gif是由微软研究院的研究人员提出的一个基于运动引导的扩散模型,专门用于将静态图像转换成动态的GIF动画/视频。该模型通过运动引导的扩散过程来实现单张图像到GIF的生成,利用文本描述和运动幅度提示作为输入,来引导图像内容的动态变化。此外,Pix2Gif还引入了感知损失,以保持生成的GIF帧与目标图像在视觉上的一致性和连贯性。

    Pix2Gif

    Pix2Gif的官网入口

    Pix2Gif的功能特性

    • 文本引导的动画生成:用户可以通过输入文本描述来指导模型生成符合特定主题或动作的GIF动画,模型会根据文本内容理解并创造出相应的动态视觉效果。
    • 运动幅度控制:Pix2Gif允许用户指定运动幅度,从而控制GIF中动作的强度和速度。这为用户提供了精细的运动控制能力,可创造出从缓慢微妙到快速剧烈的不同动态效果。
    • 运动引导的图像变换:模型使用运动引导变形模块来根据文本提示和运动幅度在空间上变换源图像的特征,创造出连贯的动态帧。
    • 感知损失优化:为了确保生成的GIF在视觉上与源图像保持一致,Pix2Gif采用了感知损失函数,以保持高级视觉特征的一致性,如颜色、纹理和形状等。

    Pix2Gif的工作原理

    Pix2Gif的工作原理基于扩散模型的原理,结合了文本引导和运动幅度控制来生成动态GIF动画。以下是Pix2Gif工作原理的详细步骤:

    Pix2Gif的工作原理

    1. 输入处理
      • 文本提示:用户提供一个描述所需动画内容的文本提示。
      • 运动幅度:用户还可以指定一个运动幅度值,该值量化了期望在GIF中表现的运动强度。
    2. 特征提取与编码
      • 源图像编码:源图像通过一个编码器(例如VQ-VAE)转换成潜在空间中的向量表示。
      • 文本嵌入:文本提示通过预训练的语言模型(如CLIP)处理,得到文本的嵌入表示。
      • 运动嵌入:运动幅度值也被嵌入为一个向量,以便与文本嵌入一起作为模型的条件输入。
    3. 运动引导变形
      • FlowNet (FNet):一个子网络,根据文本和运动嵌入生成一个光流特征图,该图表示图像中的运动方向和幅度。
      • WarpNet (WNet):另一个子网络,它使用光流特征图和源图像的潜在表示来生成一个变形后的潜在表示。
    4. 潜在扩散过程
      • 逆扩散:Pix2Gif模型在潜在空间中执行逆扩散过程,这是一个逐步去除噪声以生成清晰图像的过程。
      • 条件生成:在逆扩散过程中,模型使用文本嵌入和运动嵌入作为条件,引导生成过程以符合用户的输入提示。
    5. 感知损失
      • 高级特征一致性:为了确保生成的图像在视觉上与源图像保持一致,模型使用感知损失函数,这通常涉及到比较预训练深度网络(如VGG网络)中的特征图。
    6. 输出生成
      • 图像解码:最终,模型输出的潜在表示被解码成像素空间中的图像帧,形成动态的GIF动画。
    7. 端到端训练
      • 优化:整个模型通过端到端的方式进行训练,最小化由真实图像、文本提示和运动幅度定义的损失函数。
  • Transformer Debugger – OpenAI开源的理解和分析大模型内部的工具

    Transformer Debugger是什么

    Transformer Debugger (TDB) 是由 OpenAI 的对齐团队(Superalignment)开发的一款工具,旨在帮助研究人员和开发者更深入地理解和分析 Transformer 模型的内部结构和行为。Transformer 模型是一种深度学习架构,广泛应用于自然语言处理(NLP)领域,特别是在机器翻译、文本生成和理解等任务中。

    Transformer Debugger

    TDB 的核心功能是提供了一种无需编写代码即可快速探索模型结构的方式,结合了自动可解释性技术和稀疏自动编码器,使得用户能够直观地查看和分析模型的特定行为,例如模型为何在给定的输入(prompt)下选择输出特定的token,或者模型的注意力机制为何关注输入文本中的某些特定部分。

    GitHub源码地址:https://github.com/openai/transformer-debugger

    Transformer Debugger的功能特性

    • 无需编码的模型探索:TDB 允许用户在不编写代码的情况下探索模型结构,使得研究和调试过程更加直观和高效。
    • 前向传递干预:用户可以干预模型的前向传递过程,观察不同操作如何影响模型的输出,从而更好地理解模型的决策过程。
    • 组件级分析:TDB 能够识别并分析对模型行为有显著贡献的特定组件,如神经元、注意力头和自动编码器的潜在表示(latents)。
    • 自动生成解释:工具可以自动生成解释,展示导致特定组件激活的原因,帮助用户理解模型的内部工作机制。
    • 可视化界面:通过 Neuron viewer,一个基于 React 的应用程序,TDB 提供了一个用户友好的界面,用于展示和分析模型组件的信息。
    • 后端支持:Activation server 作为后端服务器,为 TDB 提供必要的数据支持,包括从公共 Azure 存储桶读取和提供数据。
    • 模型和数据集支持:开源内容包括 GPT-2 模型及其自动编码器的简单推理库,以及一些整理好的激活数据集示例,方便用户进行实验和分析。

    如何安装和设置Transformer Debugger

    1. 首先确认电脑上已安装python/pip以及node/npm等工具
    2. 建议使用虚拟环境(非必选)
      # 如果已在虚拟环境,先取消激活
      deactivate
      # 创建新的虚拟环境
      python -m venv ~/.virtualenvs/transformer-debugger
      # 激活新的虚拟环境
      source ~/.virtualenvs/transformer-debugger/bin/activate
    3. 设置完环境后,按以下步骤操作:
      git clone git@github.com:openai/transformer-debugger.git
      cd transformer-debugger
      
      # 安装神经元解释器
      pip install -e .
      
      # 安装pre-commit钩子
      pre-commit install
      
      # 安装神经元查看器
      cd neuron_viewer
      npm install
      cd ..
    4. 要运行 TDB 应用程序,请按照说明设置激活服务器后端神经元查看器前端

  • ELLA – 腾讯推出的扩散模型适配器,可增强语义对齐

    ELLA是什么

    ELLA(Efficient Large Language Model Adapter,高效的大模型适配器)是由腾讯的研究人员推出的一种新型方法,旨在提升文本到图像生成模型在处理复杂文本提示时的语义对齐能力。现有的扩散模型通常依赖于CLIP作为文本编码器,在处理包含多个对象、详细属性和复杂关系等信息的长文本提示时存在局限性。因此,研究团队提出了ELLA,使用一个时序感知语义连接器(TSC)来动态提取预训练LLM中的时序依赖条件,从而提高了模型解释复杂提示的能力。

    ELLA

    ELLA的官网入口

    ELLA的功能特性

    • 语义对齐增强:ELLA通过与大型语言模型(LLM)的结合,提高了扩散模型对文本提示中包含的多个对象、详细属性和复杂关系的理解能力,从而生成与文本更贴合的图像。
    • 时序感知语义提取:ELLA的Timestep-Aware Semantic Connector(TSC)模块能够根据扩散过程中的不同时间步动态提取语义特征,使得模型能够在生成图像的不同阶段关注不同的文本信息。
    • 无需重新训练:ELLA的设计允许其直接应用于预训练的LLM和U-Net模型,无需对这些模型进行额外的训练,从而节省了大量的计算资源和时间。
    • 兼容性:ELLA可以与现有的社区模型(如Stable Diffusion)和下游工具(如ControlNet)无缝集成,提升这些模型和工具在处理复杂文本提示时的表现。

    ELLA的工作原理

    ELLA的主要工作原理是通过一个轻量级的、可训练的时序感知语义连接器(TSC)模块,将强大的LLM的语义理解能力与现有的图像生成扩散模型相结合,从而在不重新训练整个系统的情况下,提高模型对复杂文本提示的理解和图像生成的质量。
    ELLA的工作原理

    1. 文本编码:首先,ELLA使用一个预训练的大型语言模型(LLM)来编码输入的文本提示。该LLM能够理解复杂的文本,包括多个对象、属性和关系,并提取出丰富的语义特征。
    2. 时序感知语义连接器(TSC):ELLA的核心是一个名为TSC的模块,它负责将LLM提取的文本特征与图像生成模型(如U-Net)的扩散过程相结合。TSC模块根据生成过程中的不同时间步长动态地提取和调整语义特征,以便更好地对齐文本提示和生成的图像内容。
    3. 冻结的U-Net:在ELLA的架构中,U-Net模型(用于图像生成的扩散模型)和LLM保持冻结状态,即它们的参数在ELLA的训练过程中不会被更新。这样可以避免重新训练整个模型,节省资源并保持原有模型的性能。
    4. 语义特征适应:TSC模块接收来自LLM的文本特征和时间步嵌入,然后输出固定长度的语义查询。这些查询通过交叉注意力机制与U-Net模型交互,指导图像生成过程中的噪声预测和去噪步骤。
    5. 训练TSC模块:尽管LLM和U-Net保持冻结,但TSC模块是需要训练的。它在包含高信息密度的文本-图像对数据集上进行训练,学习如何根据文本提示的不同部分和扩散过程的不同阶段提取和适应语义特征。
    6. 生成图像:在生成图像时,ELLA的TSC模块会根据文本提示和当前的扩散时间步,提供条件性的特征给U-Net模型。这些特征帮助U-Net在每个时间步生成与文本更紧密对齐的图像。
    7. 评估和优化:使用如Dense Prompt Graph Benchmark(DPGBench)这样的基准测试来评估增强模型的性能。根据评估结果,可能需要对TSC模块或训练过程进行微调,以进一步优化模型的表现。
  • PixArt-Σ – 华为推出的可生成4K高清图像的文生图模型

    PixArt-Σ是什么

    PixArt-Σ是由来自华为诺亚方舟实验室、大连理工大学和香港大学的研究人员推出的一个基于扩散Transformer架构(DiT)的文生图模型,专门设计用于从文本提示直接生成可达4K分辨率的高质量图像。该模型是在PixArt-α的基础上,通过整合高级元素和采用由弱到强式训练方法得到的更加强大的模型,不仅提高了生成图像的保真度,还改善了图像与文本提示之间的对齐程度。PixArt-Σ的生成图像在美学质量上与当前顶级的文本到图像产品不相上下,如DALL·E 3和Midjourney V6,并且在遵循文本提示方面表现出色。

    PixArt-Σ

    PixArt-Σ的官网入口

    PixArt-Σ的功能特性

    • 4K分辨率图像生成:PixArt-Σ能够直接从文本提示生成3840×2160分辨率的高清图像,无需后续处理或其他软件的介入。
    • 文本到图像的高保真转换:模型在生成图像时,能够精确地遵循文本描述的内容,确保图像与文本之间的高度一致性。
    • 高效率训练:PixArt-Σ采用了“弱到强训练”的策略,通过引入高质量数据和高效的令牌压缩技术,显著提高了训练效率。
    • 较小的模型尺寸:尽管PixArt-Σ能够生成高分辨率的图像,但其模型参数量相对较小(0.6B参数),这使得模型更加高效且易于部署。

    PixArt-Σ生成的图像对比

    PixArt-Σ的工作原理

    PixArt-Σ的工作原理基于DiT(Diffusion Transformer)架构,这是一种结合了扩散模型和Transformer架构的深度学习方法,专门用于将文本描述转换成相应的图像。以下是PixArt-Σ工作原理的详细介绍:

    1. 预训练阶段:

    在预训练阶段,PixArt-Σ使用了大量的文本-图像对来学习文本和图像之间的关联。这个过程通常包括以下几个步骤:

    • 文本编码:首先,输入的文本描述通过文本编码器(如Flan-T5)转换成一系列token的嵌入表示。在PixArt-Σ中,为了处理更复杂的描述,文本编码器的token长度被扩展到了大约300词。
    • 条件特征提取:接着,这些文本嵌入与图像的条件特征一起被送入扩散模型。条件特征提取器通常是一个预训练的神经网络,用于从文本嵌入中提取与图像生成相关的特征。
    • 扩散过程:扩散模型通过模拟一个从数据分布逐渐添加噪声的过程来学习数据的分布。在训练过程中,模型学习如何从带有噪声的数据中恢复出清晰的图像。
    • 迭代细化:通过迭代过程,模型逐渐学习如何根据文本描述生成高质量的图像。这个过程涉及到调整模型参数,使得生成的图像与真实的图像越来越接近。

    2. 由弱到强式训练:

    PixArt-Σ采用了由弱到强式训练策略,这意味着模型首先在较低质量的数据集上进行训练,然后逐步引入更高质量的数据集和更复杂的训练策略。这种方法有助于模型在有限的资源下有效地利用新数据和算法来增强性能。

    3. 高质量训练数据集(Internal-Σ):

    PixArt-Σ使用了一个新的高质量数据集,这个数据集包含了高分辨率的图像和密集且准确的描述。这些数据为模型提供了丰富的视觉信息和文本信息,有助于提高生成图像的质量和与文本描述的对齐程度。

    4. 高效的token压缩和权重初始化:

    为了生成高分辨率图像,PixArt-Σ引入了键和值token的压缩技术,以及专门设计的权重初始化方案。这些技术使得模型能够有效地处理高分辨率图像的生成,同时减少了计算资源的需求。
    PixArt-Σ键值压缩

    5. 微调技术:

    在微调阶段,PixArt-Σ通过替换更强大的变分自动编码器(VAE)、从低分辨率到高分辨率的扩展,以及从不使用KV压缩到使用KV压缩的模型演进,进一步提升了模型的性能。

    6. 生成阶段:

    在生成阶段,用户输入文本描述,模型根据学到的文本-图像关联,通过迭代过程逐步生成与描述相匹配的图像。生成的图像会根据文本描述的内容、风格和细节进行调整,以确保最终输出的图像既美观又准确地反映了文本的意图。

  • Moondream – 开源的轻量级AI视觉语言模型,可在本地快速运行

    Moondream是什么

    Moondream是一个免费开源的小型的人工智能视觉语言模型,虽然参数量小(Moondream1仅16亿,Moondream2为18.6亿)但可以提供高性能的视觉处理能力,可在本地计算机甚至移动设备或 Raspberry Pi 上运行,能够快速理解和处理输入的图像信息并对用户提出的问题进行解答。该模型由开发人员vikhyatk推出,使用SigLP、Phi-1.5和LLaVa训练数据集和模型权重初始化进行构建。Moondream基于宽松的Apache 2.0许可证,允许商用。

    Moondream

    Moondream的官网入口

    Moondream Demo

    如何安装和使用Moondream

    方法一:克隆官方GitHub库

    确认电脑上已安装Git和Python3,然后打开终端命令依次运行以下命令:

    git clone https://github.com/vikhyat/moondream.git
    cd moondream
    pip install -r requirements.txt
    python gradio_demo.py

    然后打开浏览器在moondream2 gradio界面中上传图像和输入文本提示,点击Submit即可

    方法二:使用Streamlit实现版

    同样首先确认电脑上已安装Git和Python3,然后打开终端命令依次运行以下命令:

    git clone https://github.com/Doriandarko/Moondream2-streamlit.git
    cd Moondream2-streamlit
    pip install -r requirements.txt
    streamlit run vision.py

    然后浏览器打开 http://localhost:8501 即可运行

    Moondream的应用场景

    • 监控安全集成到安全监控系统中,实时分析视频流和图像数据。如识别异常行为、可疑活动、特定物体或人员,从而帮助预防潜在的安全事件。
    • 无人机和机器人在无人机和机器人领域,进行地形识别、目标跟踪和路径规划,帮助这些设备更好地理解其周围环境。
    • 零售与购物在零售行业,Moondream可以用于分析顾客行为和购物模式,帮助零售商优化店铺布局、商品摆放和促销策略。
  • AtomoVideo – 阿里推出的高保真图像到视频生成框架

    AtomoVideo是什么

    AtomoVideo是由阿里巴巴的研究团队提出的一个高保真图像到视频(Image-to-Video, I2V)生成框架,旨在从输入的静态图像生成高质量的视频内容。该框架基于多粒度图像注入和高质量的数据集及训练策略,使其能够保持生成视频与给定参考图像之间的高保真度,同时实现丰富的运动强度和良好的时间一致性。

    相较于Runway Gen-2和Pika 1.0,AtomoVideo在保持图像细节、生成动态视频以及提供个性化和可控生成方面表现出了一定的优势。

    AtomoVideo

    AtomoVideo的官网入口

    AtomoVideo的功能特性

    • 高保真图像到视频生成:AtomoVideo能够根据用户输入的静态图像生成与之高度一致的视频内容,生成的视频在风格、内容和细节上都与原始图像保持高度相似。
    • 视频帧预测:该框架支持长视频序列的生成,通过迭代预测后续帧的方式,可以从一系列初始帧生成更长的视频内容。
    • 时间一致性和稳定性:AtomoVideo在生成视频时,注重时间上的连贯性和稳定性,确保视频播放时动作流畅,不会出现突兀的跳转或不连贯的画面。
    • 文本到视频生成:结合先进的文本到图像模型,AtomoVideo还能够实现文本到视频的生成,用户可以通过文本描述来指导视频内容的创作。
    • 个性化和可控生成:通过与个性化的文生图模型和可控生成模型的结合,AtomoVideo能够根据用户的特定需求生成定制化的视频内容。

    AtomoVideo的工作原理

    1. 整体流程:AtomoVideo 使用预训练的文本到图像(T2I)模型作为基础,并在每个空间卷积和注意力层之后添加新的一维时间卷积和时间注意力模块。在训练过程中,只有添加的时间层和输入层的参数会被更新,而T2I模型的参数保持固定。
    2. 图像信息注入:为了在生成视频中保持与输入图像的一致性,AtomoVideo 在两个不同的位置上注入图像信息。首先,通过VAE编码器将输入图像编码为低级表示,然后将其与高斯噪声结合。同时,使用CLIP图像编码器提取图像的高级语义表示,并通过交叉注意力层注入到生成过程中。
      AtomoVideo的工作原理
    3. 视频帧预测:为了实现长视频的生成,AtomoVideo采用迭代预测的方法。给定一系列初始视频帧,模型会预测接下来的帧。这种方法允许在有限的GPU内存约束下生成长视频序列。
    4. 训练和推理:在训练阶段,AtomoVideo使用内部的15M数据集,其中每个视频大约10-30秒长,并且视频的文本描述也被输入到模型中。训练过程中采用了零终端信噪比(SNR)和v-prediction策略,以提高视频生成的稳定性。模型的输入尺寸为512×512,包含24帧。在推理阶段,模型执行分类器自由引导(Classifier-Free Guidance),结合图像和文本条件注入,以提高生成输出的稳定性。
    5. 个性化视频生成:AtomoVideo在训练时固定了基础2D UNet的参数,只训练添加的参数,因此可以与社区中流行的个性化模型结合。例如,可以与epiCRealism这样的T2I模型结合,该模型擅长生成光和影效果,用于I2V生成时倾向于生成包含光元素的视频。