写点什么

微软开源多模态聊天机器人 Visual ChatGPT

  • 2023-05-16
    北京
  • 本文字数:1200 字

    阅读完需:约 4 分钟

微软开源多模态聊天机器人Visual ChatGPT

微软研究院最近开源了Visual ChatGPT,一个聊天机器人系统,可以根据人类的文本提示生成和处理图像。该系统将OpenAI的ChatGPT与 22 种不同的视觉基础模型(VFM)相结合,可以支持多模态交互。


arXiv 上的一篇论文对该系统进行了描述。用户可以通过输入文本或上传图片与聊天机器人互动。机器人还可以根据文本提示生成图像,或者通过处理聊天历史记录中的图像来生成图像。该聊天机器人的一个关键模块是提示词管理器(Prompt Manager),它将用户输入的原始文本组织成一个“思维链”提示词,帮助 ChatGPT 确定是否需要调用 VFM 工具来执行图像任务。据微软团队称,Visual ChatGPT 是:


一个包含各种 VFM 的开放系统,使用户能够超越语言格式与 ChatGPT 进行交互。为了构建这样一个系统,我们精心设计了一系列提示词,将视觉信息注入到 ChatGPT 中,从而逐步解决复杂的视觉问题。


ChatGPT 和其他大语言模型(LLM)已经显示出了强大的自然语言处理能力,但它们被训练成只处理一种输入模式:文本。微软并没有训练另一个新的模型来处理多模态输入,而是设计了一个 Prompt Manager 来生成输入给 ChatGPT 的文本,进而生成可以调用 VFM(如 CLIP 或Stable Diffusion)来执行计算机视觉任务的输出。


Visual ChatGPT 架构


提示词管理器基于 LangChain 代理,而 VFM 被定义为 LangChain 代理工具。为了确定是否需要调用工具,代理会结合用户提示词和对话历史记录(其中包含了图像文件名),然后应用提示词的前缀和后缀。前缀包括以下文本:


Visual ChatGPT 不能直接读取图像,但它有一些工具可用来完成不同的视觉任务。每一张图像都有一个文件名,格式为“image/xxx.png”,Visual ChatGPT 可以调用不同的工具来间接理解图像。


前缀中的附加文本会引导 ChatGPT 问自己“是否需要使用工具”,如果需要使用工具,它应该输出工具的名称以及所需的输入,例如要生成的图像文件名或图像的文本描述。代理将迭代地调用 VFM 工具,将生成的图像发送到聊天会话中,直到不再需要使用工具。此时,最后生成的文本输出将被发送到聊天会话中。


在 Hacker News 的一个帖子中,一位用户指出 VFM 使用的内存比语言模型少得多,他想知道为什么。另一位用户回复说:


图像模型可以很差,但仍然可以生成令人满意的结果。试想一下,我们可以将图像的像素随机变化 10%,我们只会看到图像质量降低了一些,但其他方面仍然是完美的。而语言模型就不是这样了,因为它们试图解决的问题要“尖锐”得多,即使它们只是偏离了一点点,都会导致结果出现严重偏差。所以我们需要一个更大的模型来获得足够的文本“清晰度”。


Visual ChatGPT源代码可在 GitHub 上获得。


原文链接:

Microsoft Open-Sources Multimodal Chatbot Visual ChatGPT


相关阅读:

一部手机就可运行,精通 Python 等 20 种语言!谷歌终于能与 OpenAI 打擂台了,全新 PaLM 2 比肩 GPT-4

AIGC 在保险行业有哪些应用落地的可能性?

AI 时代的“身份证”要来了?ChatGPT 之父推出加密钱包 World App,并称区块链可以区分人与 AI


2023-05-16 09:219777

评论

发布
暂无评论
发现更多内容

学习笔记2

Qx

学习

糖果不需要意义

zhoo299

随笔杂谈 电影

ARTS打卡第一周(200511-200517)

老胡爱分享

ARTS 打卡计划 ARTS活动

领导发表的报告,你真的读懂了吗?

罗小龙

工作经验

安全系列之——RSA的公钥私钥有多少人能分的清楚?RSA的签名验签与加密解密如何使用公私钥?

诸葛小猿

加密解密 非对称加密 rsa 签名验签

Docker从入门到放弃---基础篇

书旅

Docker 容器

LeetCode题解:11. 盛最多水的容器,while循环双指针,JavaScript,详细注释

Lee Chen

大前端 LeetCode

GrowingIO 数据采集 iOS SDK 测试实践

GrowingIO技术专栏

ios 数据采集 sdk

CDN百科11 | 担心纸质病例被洪水淹没?ECS+CDN+OSS如何助力医疗上云

阿里云Edge Plus

CDN 存储 云服务器

[High Performance TIDB] Leeson 01:TIDB整体架构---作业

远鹏

高性能 #TiDB

带着面试题学习红黑树操作原理,解析什么时候染色、怎么进行旋转、与2-3树有什么关联

小傅哥

Java 数据结构 小傅哥 红黑树 2-3树

MySQL下的DB Link

Simon

MySQL

常用SQL语句分享

Simon

MySQL sql

Flink任务执行-3

小知识点

大数据 flink

SecureBoost算法

soolaugust

学习 同态加密 secureboost

图解JavaScript——进阶篇(执行上下文、变量对象、作用域、作用域链、闭包、this、原型及原型链、事件循环等一把梭)

执鸢者

Java 大前端 函数执行 事件循环

我与游戏相伴【自我访谈】

叶阳夏烟

系列 游戏 游戏观 访谈录

不完满的选择,要不要放弃

zhoo299

随笔杂谈

Docker入门与简单使用

Simon

Docker Linux

MySQL容器化详细教程

Simon

MySQL Docker 容器

云上攻击太多怎么办?不妨试试这些工具

华为云开发者联盟

黑客 云服务 数据安全 华为云 企业上云

TypeScript 设计模式之发布-订阅模式

Geek_z9ygea

typescript 大前端 设计模式

力扣题 - 29 解析大佬题解

Geek_663541

Java算法

LeetCode152-乘积最大子数组-medium

书旅

LeetCode 动态规划

学习源码的第八个月,我成了Spring的开源贡献者

程序员DMZ

spring 开源

不说再见

太以

疫情 毕业季 遗憾 大学

Docker 架构及工作原理

哈喽沃德先生

Docker 容器 微服务

Apache Pulsar 在 BIGO 的性能调优实战(上)

Apache Pulsar

CSS属性整理

kidd

疫情按下快进键,电商抢占市场红利需可靠的助力

华为云开发者联盟

高并发 电商 华为云 流量 云服务器

MySQL中几种常见的日志

Simon

MySQL 日志

微软开源多模态聊天机器人Visual ChatGPT_开源_Anthony Alford_InfoQ精选文章