模型介绍
内容详情
替代品
模型简介
该模型在各类图文理解与创作应用中表现卓越,通过长上下文训练在需要大量输入输出的任务中表现优异。
模型特点
高效性能
仅用7B参数即达到GPT-4V水平,计算效率高
长上下文支持
通过24K交错图文上下文训练,可扩展至96K长上下文
多模态理解
卓越的图文理解与创作能力,支持视频、图像等多种媒体
网页生成
可根据指令、简历或截图生成网页代码
模型能力
视频理解
多图多轮对话
高分辨率图像分析
指令生成网页
简历转网页
截图转网页
使用案例
内容创作
网页设计
根据文字指令或截图自动生成网页代码
可生成完整的HTML网页,包含样式和布局
媒体分析
视频内容理解
分析视频帧画面并描述视频内容
能准确识别视频中的场景、人物和动作
多图比较
同时分析多张图片并进行比较
能识别不同图片中的对象并分析其特点
信息提取
高分辨率图像分析
从复杂信息图中提取结构化信息
能准确识别并总结信息图中的关键数据点
license: other pipeline_tag: visual-question-answering
InternLM-XComposer-2.5
InternLM-XComposer2.5 在各类图文理解与创作应用中表现卓越,仅用7B大语言模型后端即达到GPT-4V水平。该模型通过24K交错图文上下文训练,可通过RoPE外推无缝扩展至96K长上下文。这种长上下文能力使其在需要大量输入输出的任务中表现优异。
4比特量化模型
我们通过LMDeploy提供4比特量化模型以降低内存需求。内存使用对比请参阅此处。
from lmdeploy import TurbomindEngineConfig, pipeline
from lmdeploy.vl import load_image
engine_config = TurbomindEngineConfig(model_format='awq')
pipe = pipeline('internlm/internlm-xcomposer2d5-7b-4bit', backend_config=engine_config)
image = load_image('examples/dubai.png')
response = pipe(('描述这张图片', image))
print(response.text)
Transformers加载方式
使用Transformers加载InternLM-XComposer2.5模型的代码如下:
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
ckpt_path = "internlm/internlm-xcomposer2d5-7b"
tokenizer = AutoTokenizer.from_pretrained(ckpt_path, trust_remote_code=True).cuda()
# 设置`torch_dtype=torch.floatb16`以bfloat16格式加载模型,否则会以float32加载可能导致内存不足
model = AutoModelForCausalLM.from_pretrained(ckpt_path, torch_dtype=torch.bfloat16, trust_remote_code=True).cuda()
model = model.eval()
快速开始
我们提供简单示例展示如何使用🤗 Transformers运行InternLM-XComposer2.5。
视频理解
import torch
from transformers import AutoModel, AutoTokenizer
torch.set_grad_enabled(False)
# 初始化模型和分词器
model = AutoModel.from_pretrained('internlm/internlm-xcomposer2d5-7b', torch_dtype=torch.bfloat16, trust_remote_code=True).cuda().eval()
tokenizer = AutoTokenizer.from_pretrained('internlm/internlm-xcomposer2d5-7b', trust_remote_code=True)
model.tokenizer = tokenizer
query = '这是视频的若干帧画面。请详细描述该视频内容'
image = ['./examples/liuxiang.mp4',]
with torch.autocast(device_type='cuda', dtype=torch.float16):
response, his = model.chat(tokenizer, query, image, do_sample=False, num_beams=3, use_meta=True)
print(response)
#视频开篇展现了一位身着红黄相间运动服的运动员,服装正面印有"CHINA"字样,正在为比赛做准备。背景可见奥运五环标志,表明这是奥运会赛场。随着比赛开始,运动员们全力冲向跨栏,刘翔依然穿着标志性的红黄运动服,最终以胜利姿态冲过终点线,观众席爆发出热烈欢呼。视频结尾特写刘翔沉浸在胜利喜悦中,奥运五环始终象征着这场赛事的重要意义。
query = '告诉我刘翔的运动员编号'
image = ['./examples/liuxiang.mp4',]
with torch.autocast(device_type='cuda', dtype=torch.float16):
response, _ = model.chat(tokenizer, query, image, history=his, do_sample=False, num_beams=3, use_meta=True)
print(response)
#视频中刘翔运动服上显示的运动员编号是"1363"。
多图多轮对话
import torch
from transformers import AutoModel, AutoTokenizer
torch.set_grad_enabled(False)
# 初始化模型和分词器
model = AutoModel.from_pretrained('internlm/internlm-xcomposer2d5-7b', torch_dtype=torch.bfloat16, trust_remote_code=True).cuda().eval()
tokenizer = AutoTokenizer.from_pretrained('internlm/internlm-xcomposer2d5-7b', trust_remote_code=True)
model.tokenizer = tokenizer
query = '图1 <ImageHere>; 图2 <ImageHere>; 图3 <ImageHere>; 我想从这三款车中选购一辆,请逐一分析它们的优缺点'
image = ['./examples/cars1.jpg',
'./examples/cars2.jpg',
'./examples/cars3.jpg',]
with torch.autocast(device_type='cuda', dtype=torch.float16):
response, his = model.chat(tokenizer, query, image, do_sample=False, num_beams=3, use_meta=True)
print(response)
#分析各车型需综合考虑品牌声誉、性能、设计、成本和维护等因素:
#1. 奔驰:优势-以豪华可靠著称,提供高舒适度、先进技术和精湛工艺,图中SUV车型适合城市与越野多场景;劣势-价格通常高于其他品牌,豪华定位可能导致更频繁的维护需求。
#2. 布加迪:优势-以极致速度与动力闻名,图中跑车搭载高性能引擎和空气动力学设计;劣势-价格极其昂贵,需要专业维护,日常驾驶实用性较低。
#3. 宝马:优势-以创新工程和设计闻名,图中电动车具有低排放、低噪音和潜在低使用成本优势;劣势-续航里程可能限制长途出行,初始购置成本较高。
#最终选择取决于买家对舒适性、性能、环保性和预算的优先级。
query = '图4 <ImageHere>; 请分析图4中的车辆'
image.append('./examples/cars4.jpg')
with torch.autocast(device_type='cuda', dtype=torch.float16):
response, _ = model.chat(tokenizer, query, image, do_sample=False, num_beams=3, history= his, use_meta=True)
print(response)
#图4中的红色跑车为法拉利,意大利传奇超跑制造商:优势-象征速度、奢华与工程巅峰,红色涂装增强视觉冲击力;劣势-价格极其昂贵,需要专业维护,日常实用性较低。相较前几款车型,法拉利代表汽车工业的极致表现,但高昂成本使其更偏向收藏而非日常使用。
高分辨率图像理解
import torch
from transformers import AutoModel, AutoTokenizer
torch.set_grad_enabled(False)
# 初始化模型和分词器
model = AutoModel.from_pretrained('internlm/internlm-xcomposer2d5-7b', torch_dtype=torch.bfloat16, trust_remote_code=True).cuda().eval()
tokenizer = AutoTokenizer.from_pretrained('internlm/internlm-xcomposer2d5-7b', trust_remote_code=True)
model.tokenizer = tokenizer
query = '详细分析给定信息图'
image = ['./examples/dubai.png']
with torch.autocast(device_type='cuda', dtype=torch.float16):
response, _ = model.chat(tokenizer, query, image, do_sample=False, num_beams=3, use_meta=True)
print(response)
#该信息图系统呈现迪拜的多项特征:从太空可见的最大人工岛棕榈岛;1968年全市仅数辆汽车与现今150万辆的对比;拥有世界最长金链和全球10大最高酒店中的7座;近乎零的犯罪率和零所得税;运营着全球20%的起重机;当地人口17%为阿联酋人,83%为移民;世界最大商场迪拜购物中心含1200家店铺;无标准地址系统(无邮编、区号或邮政服务);哈利法塔过高导致顶层居民斋月开斋需延迟;建有气候控制城市;阿拉伯塔酒店皇家套房每晚2.4万美元;四位列名富豪净资产约等于洪都拉斯GDP。
指令生成网页
import torch
from transformers import AutoModel, AutoTokenizer
torch.set_grad_enabled(False)
# 初始化模型和分词器
model = AutoModel.from_pretrained('internlm/internlm-xcomposer2d5-7b', torch_dtype=torch.bfloat16, trust_remote_code=True).cuda().eval()
tokenizer = AutoTokenizer.from_pretrained('internlm/internlm-xcomposer2d5-7b', trust_remote_code=True)
model.tokenizer = tokenizer
query = '为科研机构"上海AI实验室"创建网站。顶部导航栏为蓝色,左侧展示实验室Logo图片,右侧文字描述机构使命,下方展示多个研究项目图片。'
with torch.autocast(device_type='cuda', dtype=torch.float16):
response = model.write_webpage(query, seed=202, task='指令感知网页生成', repetition_penalty=3.0)
print(response)
# 生成结果参见Instruction-aware_Webpage_Generation.html
查看指令生成网页结果。
简历转网页
import torch
from transformers import AutoModel, AutoTokenizer
torch.set_grad_enabled(False)
# 初始化模型和分词器
model = AutoModel.from_pretrained('internlm/internlm-xcomposer2d5-7b', torch_dtype=torch.bfloat16, trust_remote_code=True).cuda().eval()
tokenizer = AutoTokenizer.from_pretrained('internlm/internlm-xcomposer2d5-7b', trust_remote_code=True)
model.tokenizer = tokenizer
## 输入需为Markdown格式简历
query = './examples/resume.md'
with torch.autocast(device_type='cuda', dtype=torch.float16):
response = model.resume_2_webpage(query, seed=202, repetition_penalty=3.0)
print(response)
查看简历转网页结果。
截图转网页
import torch
from transformers import AutoModel, AutoTokenizer
torch.set_grad_enabled(False)
# 初始化模型和分词器
model = AutoModel.from_pretrained('internlm/internlm-xcomposer2d5-7b', torch_dtype=torch.bfloat16, trust_remote_code=True).cuda().eval()
tokenizer = AutoTokenizer.from_pretrained('internlm/internlm-xcomposer2d5-7b', trust_remote_code=True)
model.tokenizer = tokenizer
query = '使用Tailwind CSS根据网页截图生成HTML代码'
image = ['./examples/screenshot.jpg']
with torch.autocast(device_type='cuda', dtype=torch.float16):
response = model.screen_2_webpage(query, image, seed=202, repetition_penalty=3.0)
print(response)
查看截图转网页结果。
Clip Vit Large Patch14 336
基于Vision Transformer架构的大规模视觉语言预训练模型,支持图像与文本的跨模态理解
文本生成图像
Transformers

C
openai
5.9M
241
Fashion Clip
MIT
FashionCLIP是基于CLIP开发的视觉语言模型,专门针对时尚领域进行微调,能够生成通用产品表征。
文本生成图像
Transformers

英语
F
patrickjohncyh
3.8M
222
Gemma 3 1b It
Gemma 3是Google推出的轻量级先进开放模型系列,基于与Gemini模型相同的研究和技术构建。
文本生成图像
Transformers

G
google
2.1M
347
Blip Vqa Base
Bsd-3-clause
BLIP是一个统一的视觉语言预训练框架,擅长视觉问答任务,通过语言-图像联合训练实现多模态理解与生成能力
文本生成图像
Transformers

B
Salesforce
1.9M
154
CLIP ViT H 14 Laion2b S32b B79k
MIT
基于OpenCLIP框架在LAION-2B英文数据集上训练的视觉-语言模型,支持零样本图像分类和跨模态检索任务
文本生成图像
Safetensors
C
laion
1.8M
368
CLIP ViT B 32 Laion2b S34b B79k
MIT
基于OpenCLIP框架在LAION-2B英语子集上训练的视觉-语言模型,支持零样本图像分类和跨模态检索
文本生成图像
Safetensors
C
laion
1.1M
112
Pickscore V1
PickScore v1 是一个针对文本生成图像的评分函数,可用于预测人类偏好、评估模型性能和图像排序等任务。
文本生成图像
Transformers

P
yuvalkirstain
1.1M
44
Owlv2 Base Patch16 Ensemble
Apache-2.0
OWLv2是一种零样本文本条件目标检测模型,可通过文本查询在图像中定位对象。
文本生成图像
Transformers

O
google
932.80k
99
Llama 3.2 11B Vision Instruct
Llama 3.2 是 Meta 发布的多语言多模态大型语言模型,支持图像文本到文本的转换任务,具备强大的跨模态理解能力。
文本生成图像
Transformers

支持多种语言
L
meta-llama
784.19k
1,424
Owlvit Base Patch32
Apache-2.0
OWL-ViT是一个零样本文本条件目标检测模型,可以通过文本查询搜索图像中的对象,无需特定类别的训练数据。
文本生成图像
Transformers

O
google
764.95k
129
精选推荐AI模型
Llama 3 Typhoon V1.5x 8b Instruct
专为泰语设计的80亿参数指令模型,性能媲美GPT-3.5-turbo,优化了应用场景、检索增强生成、受限生成和推理任务
大型语言模型
Transformers

支持多种语言
L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一个基于SODA数据集训练的超小型对话模型,专为边缘设备推理设计,体积仅为Cosmo-3B模型的2%左右。
对话系统
Transformers

英语
C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基于RoBERTa架构的中文抽取式问答模型,适用于从给定文本中提取答案的任务。
问答系统
中文
R
uer
2,694
98
AIbase是一个专注于MCP服务的平台,为AI开发者提供高质量的模型上下文协议服务,助力AI应用开发。
简体中文