当前位置: 首页 > news >正文

Ollama详解,无网环境导入运行本地下载的大模型,无网环境pycharm插件大模型调用(更新中)

Ollama详解,无网环境导入运行本地下载的大模型,无网环境pycharm插件大模型调用

  • ollama
    • 环境变量配置
      • 更改模型存储位置:设置 OLLAMA_MODELS 环境变量
      • 修改监听地址:设置 OLLAMA_HOST 环境变量
      • Ollama 自定义在 GPU 中运行
        • 前提条件
        • 指定使用的 GPU
    • 常用命令
      • ollama serve
    • 本地下载的gguf如何导入ollama
    • 如何将Hugging Face的SafeTensors模型转换为GGUF格式,以便在ollama平台上运行
    • 自定义 Prompt
    • 无网环境Pycharm插件Proxy AI调用本地大模型
  • 参考

在这里插入图片描述

ollama

Ollama 是一个开源的大型语言模型服务工具,旨在帮助用户快速在本地运行大模型。通过简单的安装指令,用户可以通过一条命令轻松启动和运行开源的大型语言模型。 它提供了一个简洁易用的命令行界面和服务器,专为构建大型语言模型应用而设计。用户可以轻松下载、运行和管理各种开源 LLM。与传统 LLM 需要复杂配置和强大硬件不同,Ollama 能够让用户在消费级的 PC 上体验 LLM 的强大功能。

Ollama 会自动监测本地计算资源,如有 GPU 的条件,会优先使用 GPU 的资源,同时模型的推理速度也更快。如果没有 GPU 条件,直接使用 CPU 资源。

Ollama 极大地简化了在 Docker 容器中部署和管理大型语言模型的过程,使用户能够迅速在本地启动和运行这些模型。

Ollama 支持的模型库列表 https://ollama.com/library

注意:运行 7B 模型至少需要 8GB 内存,运行 13B 模型至少需要 16GB 内存,运行 33B 模型至少需要 32GB 内存。

环境变量配置

在这里插入图片描述

更改模型存储位置:设置 OLLAMA_MODELS 环境变量

在这里插入图片描述

修改监听地址:设置 OLLAMA_HOST 环境变量

  • 0.0.0.0 表示监听所有网络接口,允许局域网访问。
  • 11434 是 Ollama 默认端口。

在这里插入图片描述

验证环境变量是否生效 echo %OLLAMA_MODELS%

Ollama 自定义在 GPU 中运行

Ollama 默认情况下使用 CPU 进行推理。为了获得更快的推理速度,可以配置 Ollama 使用的 GPU。

前提条件
  1. 电脑有 NVIDIA 显卡。
  2. 已安装 NVIDIA 显卡驱动程序,可以使用命令 nvidia-smi 来检查驱动程序是否安装。
  3. 已安装 CUDA 工具包,可以使用命令 nvcc --version 来检查 CUDA 是否安装。
    在这里插入图片描述
指定使用的 GPU

如果你的系统有多个 GPU,并且你想指定 Ollama 使用特定的 GPU,可以设置 CUDA_VISIBLE_DEVICES 环境变量。

  1. 查找 GPU 的 UUID: 强烈建议使用 UUID 而不是编号,因为编号可能会因为驱动更新或系统重启而发生变化。

  2. 打开命令提示符或 PowerShell。

    • 运行命令:nvidia-smi -L
    • 在输出中,找到想要使用的 GPU 的 “UUID” 值。

在这里插入图片描述

  1. 创建 CUDA_VISIBLE_DEVICES 变量:

    • 变量名: CUDA_VISIBLE_DEVICES
    • 变量值: 找到的 GPU 的 UUID。 例如:GPU-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  2. 运行 Ollama。 新开一个命令提示符窗口,使用 ollama ps 命令查看 Ollama 运行的进程。

在这里插入图片描述

常用命令

在这里插入图片描述

ollama serve

运行ollama,提示报错

Error: listen tcp 127.0.0.1:11434: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.

解决方法:禁用自启,结束进程,重启服务。

在这里插入图片描述
在这里插入图片描述

本地下载的gguf如何导入ollama

1.ollama安装是否成功

在这里插入图片描述

2.将model放在文件夹下,创建一个txt配置文件,如下所示:

在这里插入图片描述
3. 打开cmd,导航到你的配置文件所在路径; 在cmd中输入以下命令:ollama create 模型的名字 -f config.txt
4. 等待ollama完成模型的创建和部署;使用ollama list验证模型是否部署完成。
在这里插入图片描述
5. 使用ollama run qwen2:0.5b运行。
多行输入命令时,可以使用 “”" 进行换行;使用 “”" 结束换行。终止 Ollama 模型推理服务,可以使用 /bye
在这里插入图片描述
注意:Ollama 进程会一直运行,如果需要终止 Ollama 所有相关进程,可以使用以下命令:

Get-Process | Where-Object {$_.ProcessName -like '*ollama*'} | Stop-Process

如何将Hugging Face的SafeTensors模型转换为GGUF格式,以便在ollama平台上运行

Safetensors 是一种用于存储深度学习模型权重的文件格式,它旨在解决安全性、效率和易用性方面的问题。

1.从https://opencsg.com/models下载模型。

2.使用 llama.cpp https://github.com/ggml-org/llama.cpp 进行转换。llama.cpp 是 GGML 主要作者基于最早的 llama 的 c/c++ 版本开发的,目的就是希望用 CPU 来推理各种 LLM。克隆 llama.cpp 库到本地,与下载的模型放在同一目录下。

git clone https://github.com/ggerganov/llama.cpp.git

3.使用 llama.cpp 转换模型的流程基于 python 开发,需要安装相关的库,推荐使用 conda 或 venv 新建一个环境。

cd llama.cpp
pip install -r requirements.txt
python convert_hf_to_gguf.py -h

在这里插入图片描述

python convert_hf_to_gguf.py ../Qwen2-1.5B-Instruct --outfile Qwen2_instruct_1.5b.gguf --outtype f16

在这里插入图片描述
在这里插入图片描述

4.使用llama.cpp进行模型量化

模型量化是一种技术,将高精度的浮点数模型转换为低精度模型,模型量化的主要目的是减少模型的大小和计算成本,尽可能保持模型的准确性,其目标是使模型能够在资源有限的设备上运行,例如CPU或者移动设备。

  • 创建 Modelfile 文件,编写以下内容:FROM ./Qwen2_instruct_1.5b.gguf

  • ollama create -q Q4_K_M mymodel3 -f ./Modelfile(Q4_K_M 是一种 4 位(4-bit)量化格式。)

在这里插入图片描述

自定义 Prompt

Ollama 支持自定 义Prompt,可以让模型生成更符合用户需求的文本。

  • 根目录下创建一个 Modelfile 文件
FROM llama3.1
# sets the temperature to 1 [higher is more creative, lower is more coherent]
# 设置温度为1[越高越有创意,越低越连贯]
PARAMETER temperature 1
# sets the context window size to 4096, this controls how many tokens the LLM can use as context to generate the next token
# 设置上下文窗口大小为4096,这控制了LLM可以使用多少令牌作为上下文来生成下一个令牌
PARAMETER num_ctx 4096

# sets a custom system message to specify the behavior of the chat assistant
# 设置自定义系统消息来指定聊天助手的行为
# SYSTEM You are Mario from super mario bros, acting as an assistant.
SYSTEM 你是一位在数学竞赛、数学建模竞赛、大数据竞赛以及人工智能(涵盖深度学习、大模型和机器学习)领域拥有卓越成就的专家型 AI。擅长以生动、有趣且浅显易懂的方式,为用户深入阐释相关知识,同时还能根据要求生成图像并进行说明。
  • 创建模型
ollama create mymodel -f ./Modelfile

无网环境Pycharm插件Proxy AI调用本地大模型

https://plugins.jetbrains.com/plugin/21056-proxy-ai

Proxy AI 可以在无网环境下不需要登录即可使用
在这里插入图片描述

参考

1.https://ollama.com/
2.https://lmstudio.ai/
3.https://manus.im/
4.https://www.trae.com.cn/?utm_campaign=r1
5.https://datawhalechina.github.io/handy-ollama/#/

相关文章:

  • 招聘面试季--一文顿悟,Java中字节流和字符流的区别及使用场景上的差异
  • Linux安装go环境
  • Linux练习
  • 训练过程中实时显示 epoch 进度和动态指标
  • Babel 从入门到精通(二):Plugin插件和Preset预设配置详解
  • 红数码影视(RED Digital Cinema)存储卡格式化后的恢复方法
  • 从理论到实践:RK3576边缘逻辑引擎在冷链物流的成功案例
  • C++关键字汇总
  • 【蓝桥杯—单片机】IAP15F2K61S2专项 | 真题整理、解析与拓展 | 省赛题(更新ing...)
  • 单臂路由实验
  • 数据库:一文掌握 Neo4J 的各种指令(Neo4J指令备忘)
  • Windows 图形显示驱动开发-WDDM 2.9功能- 支持跨适配器资源扫描 (CASO)(二)
  • Spring框架部分知识
  • Unity开放世界实时GI分块烘焙策略技术详解
  • 好看的css星星效果边框
  • tomcat部署war包会先找什么
  • 注意力机制,本质上是在做什么?
  • 软件设计原则之里氏替换原则
  • 基于 EMA12 指标结合 iTick 外汇报价 API 、股票报价API、指数报价API的量化策略编写与回测
  • HCIE-SLAAC
  • 西班牙遭遇史上最严重停电,已进入国家紧急状态
  • 俄罗斯延长非法滞留外国人限期离境时间至9月
  • 绵阳造AI机器狗参与警务工作,演练中辅助民警控制“嫌疑人员”
  • 中国黄金协会:一季度我国黄金产量同比增1.49%,黄金消费量同比降5.96%
  • 传智教育连续3个交易日跌停:去年净利润由盈转亏
  • 上海浦东单价超10万楼盘228套房源开盘当天售罄,4月已有三个新盘“日光”