whylogs

记录数据日志,实时监控模型质量与漂移

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 基础设施 🍴 复刻 144 🐛 待处理 4 👀 关注 32
GitHub ↗
GitHub 星标 ★ 2838
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源库,Apache-2.0 许可证,完全免费,无付费版本。

项目预览

whylogs 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类基础设施
开发团队whylabs
定价模式🏷️完全免费
价格说明开源库,Apache-2.0 许可证,完全免费,无付费版本。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言Jupyter Notebook
技术栈/模型ai-pipelines,analytics,approximate-statistics,calculate-statistics,constraints,data-constraints,data-pipeline,data-quality,data-science,dataops,dataset,logging,machine-learning,ml-pipelines,mlops,model-performance,python,statistical-properties
GitHub 星标★ 2838
上线时间2020-08-14 00:00:00
代码更新2025-01-10
仓库体积185.3 MB
本站数据更新2026-11-10
维护状态低维护
收录时间2026-08-09
浏览次数6

项目介绍

whylogs 是一个开源的数据日志库,专为机器学习模型和数据管道设计。它通过轻量级的日志记录,持续收集数据分布、统计特征和模型性能指标,帮助团队实时监控数据质量与模型表现随时间的变化。核心能力包括:支持隐私保护的数据采集(如差分隐私),在不暴露原始数据的前提下生成数据画像;提供丰富的统计摘要(如均值、分位数、缺失值比例等);可与现有数据管道无缝集成,并支持多种输出格式(如JSON、Parquet)。whylogs 解决了ML生产中数据漂移、模型退化难以察觉的问题,让数据科学家和工程师能快速定位异常,确保模型在真实环境中的稳健性。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 2838

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 5 步

环境要求

  • Python 环境,可用 pip 安装包(README 使用 pip 安装)
  • pandas(README 快速上手示例中用 pandas 读取 CSV)
  • 一份可用 pandas 读入的数据集(示例为 CSV 文件)

安装与启动步骤

  1. 1安装 whylogs

    README 明确指出用 pip 包管理器安装 whylogs,只需在终端执行一条命令即可完成。

    pip install whylogs
  2. 2安装 pandas

    README 的快速上手示例依赖 pandas 读取数据集,若尚未安装需一并安装。

    pip install pandas
  3. 3读取数据集

    用 pandas 读取本地 CSV,路径需替换成你自己的真实文件路径。

    import pandas as pd
    
    df = pd.read_csv("path/to/file.csv")
  4. 4生成数据画像

    调用 why.log 对 DataFrame 做日志记录,返回结果即为 whylogs profile(数据画像)。

    import whylogs as why
    
    results = why.log(df)
  5. 5关闭使用统计

    v1.0.0 起默认收集匿名环境信息,设置环境变量即可关闭,注意要在导入使用前设置。

    import os
    os.environ['WHYLOGS_NO_ANALYTICS']='True'

关键配置

配置项必填说明示例
WHYLOGS_NO_ANALYTICS否设为 True 可关闭匿名环境使用统计收集True

如何确认成功

执行 why.log(df) 不报错并返回 results 对象,即表示已成功生成 whylogs profile。

常见问题

Q:whylogs 会收集我的数据吗?

A:不会。README 说明自 v1.0.0 起默认只收集运行环境的匿名信息,不包含用户信息,也不包含被画像的数据本身。

Q:如何关闭匿名使用统计?

A:设置环境变量 WHYLOGS_NO_ANALYTICS 为 True,例如在代码中 import os 后执行 os.environ['WHYLOGS_NO_ANALYTICS']='True'。

Q:whylogs profile 有什么用?

A:README 指出 profile 可用来跟踪数据集变化、创建数据约束判断数据是否符合预期,以及快速可视化关键统计摘要。

Q:支持哪些类型的数据输入?

A:README 定位为可对任意类型数据做日志记录的库,快速上手示例以 pandas DataFrame(从 CSV 读入)为例。

注意事项

  • README 只给出 pip 安装方式,未提供 Docker、源码编译等其它安装说明。
  • 示例中的 path/to/file.csv 是占位路径,需替换为你自己的文件真实路径。
  • 开启使用统计时收集的仅是运行环境信息,如需完全关闭请设置 WHYLOGS_NO_ANALYTICS=True。

核心亮点

  • 轻量级设计,对数据管道性能影响小
  • 内置隐私保护机制,支持差分隐私数据采集
  • 提供丰富的统计摘要和可视化支持,便于快速洞察数据分布变化

不足之处

  • 文档和社区生态相对较小,示例和教程有限
  • 高级功能(如自定义指标)需要一定学习成本

适用场景

  • 监控生产环境中的机器学习模型性能退化
  • 检测数据漂移和训练-服务偏差
  • 满足隐私合规要求的数据质量审计

替代项目

Evidently、Great Expectations、Alibi Detect

上一篇:Python-MLOps-Cookbook

下一篇:lantern

同类项目推荐

EverOS 开源

给每个 AI 代理装一个随身记忆库,跨应用不忘事

One portable memory layer for every AI agent: local-first, Markdown-native, user-own···

★ 13867 2026-08-09
ClawManager 开源

在 K8s 上统一管好 AI Agent 实例和访问权限

A Kubernetes-native control plane for AI agent instance management, with governed AI···

★ 1888 2026-09-16
VibeGuard 开源

用1%内存开销,在AI对话前自动脱敏,守住隐私底线

Uses just 1% memory while protecting 99% of your personal privacy.

★ 234 2026-08-09
ollama-intel-arc 开源

让 Intel Arc 显卡跑起 Ollama 和 Stable Diffusion,一键部署 AI 全栈。

Make use of Intel Arc Series GPU to Run Ollama, StableDiffusion, Whisper and Open We···

★ 431 2026-08-09
kronk 开源

Go 项目一键接入本地大模型、语音和图像生成

Go With Your Own Intelligence! Use Go for hardware accelerated local inference with ···

★ 867 2026-09-23
semantica 开源

知识串成图谱,AI 回答有据可查能追责

Graph-Native Infrastructure for Context and Accountable AI Systems

★ 14517 2026-08-09
mlops-template 开源

一键生成标准 MLOps 项目骨架,快速落地工程化实践

mlops template

★ 359 2026-08-09
vllm.cpp 开源

C++ 重写 vLLM,连续批处理加前缀缓存,推理吞吐更高

a community oriented 1:1, vLLM-alike (Continuous batching, paged KV) engine in C++ w···

★ 482 2026-10-14