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

2024-06-10 03:36

本文主要是介绍本地部署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文档中文翻译的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1047104

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

C#实现一键批量合并PDF文档

《C#实现一键批量合并PDF文档》这篇文章主要为大家详细介绍了如何使用C#实现一键批量合并PDF文档功能,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言效果展示功能实现1、添加文件2、文件分组(书签)3、定义页码范围4、自定义显示5、定义页面尺寸6、PDF批量合并7、其他方法

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

Python自动化处理PDF文档的操作完整指南

《Python自动化处理PDF文档的操作完整指南》在办公自动化中,PDF文档处理是一项常见需求,本文将介绍如何使用Python实现PDF文档的自动化处理,感兴趣的小伙伴可以跟随小编一起学习一下... 目录使用pymupdf读写PDF文件基本概念安装pymupdf提取文本内容提取图像添加水印使用pdfplum

Python从Word文档中提取图片并生成PPT的操作代码

《Python从Word文档中提取图片并生成PPT的操作代码》在日常办公场景中,我们经常需要从Word文档中提取图片,并将这些图片整理到PowerPoint幻灯片中,手动完成这一任务既耗时又容易出错,... 目录引言背景与需求解决方案概述代码解析代码核心逻辑说明总结引言在日常办公场景中,我们经常需要从 W

Java+AI驱动实现PDF文件数据提取与解析

《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

使用Spring Cache本地缓存示例代码

《使用SpringCache本地缓存示例代码》缓存是提高应用程序性能的重要手段,通过将频繁访问的数据存储在内存中,可以减少数据库访问次数,从而加速数据读取,:本文主要介绍使用SpringCac... 目录一、Spring Cache简介核心特点:二、基础配置1. 添加依赖2. 启用缓存3. 缓存配置方案方案