❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
🚀 快速阅读
- 模型架构:POINTS 1.5基于LLaVA架构,包含视觉编码器、投影器和大型语言模型。
- 主要功能:支持复杂场景OCR、推理、关键信息提取、LaTeX公式提取等。
- 技术优势:在全球10B以下开源模型中排名第一,性能超越其他业界领先模型。
正文(附运行示例)
POINTS 1.5 是什么
POINTS 1.5是腾讯微信发布的多模态大模型,是POINTS 1.0的升级版本。该模型继续沿用了POINTS 1.0中的LLaVA架构,由一个视觉编码器、一个投影器和一个大型语言模型组成。POINTS 1.5在效率和性能上都进行了增强,特别是在全球10B以下开源模型的排名中,POINTS 1.5-7B位居榜首,超越了其他业界领先的模型,如Qwen2-VL、InternVL2和MiniCPM-V-2.5等。
POINTS 1.5在复杂场景的OCR、推理能力、关键信息提取、LaTeX公式提取、数学、图片翻译、物体识别等方面有不错的表现。
POINTS 1.5 的主要功能
- 复杂场景的OCR:能在复杂场景中进行有效的文字识别。
- 推理能力:具备强大的推理能力,能理解和处理复杂的逻辑问题。
- 关键信息提取:能从大量数据中提取关键信息,提高信息处理的效率和准确性。
- LaTeX公式提取:能识别并提取LaTeX格式的数学公式。
- 数学问题处理:能理解和解决数学问题,在数学领域的应用潜力巨大。
- 图片翻译:能对图片内容进行翻译,适用在多语言环境下。
- 物体识别:能识别图片中的物体,应用于图像分析和理解。
POINTS 1.5 的技术原理
- 视觉编码器(Vision Encoder):负责处理输入的图像数据,提取图像特征。使用深度学习中的卷积神经网络(CNN)来实现,能捕捉图像中的空间层次结构和语义信息。
- 投影器(Projector):将视觉编码器提取的图像特征映射到一个适合与语言模型交互的特征空间。涉及到特征的降维和转换,确保图像特征和文本特征在同一个空间中有效对齐。
- 大型语言模型(Large Language Model):处理文本输入,生成语言相关的输出。是一个预训练的Transformer模型,能理解自然语言,生成连贯、有意义的文本响应。
如何运行 POINTS 1.5
以下是一个使用Hugging Face Transformers库运行POINTS 1.5的示例代码:
from transformers import AutoModelForCausalLM, AutoTokenizer
from wepoints.utils.images import Qwen2ImageProcessorForPOINTSV15
import torch
from PIL import Image
import requests
from io import BytesIO
model_path = 'WePOINTS/POINTS-1-5-Qwen-2-5-7B-Chat'
model = AutoModelForCausalLM.from_pretrained(model_path, trust_remote_code=True, torch_dtype=torch.float16, device_map='cuda')
tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True)
image_processor = Qwen2ImageProcessorForPOINTSV15.from_pretrained(model_path)
image_url = 'https://github.com/user-attachments/assets/83258e94-5d61-48ef-a87f-80dd9d895524'
response = requests.get(image_url)
image_data = BytesIO(response.content)
pil_image = Image.open(image_data)
pil_image.save('image.jpg')
prompt = 'please describe the image in detail'
content = [
dict(type='image', image='image.jpg'),
dict(type='text', text=prompt)
]
messages = [
{
'role': 'user',
'content': content
}
]
generation_config = {
'max_new_tokens': 1024,
'temperature': 0.0,
'top_p': 0.0,
'num_beams': 1,
}
response = model.chat(messages, tokenizer, image_processor, generation_config)
print(response)
AI 代码解读
资源
- 项目官网:https://github.com/WePOINTS/WePOINTS
- GitHub 仓库:https://github.com/WePOINTS/WePOINTS
- HuggingFace 模型库:https://huggingface.co/WePOINTS
- arXiv 技术论文:https://arxiv.org/pdf/2412.08443
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦