LLM@本地语言大模型@Gemma的安装与使用@dockerDesktop的安装和启动

2024-03-01 10:52

本文主要是介绍LLM@本地语言大模型@Gemma的安装与使用@dockerDesktop的安装和启动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 准备
      • refs
      • ollama
      • 安装过程
      • 2b模型的效果小结👺
    • ollama的进一步使用
      • 帮助文档
      • 查看ollama安装了哪些模型
      • 使用皮肤来使聊天更易用
    • 使用Chatbot UI皮肤
      • 安装docker👺
      • 启动docker
      • 载入和退出docker
      • chatbot 网页版皮肤
    • 使用命令行聊天
    • 小结👺

准备

  • 在windows环境下操作,可能要代理改善下载体验

refs

  • 一键部署Google开源大模型Gemma本地大模型部署

ollama

  • GitHub - ollama/ollama: Get up and running with Llama 2, Mistral, Gemma, and other large language models.
  • 安装ollamaOllama
    • 可以安装许多开源大模型,例如llama2等
  • 使用ollama可以一键安装的大模型列表:library (ollama.com)
    • 例如:gemma (ollama.com)

安装过程

  • 安装完ollama,检查是否正确安装:

    • PS BAT [10:21:12 AM] [C:\Users\cxxu\Desktop]
      [🔋 100%] MEM:73.71% [5.79/7.85] GB |ollama --version
      ollama version is 0.1.27
      
  • 开始安装模型(这里使用的电脑没有GUP太low,所以选择用cpu就可以运行的2b模型(20亿参数),对内存要求也不高,我这里只有约8GB内存)

    PS BAT [10:21:17 AM] [C:\Users\cxxu\Desktop]
    [🔋 100%] MEM:71.47% [5.61/7.85] GB |ollama run gemma:2b
    pulling manifest
    pulling c1864a5eb193...   1% ▕                                                        ▏  14 MB/1.7 GB  1.5 MB/s   18m1sPS BAT [10:28:04 AM] [C:\Users\cxxu\Desktop]
    [🔋 100%] MEM:48.33% [3.79/7.85] GB |ollama run gemma:2b
    pulling manifest
    pulling c1864a5eb193... 100% ▕████████████████████████████████████████████████████████▏ 1.7 GB
    pulling 097a36493f71... 100% ▕████████████████████████████████████████████████████████▏ 8.4 KB
    pulling 109037bec39c... 100% ▕████████████████████████████████████████████████████████▏  136 B
    pulling 22a838ceb7fb... 100% ▕████████████████████████████████████████████████████████▏   84 B
    pulling 887433b89a90... 100% ▕████████████████████████████████████████████████████████▏  483 B
    verifying sha256 digest
    writing manifest
    removing any unused layers
    success
    • 模型下载:我这里国内网络下载的挺快的,但是后面5%很慢,不知道为什么(有的可能会遇到下载不下来的情况,考虑切换网络环境或时间段重试,或者需要全局代理(you know))
  • 简单聊两句

    • >>> hello!
      Hello! 👋  It's nice to hear from you. How can I help you today? 😊>>> introduce yourself please😁
      Hey there! It's great to meet you as well! I'm a language AI, and I'm here to assist you with any questions or
      tasks you may have. How can I help you today?
      >>> how do you think about google
      Google is an American multinational technology company that specializes in search engines, software, and other
      services. They are one of the most valuable companies in the world, and their search engine is the most widely
      used in the world.What do you think about Google? Is it a good company to work for? What are your thoughts on their products and
      services?>>> replay it in Chinese anagin!
      谷歌是美國著名的科技公司,致力於搜尋引擎、軟體和其他服務。他們是世界上最具價值的公司之一,他們的搜尋引擎是世界最使用的之一。你對谷歌有什麼看法?谷歌是一個好的公司嗎?你對他們的產品和服務有什麼看法?
      

2b模型的效果小结👺

  • 2b模型不给力,至少中文方面是这样的,不知道7b的如何

  • >>> 鲁迅和周树人的关系?
    鲁迅和周树人之间存在着深厚的友情和敬意之情。鲁迅是周树人 的好友和老师,两人在文学创作、政治活动和社会发展鲁迅和周 树人之间存在着深厚的友情和敬意之情。鲁迅是周树人的好友和 老师,两人在文学创作、政治活动和社会发展方面有着深远的影 响力。**鲁迅对周树人的影响:*** 鲁迅是周树人的文学老师,他对周树人的写作技巧和精神追求 给予了指导。
    * 鲁迅曾写了一首诗,以表彰周树人的对中国文化的贡献,称为“周树人颂”。
    
  • 让它写一段快速排序也是错误的

ollama的进一步使用

帮助文档

  • PS>ollama --help
    Large language model runnerUsage:ollama [flags]ollama [command]Available Commands:serve       Start ollamacreate      Create a model from a Modelfileshow        Show information for a modelrun         Run a modelpull        Pull a model from a registrypush        Push a model to a registrylist        List modelscp          Copy a modelrm          Remove a modelhelp        Help about any commandFlags:-h, --help      help for ollama-v, --version   Show version informationUse "ollama [command] --help" for more information about a command.
    

查看ollama安装了哪些模型

  • PS>ollama list
    NAME            ID              SIZE    MODIFIED
    gemma:2b        b50d6c999e59    1.7 GB  17 minutes ago
    

使用皮肤来使聊天更易用

  • Community Integrations

  • web&desktop

    • 例如GitHub - ivanfioravanti/chatbot-ollama: Chatbot Ollama is an open source chat UI for Ollama.

使用Chatbot UI皮肤

  • 这里以chatbot为例

安装docker👺

  • 使用docker方案安装UI:

    • 个人感觉docker desktop做的不是很完善
    • 下载最新版Docker Desktop release notes | Docker Docs
    • (主下载页面下载下来的反而不一定是最新版)Docker Desktop: The #1 Containerization Tool for Developers | Docker
  • 安装dockerd的过程启动安装界面比较慢,耐心等待,不要重复点击

    • docker版本更新:如果要安装新版的docker,直接安装可能会被阻止(旧版本的进程可能不容易杀死)
    • 建议更新前注销当前账户(登出windows),或者重启后安装
  • 安装或更新完毕,会要求重启电脑(对于初次安装使用者,先不要重启,看下一节)

启动docker

  • 如果安装时勾选了wsl2代替hyperv,那么重启电脑前执行wsl --update
  • 即重启前请执行wsl --update,否则即便重启后也可能无法启动docker
  • 执行完上述命令后重启
  • 然后以管理员权限运行docker,通常来讲就可成功启动docker

载入和退出docker

  • 进入docker和退出docker都挺耗时的,需要耐心一些(但是一般也不会超过2分钟,否则就可能是出问题了),毕竟是虚拟机操作

  • 在这里插入图片描述

chatbot 网页版皮肤

  • 国内直接安装是不容易下载下来(很慢),用代理的话可以快点,打断后需要重新下载一遍

    PS BAT [12:05:45 PM] [C:\Users\cxxu\Desktop]
    [🔋 100%] MEM:73.05% [5.73/7.85] GB |docker run -p 3000:3000 ghcr.io/ivanfioravanti/chatbot-ollama:main
    Unable to find image 'ghcr.io/ivanfioravanti/chatbot-ollama:main' locally
    main: Pulling from ivanfioravanti/chatbot-ollama
    4abcf2066143: Pull complete
    2f6d6b553e5a: Pull complete
    c6a5f30c1979: Pull complete
    0fff72987922: Pull complete
    eb03cd48595f: Pull complete
    80fa45e7c128: Pull complete
    f3a6b16fbbb9: Pull complete
    ba832799bc4f: Pull complete
    23fd0e505f52: Pull complete
    45892a5fb863: Pull complete
    e5e1e83df1a2: Pull complete
    Digest: sha256:a6bebee38b0359f092eca6cd6bf6cf49e36b9b0e4e28c8376e27d61c96a81e63
    Status: Downloaded newer image for ghcr.io/ivanfioravanti/chatbot-ollama:main> chatbot-ollama@0.1.0 start
    > next start▲ Next.js 14.1.0- Local:        http://localhost:3000✓ Ready in 1610ms
    
  • 可能遇到的报错

    • PS BAT [12:05:27 PM] [C:\Users\cxxu\Desktop]
      [🔋 100%] MEM:72.28% [5.67/7.85] GB |docker run -p 3000:3000 ghcr.io/ivanfioravanti/chatbot-ollama:mainUnable to find image 'ghcr.io/ivanfioravanti/chatbot-ollama:main' locally
      docker: Error response from daemon: Head "https://ghcr.io/v2/ivanfioravanti/chatbot-ollama/manifests/main": net/http: TLS handshake timeout.
      See 'docker run --help'.
      
    • 重试一两次即可,如果仍然不成功,可能是docker没安装好或网络不行

使用命令行聊天

  • 比起使用皮肤聊天,命令行方式少占用点资源,会输出顺畅一些

  • 使用cmd可能要比powershell好点(特别是powershell安装了皮肤,容易导致显示问题)

  • 使用ollama run gemma:2b启动模型,需要若干秒的时间(2b模型太拉了,别较真)

  • PS>ollama run gemma:2b
    >>> 陆地上哪种生物跑 得最快
    陆地上最大的速度是**松鼠**跑得最快,可以达到**90公里每小时**。>>> what's the fastest fish in the sea?
    最快的鱼是**热带鱼**,可以达到**60公里每小时**。>>> the area of China
    中国是世界上拥有最大生物多样性的国家,也是世界上速度最大生物的产地。**松鼠**是世界上速度最快的动物,可以达到**90公里每小时**。
    **热带鱼**是世界上速度第二快的鱼,可以达到**60公里每小时**。
    

小结👺

  • 低配电脑还是不要本地大模型了,配置不够,对话体验相当差(慢且乱),还是老老实实用在线大模型吧

  • 很离谱,下面的对话🤣

  • 在这里插入图片描述

这篇关于LLM@本地语言大模型@Gemma的安装与使用@dockerDesktop的安装和启动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Pandas使用SQLite3实战

《Pandas使用SQLite3实战》本文主要介绍了Pandas使用SQLite3实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1 环境准备2 从 SQLite3VlfrWQzgt 读取数据到 DataFrame基础用法:读

JSON Web Token在登陆中的使用过程

《JSONWebToken在登陆中的使用过程》:本文主要介绍JSONWebToken在登陆中的使用过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录JWT 介绍微服务架构中的 JWT 使用结合微服务网关的 JWT 验证1. 用户登录,生成 JWT2. 自定义过滤

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Java中StopWatch的使用示例详解

《Java中StopWatch的使用示例详解》stopWatch是org.springframework.util包下的一个工具类,使用它可直观的输出代码执行耗时,以及执行时间百分比,这篇文章主要介绍... 目录stopWatch 是org.springframework.util 包下的一个工具类,使用它

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

springboot security使用jwt认证方式

《springbootsecurity使用jwt认证方式》:本文主要介绍springbootsecurity使用jwt认证方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录前言代码示例依赖定义mapper定义用户信息的实体beansecurity相关的类提供登录接口测试提供一

go中空接口的具体使用

《go中空接口的具体使用》空接口是一种特殊的接口类型,它不包含任何方法,本文主要介绍了go中空接口的具体使用,具有一定的参考价值,感兴趣的可以了解一下... 目录接口-空接口1. 什么是空接口?2. 如何使用空接口?第一,第二,第三,3. 空接口几个要注意的坑坑1:坑2:坑3:接口-空接口1. 什么是空接

springboot security快速使用示例详解

《springbootsecurity快速使用示例详解》:本文主要介绍springbootsecurity快速使用示例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录创www.chinasem.cn建spring boot项目生成脚手架配置依赖接口示例代码项目结构启用s

Python如何使用__slots__实现节省内存和性能优化

《Python如何使用__slots__实现节省内存和性能优化》你有想过,一个小小的__slots__能让你的Python类内存消耗直接减半吗,没错,今天咱们要聊的就是这个让人眼前一亮的技巧,感兴趣的... 目录背景:内存吃得满满的类__slots__:你的内存管理小助手举个大概的例子:看看效果如何?1.

java中使用POI生成Excel并导出过程

《java中使用POI生成Excel并导出过程》:本文主要介绍java中使用POI生成Excel并导出过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求说明及实现方式需求完成通用代码版本1版本2结果展示type参数为atype参数为b总结注:本文章中代码均为