OddTTS 更新:语音模型下载优化,同时支持 HuggingFace 与 ModelScope 源
前两天有一位 TOM 网友反馈说他在DeepIn上安装了 OddTTS 后卡在了模型下载下载一直失败并且直接网页打开 https://hf-mirror.com 也会跳转到一直垃圾网站不确定是不是他的DEEPIN 的dns出问题、被劫持了。考虑到 OddTTS 实际也就是国内偶尔有人会用一下于是我就动手把模型下载部分的逻辑整个重写了一下同时加入 HuggingFace 和 ModelScope 的下载先用 HuggingFace 去下载如果下载失败再 fallback 到 ModelScope 下载。修改后的版本已经递交到 pypi版本号是 v1.2.18有需要的同学可以下载、或者更新下载一下。pipinstall-Uoddtts以下是具体的更新说明。今天带给大家一个好消息我们开源的多引擎 TTS 语音合成服务 OddTTS迎来了一次重量级更新围绕「安装更简单、模型更好下、用起来更省心」这三大目标做了一次全面重构。一、OddTTS 是什么熟悉我们的朋友应该知道OddTTS 是一个多引擎 TTS 统一封装服务一套接口搞定多种主流语音合成引擎同时也兼容 OpenAI 的 TTS API。它最初诞生于我们做「小落同学」项目时的真实需求——希望能随时在不同的 TTS 引擎之间自由切换而这个能力对所有有 TTS 需求的同学都有价值于是我们把它独立出来并开源了。仓库地址https://github.com/oddmeta/oddtts目前已支持的引擎包括EdgeTTS零显存、零模型最轻量Kokoro-82M-v1.1-zh纯 CPU 可跑离线可用我们的默认引擎ChatTTS自然对话风格Bert-VITS2少样本音色复刻GPT-SoVITS v2少样本语音合成/复刻二、本次更新亮点1. 重构为标准的 oddtts 包结构一键启动过去使用 OddTTS 需要拉源码、配环境步骤比较繁琐。这次我们把项目重构为标准 Python 包结构之后只需两步pipinstalloddtts oddtts一条命令即可启动服务默认绑定http://localhost:9001浏览器打开即是可视化 Web 界面也可以通过 RESTful API 接入你自己的系统。同时本次还整理了setup.cfg、setup.py、build.bat发布与构建流程更规范。2. 模型下载双通道HuggingFace ModelScope国内默认走 ModelScope很多国内同学反馈“模型下不动挂不上梯子”。这次我们彻底解决了这个问题模型下载同时支持 HuggingFace 与 ModelScope 两个源并且默认优先从ModelScope魔搭下载——国内访问速度有保障下载失败时还会自动切换备用源再也不用手动设置HF_ENDPOINT镜像了。3. 启动时预加载模型告别首次请求卡死之前模型是懒加载的也就是第一次调用 TTS 接口时才临时下载、加载模型常常出现首次请求长时间无响应、甚至接口超时的情况。本次调整为启动时预下载 预加载模型服务初始化期间就把模型准备好之后每次调用都是即叫即应。如果你希望更快的启动速度也可以在配置文件里把preload_model关掉改回按需加载。4. Web 前端界面整体升级本次同步重构了 Web 界面交互更友好、布局更清爽语音列表、参数调节、试听下载等功能的操作体验都有明显提升。三、快速上手# 1. 安装pipinstalloddtts# 2. 启动首次启动会自动下载模型稍等片刻oddtts# 3. 浏览器访问# http://localhost:9001不想改任何配置直接跑也行默认引擎 Kokoro 纯 CPU 即可流畅运行、完全离线可用有 GPU 的话在配置文件里把enable_gpu打开效率更高。四、关于硬件需求参考模型最低显存纯 CPUEdgeTTS0GB可以Kokoro0GB可以ChatTTS2.5GB量化可以考虑Bert-VITS25GB量化可以考虑GPT-SoVITS v28GB不建议MeloTTS低量化可以考虑结语OddTTS 一直维持着开源免费、MIT 协议、商用个人随便用的原则这次更新希望解决大家最痛的两件事装起来麻烦、模型下不动。如果你在用它做语音合成欢迎 Star、提交 Issue 或贡献代码也欢迎关注「奥德元」公众号我们一起学习 AI一起追赶时代。仓库地址https://github.com/oddmeta/oddtts在线文档oddmeta.net/docs/oddtts 含完整 API 接口文档

相关新闻

以实战论 AI:诚邀一线工程师分享模型调优、工程落地真实案例

以实战论 AI:诚邀一线工程师分享模型调优、工程落地真实案例

聊 AI 的文章太多了,但大部分要么停在"概念科普"层面,要么就是"我用了某个模型效果很好"的体验式分享。真正把模型从 60 分调到 85 分的过程,从 demo 到生产踩的那些坑,反而很少有人系统性地讲。 这篇文章不…

2026/10/1 0:28:13 阅读更多 →
CSS现代指南:从盒模型到设计系统,掌握前端样式核心

CSS现代指南:从盒模型到设计系统,掌握前端样式核心

1. 从“样式表”到“设计系统”:CSS的现代角色再认知提到CSS,很多刚入行的朋友第一反应可能就是“给网页加点颜色、调调间距”。确实,在Web开发的“三驾马车”HTML、CSS、JavaScript中,CSS常常被看作是最简单、最“前端”的那一个…

2026/10/12 3:29:45 阅读更多 →
IDH2突变白血病患者的分化疗法:恩西地平效果怎样,仿制药价格?

IDH2突变白血病患者的分化疗法:恩西地平效果怎样,仿制药价格?

急性髓系白血病是一种高度恶性的血液肿瘤,老年患者和复发难治患者的预后极差。在急性髓系白血病患者中,IDH2基因突变约占12%至15%,这种突变导致异柠檬酸脱氢酶2功能异常,产生大量致癌代谢物2-羟基戊二酸,阻断正常造血细…

2026/9/29 9:07:06 阅读更多 →

最新新闻

glibc内存管理核心:malloc/free原理、RSS异常排查与调优实践

glibc内存管理核心:malloc/free原理、RSS异常排查与调优实践

搞了十多年Linux服务端,我遇到过不少内存方面的疑难杂症:程序跑着跑着RSS飙到十几个GB,看代码却找不到任何泄漏;压力测试一过进程就被OOM干掉;线上明明有内存空闲,服务却越跑越慢。这些问题表面上是业务逻辑…

2026/10/14 0:15:46 阅读更多 →
SpringBoot2+Vue3构建医院资源管理系统实战

SpringBoot2+Vue3构建医院资源管理系统实战

1. 项目概述与核心价值医院资源管理系统作为医疗信息化建设的核心组成部分,其技术选型与架构设计直接关系到医疗机构的运营效率。这套基于SpringBoot2Vue3MyBatis-PlusMySQL8.0的技术栈组合,代表了当前企业级应用开发的主流技术方向。我在三甲医院信息化…

2026/10/14 0:15:46 阅读更多 →
easy-peasy Reducer TypeScript API:用 Reducer<State, Action> 为 Redux 风格 Reducer 添加完整类型

easy-peasy Reducer TypeScript API:用 Reducer<State, Action> 为 Redux 风格 Reducer 添加完整类型

前端 【免费下载链接】easy-peasy Vegetarian friendly state for React 项目地址: https://gitcode.com/gh_mirrors/ea/easy-peasy 点击查看 免费下载 本篇围绕 easy-peasy 的 TypeScript API 中的 Reducer 类型展开,讲解如何在模型声明中为“标准 Red…

2026/10/14 0:15:46 阅读更多 →
EFK日志监控系统从零搭建:Elasticsearch+Filebeat+Kibana实战指南

EFK日志监控系统从零搭建:Elasticsearch+Filebeat+Kibana实战指南

直接说结论:如果你团队里缺一套能随时查线上日志、能统计错误趋势、能按关键字秒级定位问题的系统,EFK三件套是目前最稳妥的选择。Elasticsearch负责存储和检索,Filebeat轻量采集日志,Kibana负责可视化。三者合起来,就…

2026/10/14 0:15:46 阅读更多 →
二叉树指定结点层次计算:递归与迭代实现及工程实践

二叉树指定结点层次计算:递归与迭代实现及工程实践

1. 从一道经典题说起:为什么"求结点层次"值得单独拎出来讲但凡刷过二叉树相关题目的人,大概率都见过这道题:给一棵二叉树,再给一个目标结点,问这个结点在第几层。很多人第一反应是"这不就是遍历的时候顺…

2026/10/14 0:15:46 阅读更多 →
Lorenz吸引子实战指南:从混沌方程到三维相图可视化

Lorenz吸引子实战指南:从混沌方程到三维相图可视化

1. 为什么一张“蝴蝶翅膀”能搅动整个非线性科学界?你可能在科普视频里见过它:两条螺旋状轨迹,像一对缓缓张开的蝴蝶翅膀,在三维空间里永不停歇地缠绕、分离、再靠近——它不是艺术渲染,而是Lorenz系统在特定参数下自动…

2026/10/14 0:14:45 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →