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

GitHub功能全览:含AI代码创作、多解决方案及汽车故障诊断音频ML项目

导航菜单

切换导航
[ ](/)
[ 登录 ](/login?return_to=https%3A%2F%2Fgithub.com%2Fadam-s%2Fcar-diagnosis)
外观设置

平台

-AI 代码创作
- GitHub Copilot:借助 AI 编写更优质代码
- GitHub Copilot 应用:从问题到合并的直接代理
- MCP Registry 新功能:集成外部工具
-开发者工作流
- Actions:自动化任何工作流
- Codespaces:即时开发环境
- Issues:规划和跟踪工作
- Code Review:管理代码变更
-应用程序安全
- GitHub Advanced Security:查找并修复漏洞
- 代码安全:在构建过程中保障代码安全
- 密钥保护:防患于未然
-探索
- 为何选择 GitHub
- 文档
- 博客
- 更新日志
- 市场

查看所有功能

解决方案

-按公司规模划分
- 企业版
- 中小团队版
- 初创企业版
- 非营利组织版
-按用例划分
- 应用现代化
- DevSecOps
- DevOps
- CI/CD
- 查看所有用例
-按行业划分
- 医疗保健
- 金融服务
- 制造业
- 政府部门
- 查看所有行业

查看所有解决方案

资源

-按主题探索
- AI
- 软件开发
- DevOps
- 安全
- 查看所有主题
-按类型探索
- 客户案例
- 活动与网络研讨会
- 电子书与报告
- 商业洞察
- GitHub 技能
-支持与服务
- 文档
- 客户支持
- 社区论坛
- 信任中心
- 合作伙伴

查看所有资源

开源

-社区
- GitHub Sponsors:资助开源开发者
-项目
- 安全实验室
- 维护者社区
- 加速器
- GitHub Stars
- 存档计划
-仓库
- 主题
- 热门项目
- 集合

企业版

-企业解决方案
- 企业平台:由 AI 驱动的开发者平台
-可用附加组件
- GitHub Advanced Security:企业级安全功能
- Copilot for Business:企业级 AI 功能
- 高级支持:企业级 24/7 支持

[定价]

搜索或跳转到...

搜索代码、仓库、用户、问题、拉取请求...

搜索
清除
搜索语法提示

提供反馈

我们会阅读每一条反馈,并认真对待您的意见。
包含我的电子邮件地址,以便能与我联系
取消 提交反馈

保存的搜索

使用保存的搜索可以更快地筛选结果
名称
查询
要查看所有可用的限定符,请参阅我们的文档。
取消 创建保存的搜索
[ 登录 ](/login?return_to=https%3A%2F%2Fgithub.com%2Fadam-s%2Fcar-diagnosis)
[ 注册 ](/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E&source=header-repo&source_repo=adam-s%2Fcar-diagnosis)
外观设置
重置焦点
您在另一个标签页或窗口中登录了。[重新加载]()以刷新您的会话。
您在另一个标签页或窗口中注销了。[重新加载]()以刷新您的会话。
您在另一个标签页或窗口中切换了账户。[重新加载]()以刷新您的会话。 关闭提醒
{{ message }}
[ adam-s ](/adam-s) /[car-diagnosis](/adam-s/car-diagnosis)公开
- 通知 您必须登录才能更改通知设置
- 分叉 0
- 加星 6
- 代码
- 问题 0
- 拉取请求 0
- 操作
- 项目
- 安全与质量 0
- 洞察

其他导航选项

- 代码
- 问题
- 拉取请求
- 操作
- 项目
- 安全与质量
- 洞察

adam-s/car-diagnosis

主分支
[分支][标签]

转到文件
代码
打开更多操作菜单

文件夹和文件

| 名称 | 名称 | 最后提交消息 | 最后提交日期 |
| --- | --- | --- | --- |

最新提交

历史记录

[71 次提交]
71 次提交
[.agent]
|
[.agent]
|
|
[.github/workflows]
|
[.github/workflows]
|
|
[docs]
|
[docs]
|
|
[models]
|
[models]
|
|
[scripts]
|
[scripts]
|
|
[src/cardiag]
|
[src/cardiag]
|
|
[tests]
|
[tests]
|
|
[.gitignore]
|
[.gitignore]
|
|
[.pre-commit-config.yaml]
|
[.pre-commit-config.yaml]
|
|
[AGENTS.md]
|
[AGENTS.md]
|
|
[CLAUDE.md]
|
[CLAUDE.md]
|
|
[LICENSE]
|
[LICENSE]
|
|
[README.md]
|
[README.md]
|
|
[pyproject.toml]
|
[pyproject.toml]
|
|
[uv.lock]
|
[uv.lock]
|
|
查看所有文件

仓库文件导航

- README
- MIT 许可证
更多项目

cardiag — 通过声音诊断汽车故障

`cardiag` 是一个端到端的音频机器学习(audio-ML)管道。它从 YouTube/TikTok 上抓取故障声音片段,对音频进行清理(将机械声音从语音、音乐和噪音中分离出来),使用预训练的 CLAP 模型进行嵌入,然后训练小型线性头部来对故障进行分类。它提供了命令行界面(CLI)和实时 Web 应用。
[cardiag-demo.mp4]
这是一个概念验证项目,并且明确说明了其局限性。通过手机录音诊断汽车故障确实很困难,因此 `cardiag` 被设计为一个经过校准的分类辅助工具,而非诊断工具:它能告诉你声音是否异常、大致在汽车的哪个部位出现问题,以及可能出现问题的部件的排名列表。当音频无法支持判断时,它会给出“不确定”的结果,而不是盲目猜测。

该项目真正的贡献在于音频清理和诚实训练的方法,这种方法可应用于其他音频数据集。这里的准确率不高反映了从粗糙的手机音频中解决问题的难度(我们达到了现有文献的上限);同样的方法在干净的发动机音频上可达到 0.93 的 AUROC。详情见 [docs/DEFENSE.md]。

交互式演示

有两个页面展示了管道的前两个阶段:
- [分离发动机音频] — 交互式展示 `clean()` 级联如何从嘈杂的 YouTube 音频(语音、音乐、道路噪音)中提取短机械片段。
- [可视化 CLAP] — 展示预训练的 CLAP 模型如何将这些片段转换为线性头部用于分类的 512 维嵌入。

实际效果

通过样本外测量,保证数据无泄漏(对 1031 个视频组进行按视频分组的交叉验证;排列检验p = 0.0005)。这些数据是真实可靠的,并非排行榜上的虚假数据。
| 能力 | 结果 | 与随机猜测对比 |
| --- | --- | --- |
| 是否有问题?(故障/正常) |AUROC 0.79[0.76, 0.83] | 0.50 |
| 问题出在汽车的哪个部位?(6 个区域) |前 3 名中包含正确区域的概率约为 75%| 2 倍 |
| 是哪个部件出了问题?(12 个以上类别) |前 3 名中包含正确部件的概率约为 45 - 65%| 3 - 4 倍 |
| 知道何时无法做出判断 | 校准良好(ECE ≈ 0.04),返回 `UNCERTAIN` | — |
完整细节以及我们因样本外表现不佳而降级的一个头部(敲击声),请见 [docs/MODEL_CARD.md]。

快速开始:克隆仓库并进行推理

新克隆的仓库可立即使用。`models/` 目录中包含一个小型预训练模型,并且捆绑了一个合成演示片段,因此无需下载或抓取任何数据。

git clone <此仓库> && cd car-diagnosis
uv venv && source .venv/bin/activate
uv pip install -e ".[scrape,web,dev,viz]" # Python 3.11

cardiag doctor # 预检:查看已安装的内容
cardiag train --fixtures # 在约 2 秒内离线训练一个可用的模型(无需抓取数据,无需下载 2GB 文件)
cardiag diagnose # 给出诊断结果、问题所在位置和部件排名
cardiag serve --model models # 启动实时 Web 应用:上传音频片段或粘贴链接,查看“解释原因”

在隔离的工作树中验证整个流程:`bash scripts/clone_verify.sh`。

工作原理

音频 ──► clean() 级联 ──► CLAP 嵌入 ──► 线性头部 ──► 诊断
(分离片段) (预训练,512 维) (故障/区域/ (经过校准,
部件/敲击声) 能识别“不确定”情况)

只有一条分割路径。抓取的片段、您自己的录音(`cardiag ingest`,任意长度)以及推理时上传的音频,都要经过相同的 `clean()` 级联,以分离出短机械片段。超过 10 秒的片段会被分割成窗口,确保 CLAP 不会静默截断数据。训练和推理使用相同的嵌入协议,因此不会出现训练和推理结果不一致的情况。

使用方法

cardiag diagnose clip.wav # 完整模型:给出诊断结果、区域和部件排名
cardiag triage clip.wav # 校准后的发动机与传动装置分类
cardiag clean clip.wav # 分离机械声音(无需模型)
cardiag inspect clip.wav -o r.html # 查看/聆听管道处理过程:片段、频谱图、分数
cardiag ingest ./my_audio --kind fault --cause wheel_bearing # 导入您自己的音频
cardiag scrape youtube|tiktok # 构建数据集(Reddit 已弃用 — 噪音太大)
cardiag train # 在您的数据集上进行训练

在任何推理命令后添加 `--json`,可获得机器可读的输出。

文档

- [docs/DEFENSE.md] — 阐述了一种故意采用的粗糙方法如何获得真实的分类结果。
- [docs/MODEL_CARD.md] — 每个头部的指标、预期用途和局限性。
- [docs/architecture.md] — 管道流程图。
- [docs/scraping-guide.md] — 完整的数据集构建指南。

适用范围与诚实性

该项目适用于社交风格或有针对性上传的音频(YouTube、TikTok 或用户故意录制的手机音频)。它不是一个安全关键或独立的诊断工具,而是一个分类辅助工具,能缩小问题排查范围,并诚实地表明其不确定性。模型文件是 joblib 工件,仅加载您信任的文件。
许可证:请参阅 [LICENSE]。

关于

通过声音诊断汽车故障 — 一个诚实的、端到端的音频机器学习管道(抓取 → 清理 → CLAP → 校准分类)。概念验证项目。

资源

Readme

许可证

MIT 许可证

哎呀!

加载时出现错误。[请重新加载此页面]
[ 活动]

加星数

[6颗星]

关注者

[0人关注]

分叉数

[0次分叉]
[ 举报仓库 ]

[发布版本]

未发布任何版本

[包 0]

[包 0]

哎呀!

加载时出现错误。[请重新加载此页面]

[贡献者]

- - -

哎呀!

加载时出现错误。[请重新加载此页面]

语言

- [ Python 90.8% ]
- [ HTML 8.3% ]
- [ Shell 0.9% ]

页脚

(C) 2026 GitHub, Inc.

页脚导航

- [条款]
- [隐私]
- [安全]
- [状态]
- [社区]
- [文档]
- [联系我们]
- 管理 Cookie
- 不分享我的个人信息
此时您无法执行该操作。

http://www.cnnetsun.cn/news/3150298.html

相关文章:

  • 性价比高的区域教育一体化管理平台哪个更完善
  • 云原生技术28-K8s排障实战:20个常见问题的快速定位与解决,从CrashLoopBackOff到Running的完整指南
  • SSTImap实战指南:自动化检测与利用服务器端模板注入漏洞
  • 2025年AI Agent爆发:程序员转型“智能体指挥官“的5个实战路径
  • cubesendbox安装过程踩坑笔记➕解决方案
  • 2026,需要处理音视频字幕的开发者该怎么选靠谱好用的字幕提取器
  • AI技能管理新范式:告别手动复制,实现提示词工程化与资产化
  • 终极GitHub下载加速指南:3分钟解决国内访问缓慢问题
  • 通过代理路由实现Codex无缝切换国产大模型:CC Switch配置指南
  • 从零理解 RBAC:元点Admin 如何实现按钮级权限控制
  • 2026实测解析:软件测试培训为什么首推橙好测试开发?零基础/转行必看
  • Skills Manager:开源AI技能管家,实现提示词工程化与团队协作
  • GPT-5.5 Instant:从拼智商到拼情商,AI助手如何变得更懂你
  • 基于大数据爬虫+Hadoop用户偏好迁移的电影推荐系统
  • Dify 实战指南:从零构建 AI 应用,掌握 Agent 工作流与 RAG 核心
  • 当我们在浏览器里点开一把小锁:SSL/TLS是怎么保护我们的
  • python字符串的四种定义方式
  • 基于SpringBoot的合同管理系统与实现
  • 红日靶场(ATTCK实战)1通关方法
  • 少儿C++分级课程体系搭建:从L1到L4的教学设计经验分享
  • MAF预定义ChatClient中间件-07]PerServiceCallChatHistoryPersistingChatClient——基于ReAct循环的一步一存档
  • OpenClaw 的 sessions_spawn 隔离机制
  • 若依系统登录密码RSA加密实战:jsencrypt前端加密与Spring Boot后端解密
  • Go 数据结构 string 深度剖析
  • Docker--Docker Swarm集群
  • Deepin Boot Maker实战指南:跨平台启动盘制作高效方案深度解析
  • 苏州本地AI流量破局!一网推GEO苏州本地服务中心年度收录破8万
  • QA Use:推荐一款AI 原生 E2E 测试平台,自然语言一键跑通用例!
  • 冰河木马 v8.4 手动清除实战:3步删除注册表项与恢复文件关联
  • NS-Emu-Tools 技术架构深度解析:现代模拟器管理的工程化实践