win10环境配置ollama-ui运行llama3模型

2024-06-23 00:44

本文主要是介绍win10环境配置ollama-ui运行llama3模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

先说我的笔记本电脑配置intel-i7-11390h,4核8处理器,内存16G。显卡NVIDA  GeFroce MX450,2G显存,这是一台5000元左右的电脑。 我用它跑roop、sd1.5、ffusion2、ChatTTs还有python+pytorch的自定义模型,现在用来跑llama3。当然,sd1.5和ffusion2这点显存,只能是基本体验。至于最近的Stable Diffusion 3 Medium,我ComfyUI安装完毕后,跑了24分钟在第二个工作流就提示显存不足了,所以...就洗洗睡了。

言归正传:

一、安装ollama并下载llama3中文模型

1、ollama从官网下载并正确安装,地址:https://ollama.com/download。注意,ollama下载的模型地址默认在C:盘,所以建议修windows环境变量OLLAMA_MODELS到另外的分区上。我的设置是OLLAMA_MODELS=E:\AiModel\ollama\models

2、去下载Llama3-8B-Chinese-Chat,我用的是shenzhi-wang/Llama3-8B-Chinese-Chat 下载地址:shenzhi-wang/Llama3-8B-Chinese-Chat · HF Mirror ,在这个网站上有好几个版本的模型可以选择,可以按照说明,复制ollama的下载模型指令。比如我下载的是wangshenzhi/llama3-8b-chinese-chat-ollama-q8,其指令是:

ollama run wangshenzhi/llama3-8b-chinese-chat-ollama-q8.

  ollama下载模型根据你的网络情况需要一点时间,但值得开心的是,这个下载很顺畅。感谢ollama和Shenzhi Wang (王慎执) and Yaowei Zheng (郑耀威)

在windows命令行上输入上述指令,ollama 下载完模型后,会在命令行上打开ollma的模型交互提示,在其中,你可以试着向模型说“你好”,看看模型的回复。如果回复成功,恭喜你,ollama+llama3已经在你的电脑上正确运行了。要退出ollama交互命令行,输入"/bye",你就和他说886。

二、ollama-ui

windows命令行上的ollama,在输入中文时有些让人难受,所以一般的建议是使用一个简单的UI界面。我这里用的ollama-ui。这个项目在github上,幸运的是这个项目被gitcode加入了,所以去下载吧。地址:GitCode - 全球开发者的开源社区,开源代码托管平台。

按照该项目的提示,用git下载源代码到本地并进入源代码目录:

git clone https://github.com/ollama-ui/ollama-ui
cd ollama-ui

然后就要make。

这个make在一般的windows环境那就有些麻烦,当然你如果是C++等的开发者,这个应该不是问题,但是make文件中的bash指令,你依然要面对。我本来是直接打开Makefile文件,直接手式输入指令,并将其中shasum指令绕过去了。但是,很不幸,由于index.html文件中对css和js文件的引用都有sha验证,所以浏览器阻塞了对js和css文件的访问。一个好信息是,我之前为了编译谋个wheel,我曾经在电脑上安装了一个cygwin环境,所以我直接进入cygwin命令行,利用其bash环境运行make。

cygwin的下载地址:Cygwin Installation,下载其中的setup-x86_64.exe并运行,该安装程序会指示你从远端的cygwin仓库里选择安装程序包,并将其存储在c:\cygwin目录之下。对于C盘密集恐惧症患者的我来讲,这是非常非常之不可以...嗯...看在它只64M的面子上忍了(当然,你也可以将它安装到其他的盘上)。我的cygwin除了cygwin自身的核心工具外,只安装了bash-completion-cmake和make。对于ollama-ui而方,这个已经足够了。

进入cygwin的bash命令行,进入ollama-ui源代码目录,运行make……,然后,它提示shasum指令不存在。好吧,我怎么找解决办法不重要,重要的是,这个shasum想要验证ollama-ui/resources/目录下的校验码值。而在ollama-ui目录下,有一个generate_integrity_hash.sh脚本,这个脚本可以对ollama-ui/resources目录下的css、js文件重新计划shasum验证码值。所以,我在cygwin中直接运行,结果又提示'\r'不是正确指令。打开vscode,用vscode找开generate_integrity_hash.sh脚本,在vscode窗口底部的状态栏里,点击“CRLF”,将其换成'LF',然后保存,然后运行脚本,其输出了3个js文件的新shasum检验码,还少一个css的,那就改代码:

#!/bin/bash
#
# Directory containing the resources
directory="./resources/"
#
# Check if directory exists and is not empty
if [ -d "$directory" ] && [ "$(ls -A "$directory")" ]; then# Loop through each .js file in the directoryfor filepath in "$directory"*.*; do# Skip if file does not exist[ -e "$filepath" ] || continue# Calculate the sha384 hash and encode it in base64integrity=$(openssl dgst -sha384 -binary "$filepath" | openssl base64 -A)# Extract the filename from the pathfilename=$(basename "$filepath")# Print the <script> tag with the integrity attributeecho "<script src=\"${directory}${filename}\" integrity=\"sha384-${integrity}\" crossorigin=\"anonymous\"></script>"done
elseecho "Directory is empty or does not exist."
fi

然后在cygwin中运行指令:

./generate_integrity_hash.sh >myshasum.txt

打开myshasum.txt,再打开ollama-ui目录下的index.html,将其中Link和Script的校验码替换成你新生成的shasum。

然后修改Makefile文件:

.PHONY: default download_resources web_server ollama_server# Default task that downloads the assets and starts the ollama and web server
default: download_resources@$(MAKE) -j 2 web_server ollama_server# Web Server
web_server:python -m http.server --bind 127.0.0.1# Web Server
ollama_server:ollama serve# Task to download resources
download_resources:# Check if resources directory exists, if not create it@if [ ! -d "resources" ]; then \mkdir -p ./resources/ && \cd ./resources/ && \curl -O https://cdn.jsdelivr.net/npm/bootstrap@5.3.1/dist/css/bootstrap.min.css && \curl -O https://cdn.jsdelivr.net/npm/bootstrap@5.3.1/dist/js/bootstrap.bundle.min.js && \curl -O https://cdn.jsdelivr.net/npm/marked@6.0.0/marked.min.js && \curl -O https://cdn.jsdelivr.net/npm/dompurify@3.0.5/dist/purify.min.js; \curl -O https://code.jquery.com/jquery-3.7.1.min.js; \fi# Check SHA-256 hash#@shasum -c resources.hash || exit 1clean:@rm -rf ./resources

我将python3改成了python,将shasum行注释掉。

然后在cygwin命令行中:make

此时,make程序会利用 python http.server将当前目录变成http服务器,并以index.html为服务器首页。在浏览器中输入地址:http://127.0.0.1:8000,然后ollama-ui页面就正确显示出来了。

好了,现在可以在Send栏里,向模型问声“你好”了。

三、saddle

ollma的另一个本地UI,下载地址:GitCode - 全球开发者的开源社区,开源代码托管平台

如果你直接用浏览器在本地打开index.html,则其会因为cros问题被阻塞,同样方法,进入saddle源代码目录,运行phthon -m http.server --bind 127.0.0.1。然后在浏览器中打开127.0.0.1:8000,你会看到:

上述是我使用ollama-ui和saddle的经验,对于真正行家来讲,可能都不算经验吧,但总有人和我一样是“砖家”吧。

最后推荐一个LLMS和VLMs在线测评网站,里面可以体验很多大模型的能力。地址:https://arena.lmsys.org/

最后的最后,其实ollma-ui中index.html的shasum验证其实不是必须的,这个大家自己搞定吧。

这篇关于win10环境配置ollama-ui运行llama3模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1085860

相关文章

ESP32 esp-idf esp-adf环境安装及.a库创建与编译

简介 ESP32 功能丰富的 Wi-Fi & 蓝牙 MCU, 适用于多样的物联网应用。使用freertos操作系统。 ESP-IDF 官方物联网开发框架。 ESP-ADF 官方音频开发框架。 文档参照 https://espressif-docs.readthedocs-hosted.com/projects/esp-adf/zh-cn/latest/get-started/index

Linux 安装、配置Tomcat 的HTTPS

Linux 安装 、配置Tomcat的HTTPS 安装Tomcat 这里选择的是 tomcat 10.X ,需要Java 11及更高版本 Binary Distributions ->Core->选择 tar.gz包 下载、上传到内网服务器 /opt 目录tar -xzf 解压将解压的根目录改名为 tomat-10 并移动到 /opt 下, 形成个人习惯的路径 /opt/tomcat-10

一份LLM资源清单围观技术大佬的日常;手把手教你在美国搭建「百万卡」AI数据中心;为啥大模型做不好简单的数学计算? | ShowMeAI日报

👀日报&周刊合集 | 🎡ShowMeAI官网 | 🧡 点赞关注评论拜托啦! 1. 为啥大模型做不好简单的数学计算?从大模型高考数学成绩不及格说起 司南评测体系 OpenCompass 选取 7 个大模型 (6 个开源模型+ GPT-4o),组织参与了 2024 年高考「新课标I卷」的语文、数学、英语考试,然后由经验丰富的判卷老师评判得分。 结果如上图所

uniapp接入微信小程序原生代码配置方案(优化版)

uniapp项目需要把微信小程序原生语法的功能代码嵌套过来,无需把原生代码转换为uniapp,可以配置拷贝的方式集成过来 1、拷贝代码包到src目录 2、vue.config.js中配置原生代码包直接拷贝到编译目录中 3、pages.json中配置分包目录,原生入口组件的路径 4、manifest.json中配置分包,使用原生组件 5、需要把原生代码包里的页面修改成组件的方

UnrealScriptIDE调试环境部署

先安装vs2010   再安装VSIsoShell.exe, 下载地址 https://pan.baidu.com/s/10kPNUuDGTbWXbz7Nos-1WA       fd3t   最后安装unside,下载地址 https://archive.codeplex.com/?p=uside  安装中间有一步选择Binary文件夹要选对路径。   安装好以后,启动 UDKDe

eclipse运行springboot项目,找不到主类

解决办法尝试了很多种,下载sts压缩包行不通。最后解决办法如图: help--->Eclipse Marketplace--->Popular--->找到Spring Tools 3---->Installed。

22.手绘Spring DI运行时序图

1.依赖注入发生的时间 当Spring loC容器完成了 Bean定义资源的定位、载入和解析注册以后,loC容器中已经管理类Bean 定义的相关数据,但是此时loC容器还没有对所管理的Bean进行依赖注入,依赖注入在以下两种情况 发生: 、用户第一次调用getBean()方法时,loC容器触发依赖注入。 、当用户在配置文件中将<bean>元素配置了 lazy-init二false属性,即让

21.手绘Spring IOC运行时序图

1.再谈IOC与 DI IOC(lnversion of Control)控制反转:所谓控制反转,就是把原先我们代码里面需要实现的对象创 建、依赖的代码,反转给容器来帮忙实现。那么必然的我们需要创建一个容器,同时需要一种描述来让 容器知道需要创建的对象与对象的关系。这个描述最具体表现就是我们所看到的配置文件。 DI(Dependency Injection)依赖注入:就是指对象是被动接受依赖类

大语言模型(LLMs)能够进行推理和规划吗?

大语言模型(LLMs),基本上是经过强化训练的 n-gram 模型,它们在网络规模的语言语料库(实际上,可以说是我们文明的知识库)上进行了训练,展现出了一种超乎预期的语言行为,引发了我们的广泛关注。从训练和操作的角度来看,LLMs 可以被认为是一种巨大的、非真实的记忆库,相当于为我们所有人提供了一个外部的系统 1(见图 1)。然而,它们表面上的多功能性让许多研究者好奇,这些模型是否也能在通常需要系

IDEA配置Tomcat远程调试

因为不想把本地的Tomcat配置改乱或者多人开发项目想测试,本文主要是记录一下,IDEA使用Tomcat远程调试的配置过程,免得一段时间不去配置到时候忘记(毕竟这次是因为忘了,所以才打算记录的…) 首先在catalina.sh添加以下内容 JAVA_OPTS="-Dcom.sun.management.jmxremote=-Dcom.sun.management.jmxremote.port