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

基于 ollama 在linux 私有化部署DeepSeek-R1以及使用RESTful API的方式使用模型

由于业务需求部署的配置  deepseek:32b,linux配置GPU L20 4卡 ,SSD 200g,暂未发现有什么问题,持续观察中
##通用写法,忽略就行,与deepseek无关
import pandas as pd
from openai.embeddings_utils import get_embedding, cosine_similarity
import openai
import os
import logging as logger
from flask_cors import CORS
import os
openai.api_key = os.getenv('OPENAI_API_KEY')
 
class Chatbot():
 
    def parse_paper(self, pdf):
        logger.info("Parsing paper")
        number_of_pages = len(pdf.pages)
        logger.info(f"Total number of pages: {number_of_pages}")
        paper_text = []
        for i in range(number_of_pages):
            page = pdf.pages[i]
            page_text = []
 
            def visitor_body(text, cm, tm, fontDict, fontSize):
                x = tm[4]
                y = tm[5]
                # ignore header/footer
                if (y > 50 and y < 720) and (len(text.strip()) > 1):
                    page_text.append({
                        'fontsize': fontSize,
                        'text': text.strip().replace('\x03', ''),
                        'x': x,
                        'y': y
                    })
 
            _ = page.extract_text(visitor_text=visitor_body)
 
            blob_font_size = None
            blob_text = ''
            processed_text = []
 
            for t in page_text:
                if t['fontsize'] == blob_font_size:
                    blob_text += f" {t['text']}"
                    if len(blob_text) >= 2000:
                        processed_text.append({
                            'fontsize': blob_font_size,
                            'text': blob_text,
                            'page': i
                        })
                        blob_font_size = None
                        blob_text = ''
                else:
                    if blob_font_size is not None and len(blob_text) >= 1:
                        processed_text.append({
                            'fontsize': blob_font_size,
                            'text': blob_text,
                            'page': i
                        })
                    blob_font_size = t['fontsize']
                    blob_text = t['text']
                paper_text += processed_text
        logger.info("Done parsing paper")
        return paper_text
 
 
 
1.安装ollama模型运行框架

deepseek-r1:32b

github地址:https://github.com/ollama/ollama

Linux下执行:  curl -fsSL https://ollama.com/install.sh | sh  

2.ollama相关命令
ollama 服务相关命令
sudo systemctl stop ollama
sudo systemctl status ollama
sudo systemctl start ollama
sudo systemctl restart ollama

1.拉取模型
ollama pull xxx模型

2.运行模型
ollama run  xxx模型
退出聊天cmd  /bye

3.移除模型
ollama rm  xxx模型

4.显示模型信息
ollama show xxx模型

5.列出计算机上的模型
ollama list

6.列出当前加载的模型
ollama ps

7.停止当前正在运行的模型
ollama stop xxx模型


=====================
linux相关配置地址:https://github.com/ollama/ollama/blob/main/docs/linux.md

ollama服务默认端口 11434,修改ollama配置使其可以监听0.0.0.0和修改端口,可以外网访问
1.修改文件
vim /etc/systemd/system/ollama.service

2.增加
[Service]
Environment=“OLLAMA_HOST=0.0.0.0:xxxx”

3.重现加载
sudo systemctl daemon-reload
sudo systemctl restart ollama
sudo systemctl status ollama

4.查看日志
journalctl -u ollama.service

5.执行 ollama 命令需要带上 OLLAMA_HOST=127.0.0.1:xxxx
例如 OLLAMA_HOST=127.0.0.1:xxxx ollama ps

ollama相关模型

ModelParametersSizeDownload
DeepSeek-R17B4.7GBollama run deepseek-r1
DeepSeek-R1671B404GBollama run deepseek-r1:671b
Llama 3.370B43GBollama run llama3.3
Llama 3.23B2.0GBollama run llama3.2
Llama 3.21B1.3GBollama run llama3.2:1b
Llama 3.2 Vision11B7.9GBollama run llama3.2-vision
Llama 3.2 Vision90B55GBollama run llama3.2-vision:90b
Llama 3.18B4.7GBollama run llama3.1
Llama 3.1405B231GBollama run llama3.1:405b
Phi 414B9.1GBollama run phi4
Phi 3 Mini3.8B2.3GBollama run phi3
Gemma 22B1.6GBollama run gemma2:2b
Gemma 29B5.5GBollama run gemma2
Gemma 227B16GBollama run gemma2:27b
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
3.ollama服务提供的api
官方文档地址:https://github.com/ollama/ollama/blob/main/docs/api.md

1.与模型聊天api,默认流式,如果不要流式 配置"stream": false

curl http://localhost:11434/api/chat -d '{
  "model": "deepseek-r1:32b",
  "messages": [
    { "role": "user", "content": "为什么天空是蓝色的?" }
  ],
  "stream": false
}'

http://www.dtcms.com/a/20023.html

相关文章:

  • 机器学习:k均值
  • x-restormer——restormer+SSA
  • 【算法】【区间和】acwing算法基础 802. 区间和 【有点复杂,但思路简单】
  • 本地部署MindSearch(开源 AI 搜索引擎框架),然后上传到 hugging face的Spaces——L2G6
  • E卷-特殊的加密算法-(200分)
  • SIP中常见的服务器类型
  • vue项目 Axios创建拦截器
  • Win11 远程 连接 Ubuntu20.04(局域网)
  • lvs的DR模式
  • 易支付精美设计的支付收银台模板源码
  • typecho快速发布文章
  • Oracle序列(基础操作)
  • Spring Bean的生命周期
  • wordpress主题插件开发中高频使用的38个函数
  • 了解rtc_time64_to_tm()和rtc_tm_to_time64()
  • WEB安全--SQL注入--二次注入
  • TCP/UDP 简介,三次握手与四次挥手
  • 使用瑞芯微RK3588的NPU进行模型转换和推理
  • Python使用OpenCV图片去水印多种方案实现
  • Redis问题排查常用命令
  • C#多线程异步连接MySQL与SQLserver数据库
  • E卷-MELON的难题-(200分)
  • 功能说明并准备静态结构
  • 硕成C语言22【一些算法和数组的概念】
  • 【C++】哈希、unordered_map与unordered_set的模拟实现
  • AcWing——3624. 三值字符串
  • windows配置永久路由
  • VMware vSphere数据中心虚拟化——vCenter Server7.0安装部署
  • 【ARM】解决ArmDS Fast Models 中部分内核无法上电的问题
  • 深入理解 Qt 信号与槽机制:原理、用法与优势