0xVelo
0xVelo
> 所以这是什么?  你的对话为什么可以显示图片,我的对话就告诉我生成了图片,保存在xx位置,但图片不会在对话中显示,要怎么设置才能显示图片呢?谢谢
> > 你的对话为什么可以显示图片,我的对话就告诉我生成了图片,保存在xx位置,但图片不会在对话中显示,要怎么设置才能显示图片呢?谢谢 > > 目前看来只有在linux上部署才会显示图片。我认为这是gradio的库对windows有兼容性问题,但是换了几个版本也没解决。 难怪了,我是在windows本地电脑上部署的。 我感觉这个东西就是一堆ai图片编辑模型的集合,上下文理解和对话能力还是有点欠缺,不过也有可能是我刚跑通,还没玩透,你怎么看呢?
> > 难怪了,我是在windows本地电脑上部署的。 我感觉这个东西就是一堆ai图片编辑模型的集合,上下文理解和对话能力还是有点欠缺,不过也有可能是我刚跑通,还没玩透,你怎么看呢? > > 没错,就是这样的。他的整体思路就是让gpt3.5学会使用各种工具,想法挺不错,但是目前效果不好有如下几个原因: > > 1. visual-gpt使用的基础语言模型是`text-davinci-003`而不是ChatGPT,因此对于上下文的理解能力比不过ChatGPT。 > 2. 现阶段的语言模型的逻辑链还是不够长,导致对于这种相对复杂的操作难以控制。具体体现于,有时候会错误的给出指令,如,应该给三个参数,而它只给了两个,从而使得结果报错。又比如,有时候会将与图像不相关的表述输入下游模型,导致结果不符合预期。而事实上`text-davinci-003`针对命令服从是进行了强化的,仍旧表现不佳,这也就是为什么没有使用看似更强大的ChatGPT(我试了换成chatgpt,基本无法正确的发送命令) > 3. 如Stable Diffusion这样的画图模型目前还是依赖于人为精心设计的prompt才能出比较好的图,而使用自动prompt生成模型生成的prompt效果并不好。 > 4. visual-gpt使用的几个下游模型本身效果不好。比如语意分割模型,经常分割错误,导致inpaint怎么改都没用,这个就需要下游模型进一步提升。 > 5. 使用语言在模型间进行信息传递本身就是有损的,无论是从visGPT到下游模型,还是下游模型给visGPT的反馈,区区一句话,很容易词不达意,从而导致最终效果变差。 > > 所以我认为如果想要提升visGPT的效果有如下三点: > > 1....
> > > > 难怪了,我是在windows本地电脑上部署的。 我感觉这个东西就是一堆ai图片编辑模型的集合,上下文理解和对话能力还是有点欠缺,不过也有可能是我刚跑通,还没玩透,你怎么看呢? > > > > > > > > > 没错,就是这样的。他的整体思路就是让gpt3.5学会使用各种工具,想法挺不错,但是目前效果不好有如下几个原因: > > > > > > 1. visual-gpt使用的基础语言模型是`text-davinci-003`而不是ChatGPT,因此对于上下文的理解能力比不过ChatGPT。 > > > 2. 现阶段的语言模型的逻辑链还是不够长,导致对于这种相对复杂的操作难以控制。具体体现于,有时候会错误的给出指令,如,应该给三个参数,而它只给了两个,从而使得结果报错。又比如,有时候会将与图像不相关的表述输入下游模型,导致结果不符合预期。而事实上`text-davinci-003`针对命令服从是进行了强化的,仍旧表现不佳,这也就是为什么没有使用看似更强大的ChatGPT(我试了换成chatgpt,基本无法正确的发送命令) >...
> > 请教一下,照道理chatgpt应该比`text-davinci-003`在上下文理解和交互上都要更出色,为什么会发生”基本无法正确的发送命令“这种情况呢?不是很清楚‘’针对命令服从进行强化“从模型上是一个什么概念,因为平时使用chatgpt貌似都没有出现不服从命令的情况,一直都很顺畅,为什么用在这里会效果不好呢?另外换成chatgpt要怎么改代码呢? 从产品角度看,要体验更好,除了提升交互能力/理解能力,还要提升visGPT的图片质量。我觉得是不是应该先把使用的模型都替换成最新的吧?现在用的是不是比较早的SD模型,生成图片的质量跟最新的模型比差不止一个档次,是不是应该换成SD1.5之后的版本或着换成最新版本的DALLE/Imagen吧,再加上proper prompt,应该能达到一个比较实用的效果。 当然,我生成的图片烂,一方面是我没有好好prompt(就简单’生成一个形容词+名词‘完事),另一方面 因为内存关系,我的tools里面值enable了ImageEditing,ImageCaptioning,T2I,BLIPVQA,Pix2Pix这几个model,不确定是不是会有影响。 > > 通过使用不同的数据集和损失函数自然可以让模型进行不同方向的训练。比如,如果我训练一个人,让他天天背书,那他的背书能力就会比较强。而如果我让一个人天天画不同的东西,那他的创造能力就会比较强。训练模型也是类似的原理,这些都是可以通过训练策略来控制的。`text-davinci-003`的训练目标是保证输出的准确性,而chatgpt的训练目标是保证对话时用户的满意程度,因此`text-davinci-003`的命令服从效果更好,而chatgpt的对话能力更强。 > > 至于你觉得chatgpt没有出现不服从命令的情况是因为你没有试过把chatgpt作为一个“零件”放入实际的应用场景中。比如,我想要批量的翻译文章,一句一句发给chatgpt的话,有时候chatgpt会直接回复翻译结果,有时候会回复“这段话的翻译是...”,而有时候会回复“好的,这句话翻译成英文是这样的:...”,而且无论你怎么去更改prompt,都很难以让chatgpt稳定的只输出翻译结果,这就是所谓的不够遵守命令。 想要改成chatgpt很简单,把`self.llm = OpenAI(temperature=0)`这句话改成`self.llm = OpenAIChat(temperature=0)`,然后在顶端加上`from langchain.llms.openai import OpenAIChat`就行了。 > > 关于图像的质量,我认为SD1.5不是影响质量的主要因素,简单替换模型只会让你的生成图像质量更好,但很有可能导致你修图时效果变得更差。 原来如此,受教了,感谢!