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

本地部署AI大模型 —— Ollama文档中文翻译

写在前面

来自Ollama GitHub项目的README.md 文档。文档中涉及的其它文档未翻译,但是对于本地部署大模型而言足够了。


Ollama

开始使用大模型。

macOS

Download

Windows 预览版

Download

Linux

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

手动安装说明

Docker

官方 Ollama Docker 镜像 ollama/ollama 已在 Docker Hub 上可用.

库资源

  • ollama-python
  • ollama-js

快速启动

使用 Llama 3 本地大模型:

ollama run llama3

模型库

查询 Ollama 支持的可用大模型列表 ollama.com/library

这里是一些可以下载的大模型的例子:

模型参数大小下载
Llama 38B4.7GBollama run llama3
Llama 370B40GBollama run llama3:70b
Phi 3 Mini3.8B2.3GBollama run phi3
Phi 3 Medium14B7.9GBollama run phi3:medium
Gemma2B1.4GBollama run gemma:2b
Gemma7B4.8GBollama run gemma:7b
Mistral7B4.1GBollama run mistral
Moondream 21.4B829MBollama run moondream
Neural Chat7B4.1GBollama run neural-chat
Starling7B4.1GBollama run starling-lm
Code Llama7B3.8GBollama run codellama
Llama 2 Uncensored7B3.8GBollama run llama2-uncensored
LLaVA7B4.5GBollama run llava
Solar10.7B6.1GBollama run solar

Note: 你需要至少8GB RAM 来运行7B 参数的模型, 16GB 来运行 13B 大模型, 32GB 来运行33B.

自定义模型

从 GGUF 引入

Ollama支持在Modelfile中导入GGUF模型:

  1. 创建一个名为 Modelfile 的文件, 使用带有要导入的模型的本地文件路径的“FROM”指令。

    FROM ./vicuna-33b.Q4_0.gguf
    
  2. 在 Ollama 里创建模型

    ollama create example -f Modelfile
    
  3. 运行模型

    ollama run example
    

从 PyTorch 或 Safetensors 引入

检查 引导 来获得关于引入模型的更多信息. (中文版不可用)

自定义 prompt

从Ollama 库下载的大模型可以用prompt 自定义. 例如, 要自定义 llama3 模型:

ollama pull llama3

创建 Modelfile:

FROM llama3# 将参数设置为1[越高越有创意,越低越连贯]
PARAMETER temperature 1# 设置系统信息
SYSTEM """
You are Mario from Super Mario Bros. Answer as Mario, the assistant, only.
"""

下一步, 创建并运行模型:

ollama create mario -f ./Modelfile
ollama run mario
>>> hi
Hello! It's your friend Mario.

有关更多示例,请参阅examples目录。有关使用模型文件的更多信息,请参阅Modelfile文档。(中文版未翻译)

命令参考

创建模型

ollama create 用于通过Modelfile 来创建模型.

ollama create mymodel -f ./Modelfile

下载一个模型

ollama pull llama3

这个命令也可以用来更新本地模型。只有不同的部分会被下载。

删除模型

ollama rm llama3

复制模型

ollama cp llama3 my-model

多行输入

要实现多行输入, 你可以用 """ 包围它们:

>>> """Hello,
... world!
... """
I'm a basic program that prints the famous "Hello, world!" message to the console.

多模式模型

>>> What's in this image? /Users/jmorgan/Desktop/smile.png
The image features a yellow smiley face, which is likely the central focus of the picture.

将Prompt 作为参数传递

$ ollama run llama3 "Summarize this file: $(cat README.md)"Ollama is a lightweight, extensible framework for building and running language models on the local machine. It provides a simple API for creating, running, and managing models, as well as a library of pre-built models that can be easily used in a variety of applications.

列出你电脑上的模型

ollama list

启动Ollama

ollama serve 用于在不运行桌面应用程序的情况下启动ollama.

构建

检查 开发者引导

运行本地构建

随后,启动服务:

./ollama serve

最后,在一个单独的shell中,运行一个模型:

./ollama run llama3

REST API

Ollama有一个用于运行和管理模型的REST API.

生成回应

curl http://localhost:11434/api/generate -d '{"model": "llama3","prompt":"Why is the sky blue?"
}'

和模型对话

curl http://localhost:11434/api/chat -d '{"model": "llama3","messages": [{ "role": "user", "content": "why is the sky blue?" }]
}'

检查 API documentation 得到所有终端.

社区整合

Web & Desktop

  • Open WebUI
  • Enchanted (macOS native)
  • Hollama
  • Lollms-Webui
  • LibreChat
  • Bionic GPT
  • HTML UI
  • Saddle
  • Chatbot UI
  • Chatbot UI v2
  • Typescript UI
  • Minimalistic React UI for Ollama Models
  • Ollamac
  • big-AGI
  • Cheshire Cat assistant framework
  • Amica
  • chatd
  • Ollama-SwiftUI
  • Dify.AI
  • MindMac
  • NextJS Web Interface for Ollama
  • Msty
  • Chatbox
  • WinForm Ollama Copilot
  • NextChat with Get Started Doc
  • Alpaca WebUI
  • OllamaGUI
  • OpenAOE
  • Odin Runes
  • LLM-X (Progressive Web App)
  • AnythingLLM (Docker + MacOs/Windows/Linux native app)
  • Ollama Basic Chat: Uses HyperDiv Reactive UI
  • Ollama-chats RPG
  • QA-Pilot (Chat with Code Repository)
  • ChatOllama (Open Source Chatbot based on Ollama with Knowledge Bases)
  • CRAG Ollama Chat (Simple Web Search with Corrective RAG)
  • RAGFlow (Open-source Retrieval-Augmented Generation engine based on deep document understanding)
  • StreamDeploy (LLM Application Scaffold)
  • chat (chat web app for teams)
  • Lobe Chat with Integrating Doc
  • Ollama RAG Chatbot (Local Chat with multiple PDFs using Ollama and RAG)
  • BrainSoup (Flexible native client with RAG & multi-agent automation)
  • macai (macOS client for Ollama, ChatGPT, and other compatible API back-ends)
  • Olpaka (User-friendly Flutter Web App for Ollama)
  • OllamaSpring (Ollama Client for macOS)
  • LLocal.in (Easy to use Electron Desktop Client for Ollama)

Terminal

  • oterm
  • Ellama Emacs client
  • Emacs client
  • gen.nvim
  • ollama.nvim
  • ollero.nvim
  • ollama-chat.nvim
  • ogpt.nvim
  • gptel Emacs client
  • Oatmeal
  • cmdh
  • ooo
  • shell-pilot
  • tenere
  • llm-ollama for Datasette’s LLM CLI.
  • typechat-cli
  • ShellOracle
  • tlm
  • podman-ollama
  • gollama

Database

  • MindsDB (Connects Ollama models with nearly 200 data platforms and apps)
  • chromem-go with example

Package managers

  • Pacman
  • Helm Chart
  • Guix channel

Libraries

  • LangChain and LangChain.js with example
  • LangChainGo with example
  • LangChain4j with example
  • LangChainRust with example
  • LlamaIndex
  • LiteLLM
  • OllamaSharp for .NET
  • Ollama for Ruby
  • Ollama-rs for Rust
  • Ollama4j for Java
  • ModelFusion Typescript Library
  • OllamaKit for Swift
  • Ollama for Dart
  • Ollama for Laravel
  • LangChainDart
  • Semantic Kernel - Python
  • Haystack
  • Elixir LangChain
  • Ollama for R - rollama
  • Ollama for R - ollama-r
  • Ollama-ex for Elixir
  • Ollama Connector for SAP ABAP
  • Testcontainers
  • Portkey
  • PromptingTools.jl with an example
  • LlamaScript

Mobile

  • Enchanted
  • Maid

Extensions & Plugins

  • Raycast extension
  • Discollama (Discord bot inside the Ollama discord channel)
  • Continue
  • Obsidian Ollama plugin
  • Logseq Ollama plugin
  • NotesOllama (Apple Notes Ollama plugin)
  • Dagger Chatbot
  • Discord AI Bot
  • Ollama Telegram Bot
  • Hass Ollama Conversation
  • Rivet plugin
  • Obsidian BMO Chatbot plugin
  • Cliobot (Telegram bot with Ollama support)
  • Copilot for Obsidian plugin
  • Obsidian Local GPT plugin
  • Open Interpreter
  • Llama Coder (Copilot alternative using Ollama)
  • Ollama Copilot (Proxy that allows you to use ollama as a copilot like Github copilot)
  • twinny (Copilot and Copilot chat alternative using Ollama)
  • Wingman-AI (Copilot code and chat alternative using Ollama and HuggingFace)
  • Page Assist (Chrome Extension)
  • AI Telegram Bot (Telegram bot using Ollama in backend)
  • AI ST Completion (Sublime Text 4 AI assistant plugin with Ollama support)
  • Discord-Ollama Chat Bot (Generalized TypeScript Discord Bot w/ Tuning Documentation)
  • Discord AI chat/moderation bot Chat/moderation bot written in python. Uses Ollama to create personalities.
  • Headless Ollama (Scripts to automatically install ollama client & models on any OS for apps that depends on ollama server)

Supported backends

  • llama.cpp project founded by Georgi Gerganov.

相关文章:

本地部署AI大模型 —— Ollama文档中文翻译

写在前面 来自Ollama GitHub项目的README.md 文档。文档中涉及的其它文档未翻译,但是对于本地部署大模型而言足够了。 Ollama 开始使用大模型。 macOS Download Windows 预览版 Download Linux curl -fsSL https://ollama.com/install.sh | sh手动安装说明 …...

【前端技术】 ES6 介绍及常用语法说明

😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~ 🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Mi…...

程序员具备的职业素养(个人见解)

程序员应该有什么职业素养? 1. 技术能力 毫无疑问,优秀的技术是程序员的必备。 -扎实的编程基础:熟练掌握至少一门编程语言,并理解基本的数据结构和算法,要做到精通!。 - 广泛的技术知识:了…...

Springboot 开发-- 集成 Activiti 7 流程引擎

引言 Activiti 7是一款遵循BPMN 2.0标准的开源工作流引擎,旨在为企业提供灵活、可扩展的流程管理功能。它支持图形化的流程设计、丰富的API接口、强大的执行引擎和完善的监控报表,帮助企业实现业务流程的自动化、规范化和智能化。本文将为您详细介绍 Ac…...

一些常用的frida脚本

这里整理一些常用的frida脚本,和ghidra 一起食用风味更佳~ Trace RegisterNatives 注意到从java到c的绑定中,可能会在JNI_OnLoad动态的执行RegisterNatives方法来绑定java层的函数到c行数,可以通过这个方法,来吧运行…...

计算机二级Access操作题总结——简单应用

查询设计 创建一个查询,能够在客人每次结账时根据客人的姓名提示统计这个客人已住天数和应交金额,并显示“姓名”、“房间号”、“已住天数”和“应交金额”,所建查询命名为“qT2”。 注:输入姓名时应提示“请输入姓名”。已住天…...

C#操作MySQL从入门到精通(21)——删除数据

前言: 谈到数据库,大家最容易脱口而出的就是增删改查,本文就是来详细介绍如何删除数据。 本文测试使用的数据库如下: 1、删除部分数据 使用delete 关键字,并且搭配where条件使用,否则会导致表中数据全部被删除 string sql = string.Empty;if (radioButton_DeletePart…...

【iOS】JSONModel源码阅读笔记

文章目录 前言一、JSONModel使用二、JSONModel其他方法转换属性名称 三、源码分析- (instancetype)initWithDictionary:(NSDictionary*)dict error:(NSError **)err[self init]__setup____inspectProperties - (BOOL)__doesDictionary:(NSDictionary*)dict matchModelWithKeyMa…...

如何离线下载 Microsoft Corporation II Windows Subsystem for Android

在本文中,我们将指导您通过一个便捷的步骤来离线下载 Microsoft Corporation II Windows Subsystem for Android。这个过程将利用第三方工具来生成直接下载链接,从而让您能够获取该应用程序的安装包,即使在没有访问Microsoft Store的情况下也…...

使用 flask + qwen 实现 txt2sql 流式输出

前言 一般的大模型提供的 api 都是在提问之后过很久才会返回对话内容,可能要耗时在 3 秒以上了,如果是复杂的问题,大模型在理解和推理的耗时会更长,这种展示结果的方式对于用户体验是很差的。 其实大模型也是可以进行流式输出&a…...

植物大战僵尸杂交版最新2.0.88手机+电脑+苹果+修改器

在这个充满奇妙的平行宇宙中,植物和僵尸竟然能够和谐共存!是的,你没听错!一次意外的实验,让这两个看似对立的生物种类发生了基因杂交,创造出了全新的生物种类——它们既能够进行光合作用,也具备…...

Vite - 开发初体验,以及按需导入配置

目录 开始 创建一个 Vite 项目 项目结构 /src/main.js index.html package.json vite.config.js Vite 项目中使用 vue-router Vite 组件的“按需引入” 传统的方式引入一个组件 传统方式引入带来的问题 解决办法(配置 按需引入 插件) 示例&…...

推荐云盘哪个好,各有各的优势

选择合适的云盘服务是确保数据安全、便捷分享和高效协作的关键。下面将从多个维度对目前主流的云盘服务进行详细的对比和分析: 速度性能 百度网盘青春版:根据测试,其上传和下载确实不限速,但主要定位是办公人群,适用于…...

面试题之webpack与vite系列

今天继续来分享面试题,今天要分享的技术是webpack和vite的一些区别,下面我列举了最常见的关于webpack和vite的面试题,主要有以下几个: 1.说说你对webpack的理解?plugin和loader有什么区别? Webpack是一个…...

单调队列 加 二分

雾粉与最小值(简单版) 链接: 牛客 思路 题意是 给定我们数组a让我们完成{x,l,r}询问,判断是否在a中存在子数组满足长度在l,r之间且子数组最小值大于等于x,输出yes 或者 on 一个数组,长度越长,其最小值越小&#xff…...

Node.js 和 Vue 的区别的基本知识科普

Node.js和Vue.js在多个方面存在显著的区别。以下是这两者的主要区别,按照清晰的分点表示和归纳: Node.js 服务器端环境: Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它使JavaScript能够在服务器端运行。为JavaScript提供服务器端的环境服务,方便地搭建响应速度…...

统计信号处理基础 习题解答10-10

题目 在本题中,我们讨论再生PDF。回顾前面 其中分母与无关。如果选择一个,使得它与相乘时,我们得到与相同形式的PDF,那么后验PDF 将有和相同的形式。例10.1的高斯PDF正是这样的一种情况。现在假设在条件下的的PDF是指数形式&…...

【蓝桥杯】C语言常见高级算法

🌸个人主页:Yang-ai-cao 📕系列专栏:蓝桥杯 C语言 🍍博学而日参省乎己,知明而行无过矣 目录 🌸个人主页:Yang-ai-cao 📕系列专栏:蓝桥杯 C语言 &a…...

FastJson

目录 FastJson 新建一个SpringBoot项目 pom.xml 一、JavaBean与JSON数据相互转换 LoginController FastJsonApplication启动类 ​编辑二、FastJson的JSONField注解 Log实体类 TestLog测试类 三、FastJson对JSON数据的增、删、改、查 TestCrud FastJson 1、JSON使用手册…...

Web3设计风格和APP设计风格

Web3设计风格和传统APP设计风格在视觉和交互设计上有一些显著的区别。这些差异主要源于Web3技术和理念的独特性,以及它们在用户体验和界面设计中的具体应用。以下是Web3设计风格与传统APP设计风格的主要区别。北京木奇移动技术有限公司,专业的软件外包开…...

springboot 百货中心供应链管理系统小程序

一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)

CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

页面渲染流程与性能优化

页面渲染流程与性能优化详解&#xff08;完整版&#xff09; 一、现代浏览器渲染流程&#xff08;详细说明&#xff09; 1. 构建DOM树 浏览器接收到HTML文档后&#xff0c;会逐步解析并构建DOM&#xff08;Document Object Model&#xff09;树。具体过程如下&#xff1a; (…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置&#xff0c;使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud&#xff0c;主要用于支持数据的抽取&#xff08;Extract&#xff09;、转换&#xff08;Transform&#xff09;和加载&#xff08;Load&#xff09;过程。提供了一个简洁直观的界面&#xff0c;以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

大数据学习(132)-HIve数据分析

​​​​&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)

漏洞概览 漏洞名称&#xff1a;Apache Flink REST API 任意文件读取漏洞CVE编号&#xff1a;CVE-2020-17519CVSS评分&#xff1a;7.5影响版本&#xff1a;Apache Flink 1.11.0、1.11.1、1.11.2修复版本&#xff1a;≥ 1.11.3 或 ≥ 1.12.0漏洞类型&#xff1a;路径遍历&#x…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向&#xff0c;可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...

站群服务器的应用场景都有哪些?

站群服务器主要是为了多个网站的托管和管理所设计的&#xff0c;可以通过集中管理和高效资源的分配&#xff0c;来支持多个独立的网站同时运行&#xff0c;让每一个网站都可以分配到独立的IP地址&#xff0c;避免出现IP关联的风险&#xff0c;用户还可以通过控制面板进行管理功…...