多模态大模型部署:结合dify
文章目录
- 前言
- minicpm-v
- Dify
- 测试一下
- 总结
- 部署过程回顾
- 集成与测试
- 实验结果分析
- 展望未来
前言
上回说道,我们用ollama部署了一个多模态的大模型,也就是minicpm-v:

但这玩意儿感觉只能打字啊。
怎么给它发图片呢?
minicpm-v
MiniCPM-V 是面壁智能推出的一个开源多模态大模型系列,它专注于图文理解,并且能够在端侧设备(例如智能手机、平板电脑等)上运行。这个系列的模型接受图像和文本输入,并能够提供高质量的文本输出。
自2024年2月以来,MiniCPM-V 系列共发布了多个版本模型,旨在实现领先的性能和高效的部署。其中,最引人注目的是 MiniCPM-V 2.6 模型,这是该系列中最新且性能最佳的模型,拥有8亿参数。MiniCPM-V 2.6 基于 SigLip-400M 和 Qwen2-7B 构建,相较于之前的版本,在单图、多图以及视频理解方面有了显著的性能提升,并引入了新的功能。
MiniCPM-V 模型的特点包括但不限于:
- 高效推理和低内存占用:这使得它们非常适合在移动设备或个人电脑等资源有限的环境中使用。
- 强大的OCR能力:这意味着它可以准确地识别并处理图像中的文字信息。
- 多语言支持:能够理解和生成多种语言的文本,提高了模型的通用性和适用范围。
- 实时视频理解:MiniCPM-V 2.6 成为了首个能够在iPad等端侧设备上进行实时视频理解的多模态大模型,这一特性对于需要即时反馈的应用场景尤为重要。
此外,MiniCPM-V 还强调了其在多模态文档检索增强生成(RAG)中的应用,展示了它在处理包含复杂图文交错内容的文档时的强大能力。
MiniCPM-V 的设计考虑到了实际应用场景的需求,如智能手机和平板电脑上的图片和视频内容的实时理解和处理,以及支持多轮对话的能力,这些都极大地扩展了它的实用价值。
综上所述,MiniCPM-V 是一个集成了图像和文本处理能力的强大工具,它不仅在技术性能上有所突破,同时也为开发者提供了丰富的可能性,以便在其基础上开发出更多创新的应用和服务。如果你有兴趣深入了解如何使用或者部署 MiniCPM-V,可以参考相关的GitHub项目页面或其他官方提供的教程和指南。
Dify
我们直接把这个模型注册到dify的模型供应商里:

因为咱之前用过这个ollama,所以只需要增加模型即可。

是否支持视觉?
选择是

不错,成功了。
测试一下

还是熟悉的配方

选到咱的多模态大模型。

增加选择图片的功能。

不是很智能的样子。
总结
在本篇文章中,我们探讨了如何使用 Ollama 部署 MiniCPM-V 这个多模态大模型,并通过 Dify 平台来测试其功能。MiniCPM-V 作为一款专注于图文理解的模型,它不仅能够处理文本输入,还能接受图像作为输入,并提供高质量的文本输出 。这使得它成为处理多模态数据的理想选择,特别是在需要实时反馈的应用场景中,如智能手机和平板电脑上的图片和视频内容的理解 。
部署过程回顾
首先,我们成功地利用 Ollama 部署了 MiniCPM-V 模型,这是一个开源的大模型管理工具,允许用户便捷地运行多种大型开源模型 。通过 Ollama 的命令行界面或前端界面,我们可以轻松地下载并运行 MiniCPM-V 模型,从而为后续的实验提供了基础平台。
集成与测试
接下来,我们将这个模型集成到了 Dify 平台上。Dify 提供了一个直观的界面,使得即使是对技术不太熟悉的用户也能快速上手。我们特别关注了是否支持视觉输入这一点,因为这是 MiniCPM-V 的一大亮点。经过简单的配置后,我们确认该模型确实支持图像输入,这意味着它可以用于处理更复杂的任务,比如图像描述生成、基于图像的问答等 。
实验结果分析
尽管初步测试显示模型的表现可能未达到预期的智能水平,但这并不意味着模型本身存在问题。相反,这可能是由于测试条件或者使用的数据集不够理想所导致。对于任何机器学习模型来说,性能往往依赖于训练数据的质量和多样性以及具体的调优策略 。因此,进一步优化模型参数、增加更多的训练样本或改进数据预处理方法都可能提升模型的表现。
展望未来
展望未来,随着 MiniCPM-V 模型的不断迭代和发展,我们可以期待看到更加智能化的应用出现。例如,在教育领域,可以开发出辅助教学的系统;在医疗保健行业,可以帮助医生解读医学影像;在日常生活中,还可以创建个性化的虚拟助手来帮助用户解决各种问题 。
总之,虽然目前的实验结果显示模型还有改进的空间,但 MiniCPM-V 已经展示了其在多模态数据处理方面的巨大潜力。通过持续的研究和技术进步,相信这一类模型将会在未来发挥更大的作用,推动人工智能技术向着更高的层次发展 。
相关文章:
多模态大模型部署:结合dify
文章目录 前言minicpm-vDify测试一下总结部署过程回顾集成与测试实验结果分析展望未来 前言 上回说道,我们用ollama部署了一个多模态的大模型,也就是minicpm-v: 但这玩意儿感觉只能打字啊。 怎么给它发图片呢? minicpm-v Mini…...
Matlab Steger提取条纹中心(非极大值抑制)
文章目录 一、简介二、实现代码三、实现效果一、简介 由于在确定条纹的ROI区域之后,会计算出多个条纹中心坐标,因此这里就需要对其进行则优选择,毕竟条纹只有一条,这最简单的方式就是使用非极大值抑制,即选择每一行/列最好的条纹中心。 二、实现代码 Hessian2D.m function…...
springboot + vue+elementUI图片上传流程
1.实现背景 前端上传一张图片,存到后端数据库,并将图片回显到页面上。上传组件使用现成的elementUI的el-upload。、 2.前端页面 <el-uploadclass"upload-demo"action"http://xxxx.xxx.xxx:9090/file/upload" :show-file-list&q…...
LabVIEW 系统诊断
LabVIEW 系统诊断是指通过各种工具和方法检测、评估、分析和解决 LabVIEW 程序和硬件系统中可能存在的故障和性能问题。系统诊断不仅涵盖软件层面的调试与优化,还包括硬件交互、数据传输、实时性能等方面的检查和分析。一个成功的系统诊断能够显著提升LabVIEW应用程…...
韩国机场WebGIS可视化集合Google遥感影像分析
目录 前言 一、相关基础数据介绍 1、韩国的机场信息 2、空间数据准备 二、Leaflet叠加Google地图 1、叠加google地图 2、空间点的标记及展示 3、韩国机场空间分布 三、相关成果展示 1、务安国际机场 2、有同类问题的机场 四、总结 前言 12月29日8时57分左右务安国际机…...
springCloudGateWay使用总结
1、什么是网关 功能: ①身份认证、权限验证 ②服务器路由、负载均衡 ③请求限流 2、gateway搭建 2.1、创建一个空项目 2.2、引入依赖 2.3、加配置 3、断言工厂 4、过滤工厂 5、全局过滤器 6、跨域问题...
使用new Vue创建Vue 实例并使用$mount挂载到元素上(包括el选项和$mount区别)
new Vue({...}) 是创建一个新的 Vue 实例的方式。你可以通过传递一个选项对象来配置这个实例。常见的选项包括: •data:定义组件的数据属性。 •el:指定 Vue 实例应该挂载到哪个 DOM 元素上(通常是一个选择器字符串,如…...
GTX750Ti打DP补丁
背景 咸鱼收了一个二手的GTX750Ti,用于4K60Hz显示器,HDMI接口勉强可以4K60Hz,不过色彩和帧率都不是太正常,理论上它的HDMI接口是不支持的,原本也是打算用DP接口接显示器的,但是发现接DP口之后无法通过bios的vga检测最终一直重启,在华硕B760-K的BIOS中使能CSM是可以使用…...
springmvc前端传参,后端接收
RequestMapping注解 Target({ElementType.METHOD, ElementType.TYPE}) Retention(RetentionPolicy.RUNTIME) Documented Mapping public interface RequestMapping {String name() default "";AliasFor("path")String[] value() default {};AliasFor(&quo…...
PyTorch 张量的分块处理介绍
分块处理是将大型张量分解成较小的块,以便更高效地进行计算,减少内存占用,特别适用于处理超大张量的场景(如深度学习中的大批量数据或大型模型训练)。 PyTorch 提供了多种方法来分块张量,包括 chunk、spli…...
在Ubuntu中使用systemd设置后台自启动服务
引言 在Ubuntu系统中,systemd 是一个非常强大的系统和服务管理器。它不仅负责系统的启动和初始化,还可以帮助我们管理各种后台服务。通过使用 systemd,我们可以轻松地设置服务在系统启动时自动运行,并且能够方便地管理服务的启动…...
mongodb清理删除历史数据
批量清理mongodb历史数据 清理程序的原来 目前项目组上很多平台上线历史数据积压,导致入库查询数据缓慢,历史数据有些已经归档,进行历史数据清理删除。 之前临时写shell脚本,太简陋,重新使用Python进行改造,…...
C++字体库开发之字体回退策略十六
回退表 { "blocks": [ "UBLOCK_BASIC_LATIN", ], "font": { "family": "Noto Sans SC", "style": [ { "name": "Thin", …...
IO进程day3
一、思维导图 二、作业1 使用C语言编写一个简易的界面,界面如下 1:标准输出流 2:标准错误流 3:文件流 要求:按1的时候,通过printf输出数据,按2的时候,通过perror输出数据,…...
【多线程初阶篇¹】线程理解| 线程和进程的区别
目录 一、认识线程Thread 1.为啥引入线程 2.线程理解 🔥 3.面试题:线程和进程的区别 一、认识线程Thread 1.为啥引入线程 为了解决进程太重量的问题 解释(为什么说线程比进程更轻量?/为什么说线程创建/销毁开销比进程小&#…...
wireshark排除私接小路由
1.wireshark打开,发现了可疑地址,合法的地址段DHCP是192.168.100.0段的,打开后查看发现可疑地址段,分别是,192.168.0.1 192.168.1.174 192.168.1.1。查找到它对应的MAC地址。 ip.src192.168.1.1 2.通过show fdb p…...
Docker 从入门到精通
文章目录 Ubuntu 安装Docker步骤前言1. 进入Docker官网,进入开发者页面2. 选择适合自己的安装方式3. 安装 Docker1.更新系统包,安装插件,创建秘钥及目录2.安装 Docker 软件包3.设置开机启动4.通过运行 hello-world 镜像验证安装是否成功 常见…...
uni app 写的 小游戏,文字拼图?文字拼写?不知道叫啥
从下方的偏旁部首中选在1--3个组成上面文章中的文字,完成的文字标红 不喜勿喷 《满江红》 其中用到了两个文件 strdata.json parameters.json 这两个文件太大 放到资源中了 资源文件 <template><view class"wenzi_page_main"><view c…...
Qt监控系统远程网络登录/请求设备列表/服务器查看实时流/回放视频/验证码请求
一、前言说明 这几个功能是近期定制的功能,也非常具有代表性,核心就是之前登录和设备信息都是在本地,存放在数据库中,数据库可以是本地或者远程的,现在需要改成通过网络API请求的方式,现在很多的服务器很强…...
案例研究:UML用例图中的结账系统
在软件工程和系统分析中,统一建模语言(UML)用例图是一种强有力的工具,用于描述系统与其用户之间的交互。本文将通过一个具体的案例研究,详细解释UML用例图的关键概念,并说明其在设计结账系统中的应用。 用…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...
CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...
基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
回溯算法学习
一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...
STM32HAL库USART源代码解析及应用
STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...
