Ollama部署开源大模型
目录
ollama部署开源大模型
在服务器上面安装ollama
https://ollama.com/download/linux
curl -fsSL https://ollama.com/install.sh | sh
更新ollama也是这个脚本
服务器启动下载一个大语言模型
这里的模型名称可以去仓库查找
ollama pull qwen:14b
下载号以后启动:
ollama run qwen:14b
api 访问
docker部署 open-webui
https://github.com/open-webui/open-webui
docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=http://xxx.xxx.xxx.xxx:11434 -v ~/docker/open-webui/data:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
本地访问页面
看一个问题两个模型的回答对比:
问题:
`public static String getDigestPassword(String password, String salt) {
char[] passwordCharArray = password.toCharArray();
char[] saltCharArray = salt.toCharArray();
char[] dest = new char[passwordCharArray.length + saltCharArray.length];
int min = Math.min(passwordCharArray.length, saltCharArray.length);
int i = 0;
int p = 0;
int s;
for(s = 0; i < min * 2; ++i) {
if (i % 2 == 0) {
dest[i] = passwordCharArray[p];
++p;
} else {
dest[i] = saltCharArray[s];
++s;
}
}
if (passwordCharArray.length > min) {
for(i = min * 2; i < dest.length; ++p) {
dest[i] = passwordCharArray[p];
++i;
}
}
if (saltCharArray.length > min) {
for(i = min * 2; i < dest.length; ++s) {
dest[i] = saltCharArray[s];
++i;
}
}
String target = new String(dest) + SALT_CONSTANT;
String md5Hex = md5Hex(target);
return md5Hex;
}`
这个方法是什么意思?
GPT-4 的回答
这个Java方法 getDigestPassword 是用来生成一个加盐(salt)的密码摘要的。所谓“加盐”,就是在密码处理过程中与密码组合的一段额外的随机数据,这样做可以提高密码的安全性。这个方法的工作流程如下:
1. 接收两个字符串参数:password 和 salt。
2. 将这两个字符串转换为字符数组:passwordCharArray 和 saltCharArray。
3. 创建一个新的字符数组 dest,它的长度是 passwordCharArray 和 saltCharArray 长度之和,用来存储合并后的密码和盐的字符。
4. 使用两个指针 p 和 s 来遍历 passwordCharArray 和 saltCharArray 数组,并按照顺序交替地将来自密码和盐的字符放入到 dest 数组中。
5. 首先,通过一个循环将两个数组中较短的数组完全交叉合并到 dest 中。
6. 如果 passwordCharArray 比 saltCharArray 长,那么剩余的的密码字符将被附加到 dest 的尾部。
7. 同样,如果 saltCharArray 比 passwordCharArray 长,那么剩余的盐字符将被附加到 dest 的尾部。
8. 接着,在 dest 数组后面添加一个常量 SALT_CONSTANT(尽管这个常量在代码中没有显示定义,可以假设它已在其他地方定义)。
9. 用 md5Hex 方法计算修改后的字符串 target 的MD5哈希值。该方法没有在代码中给出,但我们可以假设它是计算MD5摘要的一个有效方法。
10. 返回计算出的MD5哈希值。
整体来看,这个方法的目的是通过将用户密码与盐值交替合并,并加上一个常量(可能用于增强安全性),然后使用MD5哈希算法来生成密码的摘要,以存储加盐后的密码哈希值。这个方法增加了密码存储的安全性,因为即使两个用户有相同的密码,由于盐值的随机性,他们存储的哈希值将是不同的。
qwen:14b
llama3-70b
由于这个模型40G,太大了,我的服务器扛不住就没法测试了,但是根据相关资料显示,其性能目前排行所有产品中第五名(第一名还是GPT4)后续有可能会超越GPT4.