[ML] 通过llama.cpp与羊驼聊天的网页界面- 详解 Serge 的启动使用

Serge 虽然能够让我们在笔记本上跑起来 7B模型, 但实际运行非常消耗CPU,对话生成响应非常非常慢。
1. 官方指导是使用如下命令直接运行:
$ docker run -d -v weights:/usr/src/app/weights -v datadb:/data/db/ -p 8008:8008 ghcr.io/nsarrazin/serge:latest
随后打开地址 localhost:8008
注意:这里面有个文档上面没说的事,就是你本地是没有模型时,镜像内部会进行下载。
7B模型大小 4G,下载这会持续一段时间,所以打开 localhost:8008 后 Model choice 是没有模型可以选择的,按钮也是不可以点击的。
你进入到 docker 容器中可以查看 ./weights 目录里的文件下载进度情况。
2. 等下载完之后就会选中模型,此时 “Start a new chat” 按钮才是可以点击的,而不是 disabled 状态。

3. 如果提前在 Huggingface 上面下载好的文件,放到 weights 里面要改名为 7B.bin
https://huggingface.co/nsarrazin/alpaca/tree/main/alpaca-7B-ggml
因为可以看到实际生成用的是 docker 镜像内的指定目录内的 bin 文件,比如: 7B.bin

检验有没有下载好的模型文件,也是通过检测目录下的 7B.bin 等文件。

补充说明:具体程序是去哪里下载的可以看到列的模型信息,单独使用时可以自己去 HuggingFace.co 搜索下载。

Tool:ChatAI Online
Ref:https://github.com/nsarrazin/serge
Link:https://www.cnblogs.com/farwish/p/17280159.html
[ML] 通过llama.cpp与羊驼聊天的网页界面- 详解 Serge 的启动使用的更多相关文章
- boost asio异步读写网络聊天程序客户端 实例详解
boost官方文档中聊天程序实例讲解 数据包格式chat_message.hpp <pre name="code" class="cpp">< ...
- Linux 网络编程详解三(p2p点对点聊天)
//p2p点对点聊天多进程版--服务器(信号的使用) #include <stdio.h> #include <stdlib.h> #include <string.h& ...
- SignalR 聊天室实例详解(服务器端推送版)
翻译自:http://www.codeproject.com/Articles/562023/Asp-Net-SignalR-Chat-Room (在这里可以下载到实例的源码) Asp.Net Si ...
- IOS详解TableView——对话聊天布局的实现
上篇博客介绍了如何使用UITableView实现类似QQ的好友界面布局.这篇讲述如何利用自定义单元格来实现聊天界面的布局. 借助单元格实现聊天布局难度不大,主要要解决的问题有两个: 1.自己和其他人说 ...
- php_D3_“简易聊天室 ”实现的关键技术 详解
PHP+MySQL实现Internet上一个简易聊天室的关键技术 系统目标: 聊天室使用数据库汇集每个人的发言,并可将数据库内的发言信息显示在页面,让每个用户都可 ...
- 【WPF】实现类似QQ聊天消息的界面
最近公司有个项目,是要求实现类似 QQ 聊天这种功能的. 如下图 这没啥难的,稍微复杂的也就表情的解析而已. 表情在传输过程中的实现参考了新浪微博,采用半角中括号代表表情的方式.例如:“abc[dog ...
- SAP ML 物料分类账详解(含取消激活物料帐方法)
一.业务背景: 中国会计准则规定,对存货的核算必须采用历史成本法(即实际成本法).如果企业采用计划成本法或者定额成本法进行日常核算的,应当按期结转其成本差异,将计划成本或者定额成本调整为实际成本. “ ...
- QQ去除聊天框广告详解——2016.9 版
QQ聊天框广告很烦人,百度出来的一些方法早已过时,下面是博主整理出来的方法,供各位同学参考. 1.按键盘上的 Win+R 快捷键打开运行框,然后复制并粘贴 Application Data\Tence ...
- cpp异常详解
1. 异常介绍 在函数在执行过程中如果碰到对错误的处理可以有两种方式, 1. 返回错误,2. 使用异常. 如果作为函数的调用者想要知道具体的错误信息, 就需要维护一套错误列表, 或者用string类型 ...
- c/cpp语言链表连接部分详解
核心代码: ①pTail->next = pNew; ②pNew->next = NULL; ③pTail = pNew; 设结构体名称为 struct ST: 注:方框代表分配的内存空间 ...
随机推荐
- NJUPT第一次积分赛
NJUPT第一次积分赛 最近在忙第二次积分赛以及一些很复杂的队友关系(人际关系好复杂,好想电赛出个单机模式),但最后结果还是很满意的. 突然想起来第一次积分赛写的屎山,遂拿出来给大火闻闻 没啥很新颖的 ...
- django(web框架推导、简介、数据库初识)
一 web框架推导 1 软件开发架构 cs架构bs架构bs本质是也是cs # HTTP协议:无状态,无连接,基于请求,基于tcp/ip的应用层协议 # mysql:c/s架构,底层基于soket,自己 ...
- 记录--vue3实现excel文件预览和打印
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 在前端开发中,有时候一些业务场景中,我们有需求要去实现excel的预览和打印功能,本文在vue3中如何实现Excel文件的预览和打印 ...
- vue开发小技巧
这里分享几个我使用到的vue开发小技巧 一.状态共享 使用Vue进行开发时,随着项目的复杂化,组件个数也逐渐增加,此时我们就面临着一个问题--多组件状态共享.当然有人会说使用Vuex来解决啊,但是如果 ...
- TP6框架--EasyAdmin学习笔记:项目上线
这是我暂时写EasyAdmin的最后一章,给大家分享下项目上线的全过程,希望对大家有所帮助,废话不多说,直接上内容 服务器我选用的是阿里云,上线时我使用的是宝塔面板来进行部署,如果你是新手,并不熟练服 ...
- 神经网络——基于sklearn的参数介绍及应用
一.MLPClassifier&MLPRegressor参数和方法 参数说明(分类和回归参数一致): hidden_layer_sizes :例如hidden_layer_sizes=(50, ...
- Games101:作业6
说明 本次作业主要实现对上一次作业代码的重构以及使用BVH加速求交的交点判断和递归调用 代码框架的修改 有影响的改动就是框架中定义了两个结构体一个是光线ray,一个是交点Intersection 交点 ...
- C++中结构体的各种用法,详细版
C++中的结构体是一种用户自定义的数据类型,可以存储不同类型的数据成员.以下是一些结构体的常见用法: 1. 定义结构体类型 结构体类型的定义可以放在函数内部或外部,例如: ``` struct Per ...
- #搜索,树剖,set#洛谷 3322 JZOJ 4049 [SDOI2015]排序&洛谷 3320 JZOJ 4050 [SDOI2015]寻宝游戏
洛谷 3322 [SDOI2015]排序 题目 小A有一个\(1\sim 2^N\)的排列\(A[1\sim 2^N]\),他希望将A数组从小到大排序,小A可以执行的操作有\(N\)种,每种操作最多可 ...
- #树上启发式合并,trie#JZOJ 5363 生命之树
分析 考虑按位处理, 如果熟悉dsu的话可以发现这道题能够用dsu做, 再用两个trie分别维护该位为0或1的字符串, 重儿子可以按照子树字符串的总长计算 代码 #include <cstdio ...