从零开始的Ollama指南:部署私域大模型

大模型相关目录

大模型,包括部署微调prompt/Agent应用开发、知识库增强、数据库增强、知识图谱增强、自然语言处理、多模态等大模型应用开发内容
从0起步,扬帆起航。

  1. 大模型应用向开发路径:AI代理工作流
  2. 大模型应用开发实用开源项目汇总
  3. 大模型问答项目问答性能评估方法
  4. 大模型数据侧总结
  5. 大模型token等基本概念及参数和内存的关系
  6. 大模型应用开发-华为大模型生态规划
  7. 从零开始的LLaMA-Factory的指令增量微调
  8. 基于实体抽取-SMC-语义向量的大模型能力评估通用算法(附代码)
  9. 基于Langchain-chatchat的向量库构建及检索(附代码)
  10. 一文教你成为合格的Prompt工程师
  11. 最简明的大模型agent教程
  12. 批量使用API调用langchain-chatchat知识库能力
  13. langchin-chatchat部分开发笔记(持续更新)
  14. 文心一言、讯飞星火、GPT、通义千问等线上API调用示例
  15. 大模型RAG性能提升路径
  16. langchain的基本使用
  17. 结合基础模型的大模型多源信息应用开发
  18. COT:大模型的强化利器
  19. 多角色大模型问答性能提升策略(附代码)
  20. 大模型接入外部在线信息提升应用性能
  21. 从零开始的Dify大模型应用开发指南
  22. 基于dify开发的多模态大模型应用(附代码)
  23. 基于零一万物多模态大模型通过外接数据方案优化图像文字抽取系统
  24. 快速接入stable diffusion的文生图能力
  25. 多模态大模型通过外接数据方案实现电力智能巡检(设计方案)
  26. 大模型prompt实例:知识库信息质量校验模块
  27. 基于Dify的LLM-RAG多轮对话需求解决方案(附代码)
  28. Dify大模型开发技巧:约束大模型回答范围
  29. 以API形式调用Dify项目应用(附代码)
  30. 基于Dify的QA数据集构建(附代码)
  31. Qwen-2-7B和GLM-4-9B:大模型届的比亚迪秦L
  32. 文擎毕昇和Dify:大模型开发平台模式对比
  33. Qwen-VL图文多模态大模型微调指南
  34. 从零开始的Ollama指南:部署私域大模型

文章目录

  • 大模型相关目录
  • Olama简介
  • 下载更新
  • 模型下载(https://ollama.com/library)
  • 修改环境变量
  • 模型对话
  • 运行模型
  • 更多应用示例参考:


Olama简介

Olama是一个旨在简化大型语言模型本地部署和运行过程的工具。它提供了一个轻量级、易于扩展的框架,让开发者能够在本地机器上轻松构建和管理LLMS。通过Olama,开发者可以访问和运行一系列预构建的模型,并与其他开源项目、应用程序进行耦合实现大模型应用开发。

在这里插入图片描述
Ollama支持多场家、多尺寸、多模态的各类大模型。此外,还提供Chinese-中文模型、Embedding-嵌入、Multimodal-多模态、Code-编码模型、RAG-检索增强生成、SLM-小语言模型、Medical-医学模型、Cybersecurity-网络安全等模型。

下载更新

curl -fsSL https://ollama.com/install.sh | sh

模型下载(https://ollama.com/library)

ollama pull llama2
ollama pull wizardlm2:8x22b

在这里插入图片描述
上述指令也可由上图内容代替,选定厂家、参数规模、量化格式后即可使用对应的指令运行,若本地服务器没有模型,则默认下载。

修改环境变量

使用root权限打开文件:

sudonano/etc/systemd/system/ollama.service

找到[Service]部分,在最后一行添加:

Environment="OLLAMA_HOST=0.0.0.0"
sudo nano ollama.service

在这里插入图片描述
指定显卡

Environment="CUDA_VISIBLE_DEVICES=0,1"

设定并发

Environment="OLLAMA_NUM_PARALLEL=16"

设定模型存活时间

Environment="OLLAMA_KEEP_ALIVE=24h"

设定可同时加载模型数量

Environment="OLLAMA_MAX_LOADED_MODELS=4"

指定存储位置

Environment="OLLAMA_MODELS=/data/ollama/models"

按下Ctrl+X保存并退出。系统会提示您是否要保存修改,输入y回车即可。

重新加载systemd配置并重启Ollama服务:

sudosystemctldaemon-reload
sudosystemctlrestartollama

模型对话

运行模型

ollama pull llama2
pip install -r requirements.txt
import jsonimport requests# NOTE: ollama must be running for this to work, start the ollama app or run `ollama serve`model = "llama2"  # TODO: update this for whatever model you wish to usedef chat(messages):r = requests.post("http://0.0.0.0:11434/api/chat",json={"model": model, "messages": messages, "stream": True},)r.raise_for_status()output = ""for line in r.iter_lines():body = json.loads(line)if "error" in body:raise Exception(body["error"])if body.get("done") is False:message = body.get("message", "")content = message.get("content", "")output += content# the response streams one token at a time, print that as we receive itprint(content, end="", flush=True)if body.get("done", False):message["content"] = outputreturn messagedef main():messages = []while True:user_input = input("Enter a prompt: ")if not user_input:exit()print()messages.append({"role": "user", "content": user_input})message = chat(messages)messages.append(message)print("\n\n")if __name__ == "__main__":main()

若返回模型回复则成功

更多应用示例参考:

https://ollama.fan/getting-started/examples/001-python-simplechat/#running-the-example

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/32030.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

跨行业数据资产共享与协同:构建一体化数据共享平台,解锁数据资产潜力,促进多行业数据流通与深度应用,共创数字化转型新篇章,引领行业发展新趋势,开启智慧互联新纪元

一、引言 随着信息技术的飞速发展,数据已成为推动社会进步和经济发展的关键要素。然而,在传统行业领域,数据往往被限制在各自的“孤岛”中,难以实现跨行业的流通与共享。这不仅限制了数据的价值发挥,也阻碍了行业的创…

【Apache Doris】如何实现高并发点查?(原理+实践全析)

【Apache Doris】如何实现高并发点查?(原理实践全析) 一、背景说明二、原理介绍三、环境信息四、Jmeter初始化五、参数预调六、用例准备七、高并发实测八、影响因素九、总结 本文主要分享 Apache Doris 是如何实现高并发点查的,以…

【pytorch02】手写数字问题引入

1.数据集 现实生活中遇到的问题 车牌识别身份证号码识别快递单的识别 都会涉及到数字识别 MNIST(收集了很多人手写的0到9数字的图片) 每个数字拥有7000个图像train/test splitting:60k vs 10k 图片大小28 28 数据集划分成训练集和测试集合的意义…

推荐4款电脑软件,简单已入手,关键是免费,建议收藏

拖把更名器 拖把更名器是一款功能强大的文件名称修改工具,主要用于批量进行文件更名和整理音乐文件标签。该软件结合资源管理器右键菜单,支持多种文件格式和操作方式,包括MP3、RM、RMVB、WMA等标签更名,文件名、标签内码转换、繁简…

threeJS 基础 03---动画

1.动画效果渲染循环 注: 使用循环渲染时,不用手动渲染到画布且再次调用监听更新事件,两者只用使用其中之一即可 周期循环,默认理想状态下每秒循环60次 requestAnimationFrame 渲染帧率(详情见threeJs的文档&#xff…

五种主流数据库连接池的比较和分析(从零入门)

数据库连接池(Database Connection Pool)是现代应用程序中至关重要的组件。它通过管理一组数据库连接的复用,极大地提升了应用程序的性能和效率。在没有连接池的情况下,每个数据库请求都需要打开和关闭数据库连接,这不…

Python编辑器pycharm详细安装步骤

PyCharm 的详细安装步骤 以下是在 Windows 系统上安装 PyCharm 的详细步骤: 第一步:下载安装程序 访问 PyCharm 官方网站(https://www.jetbrains.com/pycharm/),根据自己的需求选择社区版(Community&…

内容安全复习 6 - 白帽子安全漏洞挖掘披露的法律风险

文章目录 安全漏洞的法律概念界定安全漏洞特征白帽子安全漏洞挖掘面临的法律风险“白帽子”安全漏洞挖掘的风险根源“白帽子”的主体边界授权行为边界关键结论 安全漏洞的法律概念界定 可以被利用来破坏所在系统的网络或信息安全的缺陷或错误;被利用的网络缺陷、错…

车辆轨迹预测系列 (三):nuScenes数据集详细介绍-1

车辆轨迹预测系列 (三):nuScenes数据集详细介绍-1 文章目录 车辆轨迹预测系列 (三):nuScenes数据集详细介绍-1一、数据集准备1、解压2、安装nuscenes-devkit3、介绍 二、架构内容解释1、category 类别2、attribute 属性3、visibility 可见性4、instance …

通讯协议大全(UART,RS485,SPI,IIC)

参考自: 常见的通讯协议总结(USART、IIC、SPI、485、CAN)-CSDN博客 UART那么好用,为什么单片机还需要I2C和SPI?_哔哩哔哩_bilibili 5分钟看懂!串口RS232 RS485最本质的区别!_哔哩哔哩_bilibili 喜欢几位…

私域电商新纪元:消费增值模式的创新与成功实践

大家好,我是吴军,很高兴能够与您分享私域电商领域的魅力与机遇。今天,我将为大家呈现一个令人瞩目的成功案例,这个案例充分展现了私域电商的巨大潜力和无限可能。 在短短一个月的时间里,我们的客户成功实现了业绩的飞跃…

php,python aes加密反解

1. python版本 import base64 from Crypto.Cipher import AES from Crypto.Util.Padding import pad, unpadclass AESUtilCBC:def __init__(self, key, iv):self.key key.encode(utf-8)self.iv iv.encode(utf-8)self.pad_length AES.block_sizedef encrypt(self, data):try…

NTFS和exFAT哪个性能好 U盘格式化NTFS好还是exFAT好 mac不能读取移动硬盘怎么解决

文件系统的选择对存储设备的性能和兼容性有着重要影响。而NTFS和EXFAT作为两种常见的文件系统,它们各有特点,适用于不同的使用场景。我们将深入探讨NTFS和EXFAT的区别,帮助大家选择最适合自己需求的文件系统。 NTFS:稳定与性能的平…

jrebel安装使用教程(2022.4.1版本)

本方法适用于jrebel2022.4.1版本,之后的版本不再适用。 1.下载插件 下载地址 2.安装插件 可以通过idea内部安装 也可以将插件解压进idea的安装目录下的plugins。 3.激活 Team URL中填入 https://jrebel.qekang.com/{guid}这里提供两个guid生成地址&#xf…

【系统架构设计师】二、操作系统知识(操作系统概述|进程管理)

目录 一、操作系统概述 1.1 操作系统定义 1.2 操作系统的功能 1.3 操作系统的分类 1.4 嵌入式操作系统主要特点 二、进程管理 2.1 进程的组成与状态 2.2 前趋图 2.3 进程资源图 2.4 进程调度 2.5进程调度算法 2.6 死锁 2.7 进程与线程 2.7.1 进程 2.7.2 线程 2…

2022年大作业参考报告-使用C++语言开发小学生成绩管理系统、中学生成绩管理系统、大学生成绩管理系统【240621更新】

背景: 目录 第一章 需求分析 2 1.1 问题描述 2 6.1 功能需求 2 6.2 开发环境 2 6.3 开发过程 2 第二章 概要设计 3 2.1 总体设计 3 2.2 类的定义 3 2.3 接口设计 5 2.4 运行界面设计 6 第三章 详细设计 …

MySQL操作数据库语句

mysql关键字不区分大小写 1. 创建数据库 CREATE DATABASE [IF NOT EXISTS] westos (带[ ]表示该语句可有可无) 2. 删除数据库 DROP DATABASE [IF EXISTS] westos 3.使用数据库 -- tab键的上面,如果你的表名或者字段名是一个特殊的字符,就需要带 …

超级干货 !数据平滑9大妙招(python版)_python指数平滑预测案例

大家好,对数据进行平滑处理的方法有很多种,具体的选择取决于数据的性质和处理的目的。如果你对Python感兴趣,想要学习pyhton,这里给大家分享一份**Python全套学习资料**,都是我自己学习时整理的,希望可以帮…

Linux驱动开发笔记(十一)tty子系统及其驱动

文章目录 前言一、串口驱动框架1.1 核心数据结构1.2 数据处理流程 二、驱动编写1. 设备树的修改2. 相关API函数3. 驱动框架4. 具体功能的实现4.1 出入口函数的编写4.2 读写函数 前言 之前已经讲过应用层的应用,接下来我们继续进行驱动的学习。其实实际上我们很少主动…

Android记录22-关于开发中账号绑定的逻辑处理

有绑定的状态,自然也有取消绑定的状态: 这里的取消绑定只是简单改变应用内的一个状态罢了,并不会跟我们的服务端交互,也不会影响我们的账号登录的状态。 说了这么多,也没看见代码,你们会不会打我&#xff…