LLM大模型部署实战指南:Ollama简化流程,OpenLLM灵活部署,LocalAI本地优化,Dify赋能应用开发

   日期:2024-12-26    作者:tl1312 移动:http://mip.riyuangf.com/mobile/quote/43434.html

Ollama 是一个开源框架,专为在本地机器上便捷部署和运行大型语言模型(LLM)而设计。,这是 Ollama 的官网地址:ollama.com/

  • 以下是其主要特点和功能概述:

    1. 简化部署:Ollama 目标在于简化在 Docker 容器中部署大型语言模型的过程,使得非专业用户也能方便地管理和运行这些复杂的模型。

    2. 轻量级与可扩展:作为轻量级框架,Ollama 保持了较小的资源占用,同时具备良好的可扩展性,允许用户根据需要调整配置以适应不同规模的项目和硬件条件。

    3. API支持:提供了一个简洁的 API,使得开发者能够轻松创建、运行和管理大型语言模型实例,降低了与模型交互的技术门槛。

    4. 预构建模型库:包含一系列预先训练好的大型语言模型,用户可以直接选用这些模型应用于自己的应用程序,无需从头训练或自行寻找模型源

curl: (77) error setting certificate verify locations:CAfile: /data/usr/local/anaconda/ssl/cacert.pemCApath: none 报错原因: cacert.pem 的寻址路径 CAfile 不对,也就是在该路径下找不到文件。

  • 解决方法:
  1. 找到你的 cacert.pem 文件所在位置 /path/to/cacert.pem。如果你没有该证书,可以先在 curl.se/ca/cacert.p… 下载,保存在某个目录中。
  2. 设置环境变量

  • 执行下载


ollama中文网:ollama.fan/getting-sta…

  1. 下载 ollama 二进制文件:Ollama 以自包含的二进制文件形式分发。将其下载到您的 PATH 中的目录:

2. 将 Ollama 添加为启动服务(推荐):为 Ollama 创建一个用户:


3.在 /etc/systemd/system/ollama.service 中创建一个服务文件:


3. 然后启动服务:


4. 启动 Ollama¶ 使用 systemd 启动 Ollama:


5. 更新,查看日志


6. 步骤7:关闭 Ollama 服务



  1. 查看服务器CPU的型号

2. 步骤2:根据CPU型号下载Ollama安装包,并保存到目录

下载地址: github.com/ollama/olla…




下载到离线服务器上:/usr/bin/ollama ollama就是你下载的ollama-linux-amd64 改名了(mv),其他步骤一致

Ollama模型默认存储在:

  • macOS: ~/.ollama/models
  • Linux: /usr/share/ollama/.ollama/models
  • Windows: C:Users<username>.ollamamodels

如果 Ollama 作为 systemd 服务运行,则应使用以下命令设置环境变量systemctl:

  1. 通过调用 来编辑 systemd 服务systemctl edit ollama.service。这将打开一个编辑器。

  2. Environment对于每个环境变量,在部分下添加一行[Service]:

直接在“/etc/systemd/system/ollama.service”增了2行:


3. 保存并退出。

  1. 重新加载systemd并重新启动 Ollama:

参考链接:github.com/ollama/olla…

  1. 使用 systemd 启动 Ollama:

6. 终止

终止(ollama加载的大模型将会停止占用显存,此时ollama属于失联状态,部署和运行操作失效,会报错:

Error: could not connect to ollama app, is it running?需要启动后,才可以进行部署和运行操作


  • 终止后启动(启动后,可以接着使用ollama 部署和运行大模型)


  • 下载模型


  • 运行大模型


  • 查看是否识别到大模型: , 如果成功, 则会看到大模型

  • 使用该命令查看当前已加载到内存中的模型。

  • nvidia-smi查看

  • 启动后,我们可验证是否可用:


Ollama 可以设置的环境变量

  • :这个变量定义了Ollama监听的网络接口。通过设置OLLAMA_HOST=0.0.0.0,我们可以让Ollama监听所有可用的网络接口,从而允许外部网络访问。

  • :这个变量指定了模型镜像的存储路径。通过设置OLLAMA_MODELS=F:OllamaCache,我们可以将模型镜像存储在E盘,避免C盘空间不足的问题。

  • :这个变量控制模型在内存中的存活时间。设置OLLAMA_KEEP_ALIVE=24h可以让模型在内存中保持24小时,提高访问速度。

  • :这个变量允许我们更改Ollama的默认端口。例如,设置OLLAMA_PORT=8080可以将服务端口从默认的11434更改为8080。

  • :这个变量决定了Ollama可以同时处理的用户请求数量。设置OLLAMA_NUM_PARALLEL=4可以让Ollama同时处理两个并发请求。

  • :这个变量限制了Ollama可以同时加载的模型数量。设置OLLAMA_MAX_LOADED_MODELS=4可以确保系统资源得到合理分配。

Environment="OLLAMA_PORT=9380" 没有用

  • 这样指定:

  • 指定 GPU 本地有多张 GPU,如何用指定的 GPU 来运行 Ollama? 在Linux上创建如下配置文件,并配置环境变量 CUDA_VISIBLE_DEVICES 来指定运行 Ollama 的 GPU,再重启 Ollama 服务即可【测试序号从0还是1开始,应是从0开始】。



  1. 重启 ollama

2. 重启 ollama 服务

ubuntu/debian


  • Ubuntu

  1. 确认服务端口状态:

  1. 配置服务

为使外网环境能够访问到服务,需要对 HOST 进行配置。

打开配置文件:


根据情况修改变量 Environment:

服务器环境下:


虚拟机环境下:



如果决定不再使用Ollama,可以通过以下步骤将其完全从系统中移除:

(1)停止并禁用服务:


(2)删除服务文件和Ollama二进制文件:


(3)清理Ollama用户和组:


通过以上步骤,不仅能够在Linux平台上成功安装和配置Ollama,还能够灵活地进行更新和卸载。

OpenLLM 于 2023 年 6 月开源,是一个用于部署大语言模型的框架。目前,该项目在 GitHub 上已经获得了 9.6K星标。其最初的口号是通过一行代码或相对轻松地在不同的大语言模型之间切换,为个人用户提供方便。OpenLLM是一个用于在生产环境中操作大型语言模型(LLM)的开放平台,它可以轻松地微调、服务、部署和监控任何LLM。

  • 安装

  • 支持模型
    • Llama-3.1
    • Llama-3
    • Phi-3
    • Mistral
    • Gemma-2
    • Qwen-2
    • Gemma
    • Llama-2
    • Mixtral
  • 在 设置 > 模型供应商 > OpenLLM 中填入:

    • 模型名称:

    • 服务器 URL:http://<Machine_IP>:3333 替换成您的机器 IP 地址 "保存" 后即可在应用中使用该模型。

OpenLLM 提供了一个内置的 Python 客户端,允许您与模型进行交互。在不同的终端窗口或 Jupyter notebook 中,创建一个客户端以开始与模型交互:


  • 可以使用 openllm query 命令从终端查询模型:

使用 openllm models 命令查看 OpenLLM 支持的模型及其变体列表。

LocalAI 是一个本地推理框架,提供了 RESTFul API,与 OpenAI API 规范兼容。它允许你在消费级硬件上本地或者在自有服务器上运行 LLM(和其他模型),支持与 ggml 格式兼容的多种模型家族。不需要 GPU。 Dify 支持以本地部署的方式接入 LocalAI 部署的大型语言模型推理和 embedding 能力。

  • giuhub:github.com/mudler/Loca…
  • 官网手册:localai.io/docs/gettin…
  • 官方快速部署手册案例:localai.io/docs/gettin…
  1. 首先拉取 LocalAI 代码仓库,并进入指定目录

2. 下载demo LLM 和 Embedding 模型(仅供参考)


  • 参考文章:告别Hugging Face模型下载难题
  1. 配置 .env 文件

NOTE:请确保 .env 中的 THREADS 变量值不超过您本机的 CPU 核心数。

  1. 启动 LocalAI

开放了本机 http://127.0.0.1:8080 作为 LocalAI 请求 API 的端点。

并提供了两个模型,分别为:

  • LLM 模型:ggml-gpt4all-j

    对外访问名称:gpt-3.5-turbo(该名称可自定义,在 models/gpt-3.5-turbo.yaml 中配置。

  • Embedding 模型:all-MiniLM-L6-v2

    对外访问名称:text-embedding-ada-002(该名称可自定义,在 models/embeddings.yaml 中配置。

使用 Dify Docker 部署方式的需要注意网络配置,确保 Dify 容器可以访问到localAI 的端点,Dify 容器内部无法访问到 localhost,需要使用宿主机 IP 地址。

  1. LocalAI API 服务部署完毕,在 Dify 中使用接入模型

在 设置 > 模型供应商 > LocalAI 中填入:

  • 模型 1:ggml-gpt4all-j

    • 模型类型:文本生成
    • 模型名称:gpt-3.5-turbo
    • 服务器 URL:http://127.0.0.1:8080
    • 若 Dify 为 docker 部署,请填入 host 域名:http://your-LocalAI-endpoint-domain:8080,可填写局域网 IP 地址,如:http://192.168.1.100:8080
  • 模型 2:all-MiniLM-L6-v2

    • 模型类型:Embeddings
    • 模型名称:text-embedding-ada-002
    • 服务器 URL:http://127.0.0.1:8080
    • 若 Dify 为 docker 部署,请填入 host 域名:http://your-LocalAI-endpoint-domain:8080,可填写局域网 IP 地址,如:http://192.168.1.100:8080

如需获取 LocalAI 更多信息,请参考:github.com/go-skynet/L…

  • 确认服务端口状态:


  • 报错: "Error: could not connect to ollama app, is it running?"

参考链接:stackoverflow.com/questions/7…

/etc/systemd/system/ollama.service文件是:


  • 运行指令

在 设置 > 模型供应商 > Ollama 中填入:

  • 模型名称:llama3.1

  • 基础 URL:

    • 此处需填写可访问到的 Ollama 服务地址。
    • 若 Dify 为 docker 部署,建议填写局域网 IP 地址,如: 或 docker 宿主机 IP 地址,如:。
    • 若为本地源码部署,可填写 。
  • 模型类型:对话

  • 模型上下文长度:4096

    • 模型的最大上下文长度,若不清楚可填写默认值 4096。
  • 最大 token 上限:4096

    • 模型返回内容的最大 token 数量,若模型无特别说明,则可与模型上下文长度保持一致。
  • 是否支持 Vision:是

    • 当模型支持图片理解(多模态)勾选此项,如 llava。
  • 点击 "保存" 校验无误后即可在应用中使用该模型。

  • Embedding 模型接入方式与 LLM 类似,只需将模型类型改为 Text Embedding 即可。

  • 如果您使用Docker部署Dify和Ollama,您可能会遇到以下错误:

这个错误是因为 Docker 容器无法访问 Ollama 服务。localhost 通常指的是容器本身,而不是主机或其他容器。要解决此问题,您需要将 Ollama 服务暴露给网络。

参考单个模型部署一样,进行再一次配置添加即可

  • 需要注意的是添加完新的模型配置后,需要刷新dify网页,直接网页端刷新就好,新添加的模型就会加载进来
  • 可以看到调用后模型资源消耗情况
  • 更多LLM平台参考:

    • RAG+AI工作流+Agent:LLM框架该如何选择,全面对比MaxKB、Dify、FastGPT、RagFlow、Anything-LLM,以及更多推荐

    • 智胜未来:国内大模型+Agent应用案例精选,以及主流Agent框架开源项目推荐

  • 官方网址:dify.ai/zh

  • github地址:github.com/langgenius/…

  • ollama中文网址:ollama.fan/

  • ollama安装教程:ollama.fan/getting-sta…

  • Ollama Linux部署与应用LLama 3

更多优质内容请关注公号:汀丶人工智能;会提供一些相关的资源和优质文章,免费获取阅读。


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号