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

相关文章

C++中assign函数的使用

《C++中assign函数的使用》在C++标准模板库中,std::list等容器都提供了assign成员函数,它比操作符更灵活,支持多种初始化方式,下面就来介绍一下assign的用法,具有一定的参考价... 目录​1.assign的基本功能​​语法​2. 具体用法示例​​​(1) 填充n个相同值​​(2)

JAVA中安装多个JDK的方法

《JAVA中安装多个JDK的方法》文章介绍了在Windows系统上安装多个JDK版本的方法,包括下载、安装路径修改、环境变量配置(JAVA_HOME和Path),并说明如何通过调整JAVA_HOME在... 首先去oracle官网下载好两个版本不同的jdk(需要登录Oracle账号,没有可以免费注册)下载完

Spring StateMachine实现状态机使用示例详解

《SpringStateMachine实现状态机使用示例详解》本文介绍SpringStateMachine实现状态机的步骤,包括依赖导入、枚举定义、状态转移规则配置、上下文管理及服务调用示例,重点解... 目录什么是状态机使用示例什么是状态机状态机是计算机科学中的​​核心建模工具​​,用于描述对象在其生命

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

SQL server数据库如何下载和安装

《SQLserver数据库如何下载和安装》本文指导如何下载安装SQLServer2022评估版及SSMS工具,涵盖安装配置、连接字符串设置、C#连接数据库方法和安全注意事项,如混合验证、参数化查... 目录第一步:打开官网下载对应文件第二步:程序安装配置第三部:安装工具SQL Server Manageme

使用Python删除Excel中的行列和单元格示例详解

《使用Python删除Excel中的行列和单元格示例详解》在处理Excel数据时,删除不需要的行、列或单元格是一项常见且必要的操作,本文将使用Python脚本实现对Excel表格的高效自动化处理,感兴... 目录开发环境准备使用 python 删除 Excphpel 表格中的行删除特定行删除空白行删除含指定

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

prometheus如何使用pushgateway监控网路丢包

《prometheus如何使用pushgateway监控网路丢包》:本文主要介绍prometheus如何使用pushgateway监控网路丢包问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录监控网路丢包脚本数据图表总结监控网路丢包脚本[root@gtcq-gt-monitor-prome

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

SpringBoot中如何使用Assert进行断言校验

《SpringBoot中如何使用Assert进行断言校验》Java提供了内置的assert机制,而Spring框架也提供了更强大的Assert工具类来帮助开发者进行参数校验和状态检查,下... 目录前言一、Java 原生assert简介1.1 使用方式1.2 示例代码1.3 优缺点分析二、Spring Fr