chatui工具使用记录与比较

概述

cahtui相关工具可谓是层出不穷,方便了我们使用各个大模型。这里我把我知道的整理下列出来,顺便做一比较。

简单比较

openWebUI,star 11.1k,仿chatgpt风格,支持openapi、可以对接Ollama进行对话,功能相对单一,界面比较简洁

chatgpt-next-chat,star 65.9k,支持openai、azure openai,google,预设的面具功能不错,功能相对简单,界面也比较显旧

lobe-chat,star 25.6k,支持主流大模型,如openai、Claude、google、groq、aws、mistral、月之暗面、智谱,也支持Ollama。发现功能内置的助手数量不少,而且质量不错(使用了专门的system提示词),界面也比较好看。

模型接入

chat应用,依赖于大模型,而且一般都会支持openai,只要支持openai,那么类openai的都可以接入。目前也有提供输入输出统一转换为openai的工具,比如one-api。

我可以在one-api中统一管理我要用到的大模型,在chatui中需要用的时候,我只需要配置openai大模型即可,不过地址是我one-api的地址、key是one-api的key,具体要用哪个模型,设置model参数即可。

具体操作

具体每个工具的操作,后面有时间再细写。

openWebUI

模型支持

支持openapi、可以对接Ollama进行对话,可自动识别Ollama下模型,并且可以添加多个openai、ollama地址

可以直接通过web界面上传、下载、删除等管理ollama模型,和ollama的结合做的是不错

管理功能

可以预设提示词,通过输入/调用,不过感觉不如GPTs助手方式好,相对简单

有个游乐场功能(playGround),不过还是测试阶段,可以定义system prompt,不过数据都没做保存

文档上传,但是不确定什么情况会用到

可以导出、导入聊天记录

对话

可以上传文件,实现RAG功能

输入可以语音转文字

可以选择多个模型,实现群聊,这个是个特色

可以通过语音阅读推理结果

可以对推理结果进行标注,可以修改推理结果,这些数据作为数据集,提供微调

实践真知

将openai模型调整为one-api也是没问题的,会通过/models接口将所有模型加载出来提供选择

部署

可以通过docker方便的部署,以便本地使用

问题

1)偶然发现,配置了ollama,如果ollama没启动,导致系统也无法打开

2)开启对话后,页面滚动较多会遮挡住修改模型下拉框,必须滚到页面最上方才可以再修改模型

3)算one-api的问题,手动新增的模型,加载不出来,应该都是每个模型默认的模型类型

chatgpt-next-chat

模型支持

支持openai、azure openai,google,openai就可以设置为one-api地址(这样多数模型基本支持了),由于零一万物的webapi完全兼容openai,openai也可以直接设置为零一万物的。

接下来设置自定义模型名称,在对话界面模型列表中就可以选择到了

管理功能

可以自定义提示词、面具,通过输入/调用,不过感觉不如GPTs助手方式好,相对简单。和open webui的功能差不多。这个功能有个问题是,这个prompt信息是user聊天发出的,实际上应该是system prompt。

提示词就是一个prompt,面具可以是多条对话记录,还可以设置头像、对话参数、模型等,可以直接以某个面具开始对话

通过分享面具,可以直接开始一个类似助手的对话

可以导入导出所有记录(对话、消息、提示词、面具)

对话

预设的面具功能不错,类似system prompt,功能相对简单,界面也比较显旧

新建对话后才可以选择预设的面具,没有将应用一开始就创建好

对话界面文本框上方可以直接进行对手设置模型、面具等信息,这一点比openai webui好

部署

可以通过docker方便的部署,以便本地使用

也可以快捷的通过Vercel 一键部署,配置个域名就可以很方面的外网访问使用了

问题

不能对话上传文档

没有文档功能,没有RAG功能

不能对推理结果进行标记、编辑

lobe-chat

支持主流大模型,如openai、Claude、google、groq、aws、mistral、月之暗面、智谱,也支持Ollama。发现功能内置的助手数量不少,而且质量不错(使用了专门的system提示词),界面也比较好看。

模型支持

支持主流大模型,如openai、Claude、google、groq、aws、mistral、月之暗面、智谱,也支持Ollama。

管理功能

发现功能内置的助手数量不少,而且质量不错(使用了专门的system提示词),界面也比较好看。

可以导入导出配置助手消息数据

对话

可以新建一个助手开始对话

可以语音阅读推理结果

部署

可以通过docker方便的部署,以便本地使用

问题

不能对话上传文档

没有文档功能,没有RAG功能

不能对推理结果进行标记、编辑

整体而言

比较下来,还是openWebUI在整个过程上比较全面(提示词、对话、RAG、标注),但是缺少对类助手功能的支持、某些细节上略欠缺。(目前属于测试功能的提示词功能完善了,整体就更完整了)

chatgpt-next-chat和lobe-chat功能比较接近,lobe-chat在助手的丰富性上更胜一筹

当然想要功能全面,那还得dify了,dify定位就是应用,这几个还是chat。

当然也看具体应用场景。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/781250.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Finetuned Language Models Are Zero-Shot Learners

Abstract 本文探索了一种简单的方法来提升语言模型的零样本(zero-shot)学习能力。我们发现 指令微调(instruction tuning) 显著提高了未见任务的零样本性能。 指令微调:即在一组通过指令描述的数据集上对模型进行微调我们对一个 137B 参数的预训练模型在 60 个 NLP 任务上…

springboot婚庆系统

摘 要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势;对于婚庆系统当然也不能排除在外,随着网络技术的不断成熟,带动了婚庆系统,它彻底改变了过去传统的管理方式…

【Gitea的介绍】

🔥博主:程序员不想YY啊🔥 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家💫 🤗点赞🎈收藏⭐再看💫养成习惯 🌈希望本文对您有所裨益,如有…

Matlab-R2022b-安装文件分享

​一、MATLAB主要特点和功能 MATLAB是一款强大的科学计算软件,专门用于算法开发、数据分析、数值计算以及科学数据可视化。 以下是一些MATLAB的主要特点和功能: 1.矩阵运算: MATLAB的名字来源于"Matrix Laboratory"(矩阵实验室&…

在同一个网站上自动下载多个子页面内容

一、问题现象 第一次遇到这样的问题,如下图: 即在同一个网站上下载多个内容时,第一个内容明明已经正常get到了,但开始第二个页面的查询 以后,原来已经查出的内容就找不到了。 二、解决办法 我不知道大家是不是遇到…

常见的数据结构相关的面试问题

1.请解释什么是数据结构,以及它在计算机科学中的重要性。 数据结构定义:数据结构是一种组织数据的方式,它包括数据元素之间的关系以及对这些数据元素进行操作的规则。常见的数据结构包括数组、链表、栈、队列、树、图等。 数据结构的重要性: 提高算法效率:选择合适的数据结…

配置vsftpd服务

服务简介 1、FTP协议概览 FTP(File Transfer Protocol)⽂件传输协议,在TCP/IP协议族中属于应⽤层协议,是运⾏于 TCP协议之上是⼀种可靠的传输协议,主要功能⽤于实现⽤户间⽂件分发共享,以及⽹络管理 者在进…

Flutter开发之objectbox

Flutter开发之objectbox 在之前进行iOS开发的时候使用WCDB去进行管理数据库很方便,它支持ORM(Object-Relational Mapping,对象关系映射),用于实现面向对象编程语言里不同类型系统的数据之间的转换。 那么在Flutter开发…

perl:字符串模糊匹配,计算 edit 距离

Levenshtein Distance,通常被称为编辑距离(Edit Distance)。该算法的概念是俄罗斯科学家弗拉基米尔莱文斯坦(Levenshtein Vladimir)于1965年提出。 它是用来计算两个字串之间,通过替换、插入、删除等操作将字符串str1转换成str2所…

作业练习(python)

第一题: cel eval(input()) fah 9 / 5 * cel 32 print("%.1f" % fah) 第二题: radius, length eval(input()) area radius * radius * 3.14159267 volume area * length print("%.2f" % area) print("%.2f" …

MNN介绍、安装与编译:移动端深度学习推理引擎

MNN介绍、安装与编译:移动端深度学习推理引擎 引言第一部分:MNN简介第二部分:MNN的安装第三部分:MNN的编译结语 引言 大家好,这里是程序猿代码之路。在移动设备上实现高效的深度学习模型推理一直是人工智能领域的一个挑…

代码随想录(day10)——栈和队列

Leetcode.1047 删除字符串中所有相邻重复项: 1047. 删除字符串中的所有相邻重复项 - 力扣(LeetCode) 本题可以利用栈的思想进行解答。但是此处并不是真正的去使用一个栈,而是利用来替代栈在本题中的作用。具体如下: …

RHCE-2-chrony服务器

简介 重要性 由于IT系统中,准确的计时非常重要,有很多种原因需要准确计时: 在网络传输中,数据包括和日志需要准确的时间戳 各种应用程序中,如订单信息,交易信息等 都需要准确的时间戳 Linux的两个时钟 硬…

Mysql数据库与PostgreSQL数据库语法比较

目录 前言 模式的概念 模式的主要作用 一、Mysql和PostgreSQL语法比较 1.数据类型差异 1.1整型 1.2浮点数类型 1.3字符串差异 1.4数组类型 2.字符串连接 3.日期和时间函数差异 4.Limit子句的差异 5.NULL值的处理 6.自增主键列 7.变量和参数差异 8.连接查询 9.…

【JavaScript编程】前端实现文件下载

在前端实现文件下载&#xff0c;主要有以下几种常见的方法&#xff1a; 一、使用<a>标签 这种方法是最常见的&#xff0c;只需要在HTML中创建一个<a>标签&#xff0c;并通过JavaScript控制其点击行为&#xff0c;就可以实现文件下载。例如&#xff1a; function…

【Vue】动态样式

内联样式的动态样式 body(){ boxASelect:false, } v-bind:style"{borderColor:boxASelect ? red : #ccc}" <body><header><h1>Vue Dynamic Styling</h1></header><section id"styling"><div class"demo&quo…

2024年MathorCup数学建模思路A题B题C题D题思路分享

文章目录 1 赛题思路2 比赛日期和时间3 组织机构4 建模常见问题类型4.1 分类问题4.2 优化问题4.3 预测问题4.4 评价问题 5 建模资料 1 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 2 比赛日期和时间 报名截止时间&#xff1a;2024…

深入理解MySQL索引:原理、类型

在数据库领域&#xff0c;索引是提高查询效率的重要工具之一。MySQL作为最流行的关系型数据库之一&#xff0c;其索引的使用和优化至关重要。本文将深入探讨MySQL索引的原理、类型以及最佳实践&#xff0c;帮助读者更好地理解和应用索引。 一、索引的基本概念 1. 什么是索引&…

电脑文件轻松管理:按大小归类,高效存储文件

在数字化时代&#xff0c;电脑文件的管理变得至关重要。面对海量的数据和信息&#xff0c;如何高效整理、归类和保存这些文件&#xff0c;成为了我们必须要面对的挑战。今天&#xff0c;我们就来介绍一种简单而实用的文件管理方法——按文件大小归类保存&#xff0c;让您的数据…

再次加深理解Java中的并发编程

目录 一、线程、进程、程序 二、线程状态 三、线程的七大参数 四、lock与synchronized锁机制 一&#xff09;、lock与synchronized锁区别 二&#xff09;、synchronized锁原理 三&#xff09;、Lock锁原理 五、synchronized锁升级原理 一&#xff09;、锁升级基础知识 …