Ollama 更新!手把手教你用Ollama轻松搭建Llama 3.2 Vision + 视觉RAG系统(本地安装)

在本文中,我将介绍Ollama最近对Llama 3.2 Vision的支持更新,并分享Llama 3.2 Vision的实测结果。同时,我还将介绍一个视觉RAG系统,展示如何将Llama 3.2 Vision与该系统结合,完成基于视觉RAG检索的任务。

先介绍此次更新:

Ollama 现在正式支持 Llama 3.2 视觉模型(Llama 3.2 Vision)。

你看就像这样拖进去就可以识别图片了。

img

▲ 来源 | Prompt Engineering

你可以看到该模型有11B参数版和90B参数版。选择90B参数版时,文件大小约为55GB。当然还有一些量化的版本。

img

Llama 3.2 Vision 11B 至少需要 8GB VRAM,而 90B 型号至少需要 64 GB VRAM。

为了安装它,你需要更新一下ollama,这里以docker安装的ollama为例,没更新前拉取这个视觉模型不成功,我们需要删掉容器,再pull更新它。

img

更新完之后我们可以执行拉取操作

img

如果你的是Linux版本ollama由于网络问题下载不成功的话,你可以看看这篇文章的末尾。

Ollama 升级!支持一键拉取Huggingface上所有的模型,太方便了!(vLLM、Fastgpt、Dify、多卡推理)2024-10-17img

你可以使用ollama python库这样运行它的测试

img

通过本地图像路径向模型提问“这张图片是什么”。

img

▲ 来源 | Fahd Mirza

模型返回了结果,描述图片中有“日落、袋鼠和一群鸟,太阳位于画面中央,但被云遮挡。” 这正是图片内容。

img

“ 这是什么城市?”,模型会给出答案:“我猜这是日本的城市,可能是东京或大阪。”

我们看看其他一些场景的情况:

手写内容识别

img

光学字符识别 (OCR)

img

图表和表格

img

图片问答

img

还是不错的。

下面我们进入正题 …

*一个视觉RAG系统 + Llama 3.2 Vision*

LocalGPT-Vision 是一个基于视觉的检索增强生成 (RAG) 系统,它可以让你与文档进行对话,使用Vision语言模型实现端到端的RAG系统。

img

该项目使用Colqwen 或 ColPali模型进行基于视觉的页面信息检索,检索到的页面将传递到视觉语言模型 (VLM) 以生成响应。

img

安装这个项目:

首先,你需要克隆代码仓库或拉取最新的更改;然后你需要创建一个新的虚拟环境来使用conda;最后使用pip install -r requirements.txt安装所有需要的包。

img

为了启动主应用程序,我们将使用python app.py,这会启动我们的Flask服务器,并在该URL上运行。只需在浏览器中访问即可。

这是本地GPT Vision的主界面。如果你进入模型列表,将看到检索模型。我将选择Colqwen ,它是最适合的模型之一。

img

对于生成模型,你有多个选项,我将选择Ollama Llama Vision,

img

然后保存更改。

对于被RAG的对象,我们使用一篇名叫Light RAG论文,这是一种简单快速的检索增强生成方法,结合了知识库和基于密集向量的方式,特别适用于具有某种关系的实体。

img

img

开始:

点击上传文档按钮,选择相应的PDF文件,然后点击“开始索引”。

img

▲ 来源 | Prompt Engineering

此时,后台将使用Colqwen模型为PDF中的每一页创建多维向量表示,转换成图像并计算嵌入,所有这些操作都依赖于强大的poppler库。

img

如果遇到问题,请确保已安装poppler库,因为有些人在使用这个库时遇到过问题。索引完成后,点击“确定”,然后开始与刚才创建的知识库进行交互。

首先,我们用一个简单的提示开始:“这篇论文的标题是什么?”

你可以看到,论文的标题是《Light RAG: Simple and Fast Retrieval Augmented Generation》。

img

它与标题完全一致。

接下来我们可以看看它是否能够解释该图像的详细信息。

我问:“你能详细解释图1吗?”

img

图1 作为论文中的一个插图,讨论了索引过程和检索过程,并展示了提议的Light RAG框架的整体架构。该页面还包含了其他信息,特别是数学公式,它们本质上也解释了相同的概念。

原文是这样的

img

这里是这个视觉RAG系统回答的翻译版本:

img

生成的响应是:“该图像展示了Light RAG框架的全面概述,该框架旨在增强信息检索系统的性能和效率。”然后它讨论了不同的组件,包括数据索引器和数据检索器。

这些信息似乎来自图像本身或图像所在页面上的文本。描述可以做得更好一些,可能90B版本的模型会做得更好。

我在这里补充它回答后续的截图:

img

此外,这些视觉开源大模型往往也可以用于一些视频帧的分析的场景。

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

在使用 Ollama 部署 `llama3.2-vision:latest` 模型时,如果模型无法识别图片内容,可能涉及多个层面的问题。以下是一些常见原因及相应的解决方案: ### 1. **模型版本问题** Ollama 提供的 `llama3.2-vision:latest` 可能并不是官方发布的完整视觉模型版本,或者其权重文件存在不完整的情况。Meta 官方对 Llama 3.2 Vision 的支持主要通过 Hugging Face API 或者特定的部署工具链实现[^1]。 **解决方案:** - 确保使用的模型版本是最新的,并且与官方文档兼容。 - 如果可能,尝试从 Hugging Face 或其他官方渠道获取完整的模型权重,并使用支持多模态输入的框架(如 Transformers)进行加载和推理。 ### 2. **图像预处理不当** Llama 3.2 Vision 是一个多模态模型,要求输入图像经过特定的预处理步骤,包括归一化、尺寸调整、通道顺序等。如果图像格式不符合模型预期,可能导致无法正确解析图像内容。 **解决方案:** - 确保图像被正确地转换为模型所需的输入格式,通常为 `(batch_size, channels, height, width)` 的张量。 - 使用标准图像处理库(如 PIL、OpenCV)读取图像后,进行适当的归一化和缩放操作。 ```python from PIL import Image import torchvision.transforms as transforms # 加载并预处理图像 image = Image.open("example.jpg").convert("RGB") transform = transforms.Compose([ transforms.Resize((224, 224)), transforms.ToTensor(), transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]) ]) input_tensor = transform(image).unsqueeze(0) # 添加 batch 维度 ``` ### 3. **推理接口限制** Ollama 作为一个轻量级本地运行框架,虽然简化了模型部署流程,但在多模态任务的支持上可能存在一定局限性,尤其是对于视觉语言模型这类需要复杂输入结构的任务[^3]。 **解决方案:** - 考虑使用更灵活的推理框架,如 Hugging Face Transformers 或 PyTorch Lightning,以确保能够完整支持多模态输入。 - 如果坚持使用 Ollama,可以查看其 GitHub 仓库或社区反馈,确认是否已有针对视觉模型的增强支持。 ### 4. **提示词工程与指令格式错误** Llama 3.2 Vision视觉问答任务中依赖于高质量的提示词设计,尤其是在进行思路链(Chain-of-Thought, CoT)推理时表现更为出色[^4]。如果提示词设计不合理,可能导致模型无法正确理解图像内容。 **解决方案:** - 使用结构化的提示词格式,例如: ``` <image> What is the content of this image? ``` - 尝试不同的指令风格,如加入“Please describe the image in detail.”、“What objects can you identify?”等引导性语句。 ### 5. **硬件资源不足** 视觉模型通常对计算资源有较高要求。如果本地设备的 GPU 显存或 CPU 性能不能满足模型需求,可能导致推理失败或输出质量下降。 **解决方案:** - 检查系统资源使用情况,确保 GPU 正确启用并且显存充足。 - 如果资源有限,可以尝试降低输入图像分辨率或使用量化版本的模型。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值