AI-Ollama安装部署总结

         简介
                 官网地址
                 github地址
         博主运行环境
         windows安装
                 环境变量
                 检验安装
         chat-ollama 面板使用
                 访问
                 面板页
                 拉取模型
                 示例
         REST API 形式
         Huggingface gguf模型编译使用
                 新建文件
                 运行
         问题解决
         总结

简介

Ollama 是一个基于 Go 语言开发的可以本地运行大模型的开源框架。

官网地址

https://ollama.com/

github地址

https://github.com/ollama/ollama

博主运行环境

内存 48G 金士顿
cpu 12代I7
gpu RTX3060 laptop 12G
cuda CUDA Version: 12.1
系统 windows11
docker 4.34.0

windows安装

直接访问官网地址下载exe安装即可,默认直接装在c盘下面。

C:UsersyournameAppDataLocalProgramsOllama

环境变量

windows加入系统变量

#作用提高长文本推理速度
OLLAMA_FLASH_ATTENTION True
#作用可访问的ip以及端口 默认是11434
OLLAMA_HOST 0.0.0.0:11434
#模型存放位置
OLLAMA_MODELS E:DataOllamaCache
#设置 Ollama 服务的并行处理数量为 2,表示可以同时处理 2个请求。
OLLAMA_NUM_PARALLEL 2

如图所示

**693896b9316d4996a4f6564a7e7d33da.png

**

检验安装

#cmd 中执行
ollma

`Usage:
  ollama [flags]
  ollama [command]
Available Commands:
#可用命令
  serve       Start ollama
  create      Create a model from a Modelfile
  show        Show information for a model
  run         Run a model
  pull        Pull a model from a registry
  push        Push a model to a registry
  list        List models
  ps          List running models
  cp          Copy a model
  rm          Remove a model
  help        Help about any command`

chat-ollama 面板使用

docker-compose.yml文件内容

version: '3.1'

services:
  chromadb:
    image: chromadb/chroma:latest
    container_name: chatollama-db
    restart: always
    ports:
      - "11431:8003"
    volumes:
      - ./data:/chroma/.chroma/index

  chatollama:
    image: 0001coder/chatollama:latest
    container_name: chatollama-web
    restart: always
    pull_policy: always    
    ports:
      - "11432:3000"
    volumes:
      - ./db:/app/sqlite
    environment:
      - CHROMADB_URL=http://chromadb:8003
      - DATABASE_URL=file:/app/sqlite/chatollama.sqlite

注意:如果您是第一次启动,需要初始化 SQLite 数据库

docker-compose exec chatollama npx prisma migrate dev

访问

127.0.0.1:11432

面板页

因为是docker中面板需要填写wsl ip或者使用域名 http://host.docker.internal:11434

**d9a4787cfabe40178daae56368852d7b.png

**

拉取模型

模型建议使用8b,防止超出内存。模型列表:

https://ollama.com/library/

示例

博主测试下来当前模型中支持最好的是qwen。

dd3cac00b81046e0a37d136876e6f421.png

REST API 形式

#Generate 模式属于一次性输出
Generate a response
curl http://localhost:11434/api/generate -d '{
  "model": "llama3.1",
  "prompt":"Why is the sky blue?"
}'
#chat 模式属于聊天形式流式输出
Chat with a model 
curl http://localhost:11434/api/chat -d '{
  "model": "llama3.1",
  "messages": [
    { "role": "user", "content": "why is the sky blue?" }
  ]
}'

Huggingface gguf模型编译使用

https://hf-mirror.com/models?sort=trending&search=gguf

GGUF(Generalized Graph Universal Format)通常指的是一种用于存储和标记与大规模机器学习模型紧密相关的数据格式。这种格式特别适合转换和表示模型的权重、参数、训练状态等数据,利用图结构来描述模型的组件和其之间的关系。是一种用于表示图形和图形数据的通用格式。

新建文件

新建llama3-8b-chinese.mf 写入以下内容

FROM ./Llama3-8B-Chinese-Chat-q8_0-v2_1.gguf

其中gguf模型文件从hgface上下载

运行

ollama create llama3-8b-chinese -f ./llama3-8b-chinese.mf

执行ollama list 即可看到创建的模型。

问题解决

  1. 升级ollama后cuda 版本不对解决:从github上拉取代码到本地编译机器cuda覆盖:C:UserszssAppDataLocalProgramsOllamaollama_runners 中cuda或者cpu目录,从新启动ollama。在这里插入图片描述

总结

  1. Ollama 提供了简单的命令行界面,使得用户能够轻松地下载、运行和管理大型语言模型,无需复杂的配置和环境设置。
  2. Ollama 支持多种流行的语言模型,用户可以根据需求选择合适的模型进行使用,灵活性高。
  3. Ollama 可以与现有的应用程序和工作流无缝集成,支持多种编程语言和框架,方便开发者在不同环境中使用。
  4. 用户可以在本地环境中运行模型,增强了数据隐私和安全性,避免了将敏感数据上传到云端的风险。
  5. Ollama 提供了丰富的文档和示例,帮助用户快速上手,理解如何使用工具和模型。
  6. …..

一句话:折腾起来挺方便的。