面包屑图标 当前位置: 首页
AI资讯
热点详情

Ollama服务监测程序安装配置与使用详解

AI热点日报
AI热点日报时间:2026-07-03
热点解读

高效监控本地DeepSeek-R1服务,确保业务系统持续稳定运行,实现自动化故障恢复。 核心要点: 1 客户私有化部署DeepSeek-R1模型的真实业务需求 2 Ollama服务监测程序的设计原理与实现流程 3 Python代码实现细节及日志配置方案 Ollama服务监测程序——保障Deep

高效监控本地DeepSeek-R1服务,确保业务系统持续稳定运行,实现自动化故障恢复。 核心要点: 1. 客户私有化部署DeepSeek-R1模型的真实业务需求 2. Ollama服务监测程序的设计原理与实现流程 3. Python代码实现细节及日志配置方案

Ollama之服务监测程序

Ollama服务监测程序——保障DeepSeek-R1稳定运行

业务背景

近期DeepSeek-R1模型热度极高,某业务系统需要在本地接入该模型,客户明确要求私有化部署。恰好手中闲置了一张RTX 3090显卡,于是通过Ollama拉取deepseek-r1:32b模型。起初运行流畅,但服务运行一段时间后却出现无响应卡死现象。尝试多种排查手段仍未定位确切原因,最终决定编写一个监测程序进行兜底防护。思路非常直接:定时调用Ollama的API接口,若请求超时则自动执行服务重启操作,确保AI推理服务的高可用性。

代码实现详解

采用Python语言实现,在项目目录中创建ollama_monitor.py文件,核心逻辑如下:

import requests
import time
import subprocess
import psutil
import logging
import os
from datetime import datetime

OLLAMA_HOST = os.environ.get("OLLAMA_HOST", "localhost:11434")
try:
    port = OLLAMA_HOST.split(":")[1]  # 提取端口号
    OLLAMA_API_URL = f"http://localhost:{port}/api/tags"
except IndexError:
    logging.error("OLLAMA_HOST 环境变量格式错误,应为 '主机:端口'")
    port = "11434"  # 默认端口
    OLLAMA_API_URL = f"http://localhost:{port}/api/tags"

TIMEOUT_SECONDS = 10
RESTART_COMMAND = "ollama ps"

def setup_logging():
    """配置日志记录器,同时输出到文件和控制台。"""
    log_dir = "logs"
    if not os.path.exists(log_dir):
        os.makedirs(log_dir)

    current_time = datetime.now().strftime("%Y-%m-%d_%H-%M-%S")
    log_file_path = os.path.join(log_dir, f"ollama_monitor_{current_time}.log")

    # 创建文件处理器
    file_handler = logging.FileHandler(log_file_path)
    file_handler.setLevel(logging.INFO)
    file_formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
    file_handler.setFormatter(file_formatter)

    # 创建控制台处理器
    console_handler = logging.StreamHandler()
    console_handler.setLevel(logging.INFO)
    console_formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
    console_handler.setFormatter(console_formatter)

    # 获取根日志记录器并添加处理器
    logging.basicConfig(level=logging.INFO, handlers=[file_handler, console_handler])

def check_ollama_status():
    """检查 Ollama 状态,如果卡住则返回 True,否则返回 False。"""
    try:
        response = requests.get(OLLAMA_API_URL, timeout=TIMEOUT_SECONDS)
        response.raise_for_status()
        return False
    except requests.exceptions.RequestException as e:
        logging.error(f"Ollama 可能卡住:{e}")
        return True

def restart_ollama():
    """重启 Ollama 服务。"""
    logging.info("重启 Ollama 服务...")
    try:
        for proc in psutil.process_iter(['pid', 'name']):
            if proc.info['name'] == 'ollama.exe':
                p = psutil.Process(proc.info['pid'])
                p.terminate()

        subprocess.Popen(RESTART_COMMAND, shell=True)
        logging.info("Ollama 服务已重启。")
    except Exception as e:
        logging.error(f"重启 Ollama 服务失败:{e}")

if __name__ == "__main__":
    setup_logging()
    while True:
        if check_ollama_status():
            restart_ollama()
        sleep_time = int(os.environ.get("OLLAMA_MONITOR_INTERVAL", 60))
        time.sleep(sleep_time)

此监测程序检测的是http://localhost:{port}/api/tags接口(用于获取模型列表),利用psutil库查找进程,并未直接使用系统级ps命令(经测试效果不佳)。监控间隔可通过环境变量OLLAMA_MONITOR_INTERVAL自定义,默认每60秒执行一次健康检查。

依赖包安装

编写requirements.txt文件,内容如下:

requests
psutil
pyinstaller

执行命令 pip install -r requirements.txt 即可完成依赖安装。

程序打包与部署

在程序所在目录中运行命令:pyinstaller --onefile ollama_monitor.py,生成的独立可执行文件位于根目录的dist/ollama_monitor.exe。将该exe文件复制到目标服务器上,直接运行即可实现对Ollama服务的全天候监控与自动恢复。

热点追踪提示词
你是一名 AI 行业编辑,请围绕下面这条热点输出一份资讯解读:
热点:Ollama服务监测程序安装配置与使用详解要求:
1. 先用一句话解释这条热点在讲什么
2. 再总结它为什么重要
3. 说明会影响哪些 AI 产品或内容方向
4. 最后给出 3 个适合资讯站使用的标题
来源:https://www.53ai.com/news/finetuning/2025031112746.html
ai 人工智能

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关热点
AI热点2026-07-04 09:10
小米MiMo-V2系列模型2026年6月30日下线,Pro版已自动切换至V2.5

小米MiMo开放平台宣布,MiMo-V2系列的四款模型将于2026年6月30日正式下线,平台已推动开发者向V2 5系列迁移。具体涉及mimo-v2-pro、mimo-v2-omni、mimo-v2-flash和mimo-v2-tts模型。平台设置了系统替换时间作为缓冲:pro和omni模型于2026

AI热点2026-07-04 09:10
款长安猎手K50重庆车展上市14.19万起

2026重庆车展上,2026款长安猎手K50正式上市,共推出10款车型,售价14 19万至17 89万元。新车主要针对续航、电池和动力进行升级,搭载2 0T增程系统与双电机,纯电续航超180公里,快充仅需16分钟。全系标配30kW外放电功能,储备电量达239kWh,并新增山地与涉水模式,提升通过性。

AI热点2026-07-04 09:10
上期所与普陀区签战略协议深化金融区域联动

上海期货交易所与上海市普陀区人民政府于6月12日签署战略合作协议,旨在建立长期共赢的合作机制,共同服务上海国际金融中心与国际贸易中心的联动发展。双方高层领导均出席签约仪式,彰显了对此次合作的高度重视。协议聚焦于发挥期货市场专业资源与区域发展综合优势,深化务实合作,探索金融创新与实体经济深度融合,以期

AI热点2026-07-04 09:09
世纪华通平价大宗交易成交757万股 金额1.09亿元

6月12日,世纪华通发生一笔大宗交易,以每股14 37元的价格成交757 24万股,成交总额为1 09亿元。值得注意的是,该成交价与当日市场收盘价持平,属于平价交易。此次交易额占该股当日总成交额的1 51%。市场分析认为,平价成交反映了买卖双方对当前股价水平的共识,交易行为相对平稳,未对市场预期造成

延伸阅读