在无GPU的windows上运行ChatTTS

如果你在安装的过程中出现了下面的错误,不妨先看看这些安装步骤:

cl: 命令行 error D8021 :无效的数值参数“/Wno-register” error: command 'C:\

windows ERROR: Failed building wheel for pynini

卷完了文本,卷图片,卷完了图片,卷视频,也许语音就是最后一个AI领域卷的最后一个方向。ChatTTS火热了一段时间了,github上的安装说明并不友好,这里做简单的安装记录,让windows也用上ChatTTS。

环境安装

如果在windows 还没有安装Conda的需要先安装一下,因为有些ChatTTS的一些库,需要用Conda来安装,单纯的pip 是搞不定的。而且用Conda 来管理python的虚拟环境也非常的方便。

下载地址:https://docs.anaconda.com/free/miniconda/

在这里插入图片描述
下载安装完成以后,需要配置一下参数地址,环境变量:
在这里插入图片描述

到cmd命令窗口下,试试命令:

 conda info

在这里插入图片描述
证明我们的配置成功了。

创建虚拟环境并下载模型

为了python的环境不会互相污染,使用python虚拟环境是一种常见的方法,因为每个项目需要的库版本可能不一样而导致了冲突,这里创建一个虚拟环境 命令如下:

conda create -n chattts_env python=3.10

创建完成以后,进入虚拟环境:

conda activate chattts_env
(chattts_env) C:\Users\Administrator>

在运行conda activate 命令的时候如果出现CondaError: Run 'conda init' before 'conda activate' 错误,在打开CMD的时候需要用管理员权限。

注意就是pynini 这个库不容易安装,需要使用conda命令

conda install -c conda-forge pynini=2.1.5 

下载ChatTTS代码:

git clone https://huggingface.co/2Noise/ChatTTS.git

注意,代码中requirements.txt 需要在添加几个库,requirements.txt 文件的内容如下:

torch==2.2.2
torchvision==0.17.2
torchaudio==2.2.2
omegaconf~=2.3.0
tqdm
einops
vector_quantize_pytorch
transformers~=4.41.1
vocos
IPython
WeTextProcessing
nemo_text_processing
gradio

到代码的目录下运行安装命令:

pip install -r requirements.txt

很快就能安装完成,需要的环境就已经齐全了。如果你的网络可以直接访问外网,那么可以不用使用特殊方法下载模型,如果你使用的是代理,可以像这样,下把模型下载下来;

import ChatTTS
import torch
import torchaudio
from IPython.display import Audio
import os

os.environ["http_proxy"] = "http://127.0.0.1:1080"
os.environ["https_proxy"] = "http://127.0.0.1:1080"

chat = ChatTTS.Chat()
chat.load_models(compile=False) # Set to True for better performance

# Define the text input for inference (Support Batching)
texts = [
    "So we found being competitive and collaborative was a huge way of staying motivated towards our goals, so one person to call when you fall off, one person who gets you back on then one person to actually do the activity with.",
    ]

# Perform inference and play the generated audio
wavs = chat.infer(texts)

这里没什么特别的,就是为了用代理,下把模型下载下来。

运行WebUI

在代码的目录下有一个webui.py的文件,运行webui.py,启动web程序:

(chattts_env) D:\ChatTTS-main>python webui.py
loading ChatTTS model...
INFO:ChatTTS.core:Load from cache: C:\Users\Administrator/.cache/huggingface\hub/models--2Noise--ChatTTS/snapshots\d7474137acb4f988874e5d57ad88d81bcb7e10b6
WARNING:ChatTTS.utils.gpu_utils:No GPU found, use CPU instead
INFO:ChatTTS.core:use cpu
INFO:ChatTTS.core:vocos loaded.
INFO:ChatTTS.core:dvae loaded.
INFO:httpx:HTTP Request: GET https://api.gradio.app/pkg-version "HTTP/1.1 200 OK"
INFO:ChatTTS.core:gpt loaded.
INFO:ChatTTS.core:decoder loaded.
INFO:ChatTTS.core:tokenizer loaded.
INFO:ChatTTS.core:All initialized.
INFO:httpx:HTTP Request: GET https://checkip.amazonaws.com/ "HTTP/1.1 200 "
Running on local URL:  http://0.0.0.0:8080
INFO:httpx:HTTP Request: GET http://localhost:8080/startup-events "HTTP/1.1 200 OK"
INFO:httpx:HTTP Request: HEAD http://localhost:8080/ "HTTP/1.1 200 OK"

To create a public link, set `share=True` in `launch()`.
INFO:matplotlib.font_manager:generated new fontManager
INFO:ChatTTS.core:All initialized.
 16%|█████████████                                                                    | 62/384 [00:05<00:31, 10.34it/s]
INFO:ChatTTS.core:All initialized.
 23%|██████████████████▏                                                            | 471/2048 [00:37<02:04, 12.63it/s]

访问http://localhost:8080/

在这里插入图片描述可以试试,这开源效果还是很不错的,几个参数也可以调一调,Audio Seed 比较小的是女声,比较大的是男声。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/680736.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MySQL——覆盖索引

覆盖索引介绍 理解方式一&#xff1a;索引是高效找到行的一个方法&#xff0c;但是一般数据库也能使用索引找到一个列的数据&#xff0c;因此它不必读取整个行。毕竟索引叶子节点存储了它们索引的数据&#xff1b;当然通过读取索引就可以得到想要的数据&#xff0c;那就不需要…

【python】成功解决“SyntaxError: can’t assign to function call”错误的全面指南

成功解决“SyntaxError: can’t assign to function call”错误的全面指南 在Python编程中&#xff0c;语法错误&#xff08;SyntaxError&#xff09;是初学者和经验丰富的开发者都可能遇到的问题。其中&#xff0c;“SyntaxError: can’t assign to function call”这个错误常…

软件三班20240605

文章目录 1.创建工程和模块2.添加 web支持3.创建前端代码4.添加servlet 依赖5. 代码6.案例2 1.创建工程和模块 2.添加 web支持 方法1 方法2 3.创建前端代码 4.添加servlet 依赖 5. 代码 <!DOCTYPE html> <html lang"en"> <head><meta c…

被斯坦福抄作业了?在线体验下:国产大模型确实越来越棒啦!

抄袭&#xff1f; 这里不做评价了&#xff1a; 官方仓库 地址&#xff1a;miniCPM-Llama3-V-2_5 免费在线体验地址 链接&#xff1a;Llama3-V-2_5 模型能力&#xff1a; 模型实际体验 问他什么模型&#xff1a;&#xff08;可能用了它的数据集吧&#xff09; 图片分析…

星创编辑器在投放业务中的落地|得物技术

搭建一个落地页需要涉及到多方合作&#xff0c;需要不断地进行沟通协调。繁杂的流程需要耗费很多的时间&#xff0c;因此我们推动产品重新搭建了一个专门服务于软广投放流程的编辑器——星创&#xff0c;完成广告搭建在投放业务各系统中的闭环。 一、落地页技术架构 名词解释…

数据新生态:Web3如何重新定义个人数据权利

随着数字化时代的不断深入&#xff0c;个人数据已经成为了现代社会中最宝贵的资源之一。然而&#xff0c;传统互联网时代下&#xff0c;个人数据往往被大型科技公司垄断、滥用&#xff0c;个人数据权利常常受到侵犯。而随着Web3技术的崛起&#xff0c;人们开始期待一种全新的数…

这几年一直有人在问:软件行业现在环境好不好?(俩张图告诉你答案)IT还有机会回暖吗?

这几年一直有人在问:软件行业现在环境好不好?(俩张图告诉你答案)IT还有机会回暖吗? 近几年软件行业确实是不太景气,身边很多朋友都面临找工作难的景象.it培训行业也是对老师进行裁员,砍掉大部分学科, 大家可以在下方评论发表自己的看法,认为IT还有机会回暖吗?

Vue进阶之Vue无代码可视化项目(四)

Vue无代码可视化项目 左侧栏第一步LeftPanel.vueLayoutView.vuebase.css第二步LayoutView.vueLeftPanel.vue编排引擎smooth-dnd安装创建文件SmoothDndContainer.tsutils.tsSmoothDndDraggable.tsLeftPanel.vue左侧栏 第一步 创建LeftPanel LeftPanel.vue <script setup…

第15章 面向服务架构设计理论实践

服务是一个由服务提供者提供的&#xff0c;用于满足使用者请求的业务单元。服务的提供者和使用者都是软件代理为了各自的利益而产生的角色。 在面向服务的体系结构(Service-Oriented Architecture,SOA)中&#xff0c;服务的概念有了延伸&#xff0c;泛指系统对外提供的功能集。…

Python文档生成工具库之alabaster使用详解

概要 在编写文档时,美观和易读性是两个重要的方面。Sphinx 是一个广泛使用的文档生成工具,而 Alabaster 是 Sphinx 默认的主题。alabaster 主题以其简洁优雅的设计和易用的配置选项受到广大用户的欢迎。本文将详细介绍 alabaster 库,包括其安装方法、主要特性、基本和高级功…

php质量工具系列之PHPCPD

PHPCPD 用于检测重复代码&#xff0c;直观的说就是复制粘贴再稍微改改 该工具作者已经 停止维护 安装 composer global require --dev sebastian/phpcpd执行 phpcpd --log-pmd phpcpd_result.xml ./app参数介绍 --log-pmd 将结果保存在phpcpd_result.xml 中 ./app 是phpcpd扫…

【传知代码】偏标记学习+图像分类(论文复现)

前言&#xff1a;偏标记学习&#xff0c;顾名思义&#xff0c;就是在训练数据集中&#xff0c;每个样本的标签不是完全确定的&#xff0c;而是由多个可能的标签组成的集合。这种学习范式更加贴近现实世界的场景&#xff0c;因为在很多情况下&#xff0c;我们无法为图像提供精确…

可的哥(Codigger)推出Monaco编辑器插件,提升编程体验

Monaco编辑器&#xff0c;作为业界领先的代码编辑器&#xff0c;在编程体验中发挥着不可或缺的重要作用&#xff0c;能够在多种编程语言和开发环境中表现出色&#xff0c;为开发者提供高效、便捷的编程环境。可的哥&#xff08;Codigger&#xff09;在应用商店上线Monaco编辑器…

在618集中上新,蕉下、VVC们为何押注拼多多?

编辑&#xff5c;Ray 自前两年崛起的防晒产品&#xff0c;今年依旧热度不减。 头部品牌蕉下&#xff0c;2020年入驻拼多多&#xff0c;如今年销售额已过亿元。而自去年起重点押注拼多多的时尚防晒品牌VVC&#xff0c;很快销量翻番。这两家公司&#xff0c;不约而同在618之前上…

设备巡检系统是如何实现一次操作闭环管理的

设备巡检系统通过一系列功能设计&#xff0c;实现了从任务分配到问题处理的一次操作闭环管理。以下是具体的实现方式&#xff1a; 一、多类型任务无感操作 任务识别与整合&#xff1a;系统能够自动识别各种巡检、重大危险源排查及现场检修等任务的类型和优先级&#xff0c;并…

企业全面管理解决方案:基于Java技术的ERP管理系统源码

功能模块与描述&#xff1a; ERP首页&#xff1a; 销售统计与采购统计&#xff1a;实时展示销售和采购金额的统计数据。折线图统计&#xff1a;通过图表直观展示销售和采购趋势。 采购管理&#xff1a; 采购订单管理&#xff1a;处理采购订单的搜索、新增、导出等。采购入库与退…

进程同步的基本元素

目录 临界资源 临界区 信号量机制 整形信号量 记录型信号量 AND信号量 信号量集 信号量的应用 实现进程互斥 实现前驱关系 管程机制 总结 临界资源 I/O设备属于临界资源。著名的生产者-消费者问题就是关于临界资源的争夺产生的进程同步的问题。 生产者-消费者 描…

产品经理:做好有效的客户需求分析

需求分析是产品开发过程中的重要环节&#xff0c;它直接决定了产品是否能够满足市场需求和用户期望。通过深入了解客户需求&#xff0c;产品经理可以确保产品功能的设计符合用户的实际需求&#xff0c;从而提高产品的用户满意度和市场竞争力。 一、识别用户需求 识别用户需求…

mysql用户管理知识点

1、权限表 1.1、user表 1.1.1、用户列 Host、User、Password分别表示主机名、用户名、密码 1.1.2、权限列 决定了用户的权限&#xff0c;描述了在全局范围内允许对数据和数据库进行操作。 1.1.3、安全列 安全列有6个字段&#xff0c;其中两个是ssl相关的&#xff0c;2个是x509相…

虚拟仿真实训平台如何与不同专业进行融合?

虚拟仿真实训平台根据跨专业实训教学和职业培训的不同特点&#xff0c;兼顾实训课程设计的专业性和兼容性&#xff0c;根据不同专业特性确定虚拟仿真实训教学内容&#xff0c;研发虚拟仿真实训教学资源&#xff0c;优化人才培养方案和职业培训方案&#xff0c;改革实训教学体系…