基于 talk-llama https://github.com/ggerganov/whisper.cpp 俄语视频指南(俄语指南,英语字幕):https://youtu.be/0MEZ84uH4-E 英语演示视频,v0.1.3:https://www.youtube.com/watch?v=ORDfSG4ltD4 俄语视频,v0.1.0:https://youtu.be/ciyEsZpzbM8 TG频道:https://t.me/tensorbanana
gemma-2
和mistral-nemo
的支持。增加了多GPU支持(--main-gpu 0
,--split-mode none
,--tensor-split 0.5,0.5
)。新增--instruct-preset gemma
指令预设。更多详情请查看发布说明。--min_p 0.00
采样参数。建议俄语设置为0.10。talk-llama-fast-v0.1.7_no_avx2.zip
版本。如果主版本无错误崩溃,请使用此版本。--push-to-talk
选项:按住"Alt"键说话(适用于无耳机的扬声器)。现在可以在bat文件中使用西里尔字母。请使用西里尔字母"OEM 866"编码保存,notepad++支持此编码。--batch-size
(llama现在比之前少用0.6 GB显存!),--verbose
(显示速度)。起始提示现在不再限制长度。但为了保持速度,请保持在ctx_size以内。--stop-words
(llama的停止词列表,用分号;
分隔),--min-tokens
(最小输出词元数),--split-after
(在N个词元后分割第一句话用于xtts),--seqrep
(检测循环:最后300个符号中的20个符号),--xtts-intro
(在用户输入后立即为xtts添加随机的Umm/Well/...)。详情请参见0.0.4发布说明。--multi-chars
参数启用每个角色不同的声音,每个声音将发送到xtts,因此请确保有相应的.wav文件(如alisa.wav)。与语音命令Call NAME
一起使用。俄语视频:https://youtu.be/JOoVdHZNCcE 或 https://t.me/tensorbanana/876--translate
参数用于实时英俄翻译。俄语用户语音使用whisper翻译为英语。然后使用相同的mistral模型在相同上下文中将Llama输出翻译为俄语,无速度下降,无需额外显存。这个技巧让llama在俄语中有更强的推理能力,但会增加语法错误。由于以英语存储,而翻译在每个句子生成后立即从上下文中删除,因此上下文中可以容纳更多文本。--allow-newline
参数。默认情况下,如果没有此参数,llama会在遇到换行符时停止生成。--vad-start-thold
参数用于调整语音检测停止(默认值:0.000270;0表示关闭)。VAD检查当前噪音水平,如果声音很大,xtts和llama会停止。如果您在嘈杂的房间里,请调高此值,同时检查--print-energy
。--vad-last-ms
设置为500而不是200毫秒。如果你不喜欢xtts第一句话后的小停顿,将--split-after
设置为0而不是5 - 这将关闭第一句话的分割,但第一句话的发音会稍慢一些。--wav-chunk-sizes
改为20,40,100,200,300,400,9999
甚至100,200,300,400,9999
以减少wav分割的激进性。你还可以在talk-llama-wav2lip.bat中调整--sleep-before-xtts 1000
,这是llama在发送每个xtts请求后的睡眠时间(毫秒)。--extras-url
设置为http://localhost:5100/
,而应设置为http://127.0.0.1:5100/
。在我的情况下,localhost选项慢了2秒,不知道为什么。SillyTavern-extras\modules\wav2lip\server_wav2lip.py
的play_video_with_audio函数中,第367行设置sync_audio_delta_bytes = 5000
。-d=cpu
但速度较慢)。尝试关闭xtts的流式传输:在xtts_wav2lip.bat中将流式块大小设置为单个数字(--wav-chunk-sizes 9999)。这会更慢,但对多个小请求的开销更少。--vad_start_thold 0
。--wake-command "Anna,"
(名字后必须有逗号)。现在,只有以"Anna"名字开头的短语才会以你的身份进入聊天。这在使用扬声器或在嘈杂房间时会有部分帮助。Whisper STT 支持的语言:南非荷兰语、阿拉伯语、亚美尼亚语、阿塞拜疆语、白俄罗斯语、波斯尼亚语、保加利亚语、加泰罗尼亚语、中文、克罗地亚语、捷克语、丹麦语、荷兰语、英语、爱沙尼亚语、芬兰语、法语、加利西亚语、德语、希腊语、希伯来语、印地语、匈牙利语、冰岛语、印度尼西亚语、意大利语、日语、卡纳达语、哈萨克语、韩语、拉脱维亚语、立陶宛语、马其顿语、马来语、马拉地语、毛利语、尼泊尔语、挪威语、波斯语、波兰语、葡萄牙语、罗马尼亚语、俄语、塞尔维亚语、斯洛伐克语、斯洛文尼亚语、西班牙语、斯瓦希里语、瑞典语、他加禄语、泰米尔语、泰语、土耳其语、乌克兰语、乌尔都语、越南语和威尔士语。
XTTSv2 支持的语言:英语 (en)、西班牙语 (es)、法语 (fr)、德语 (de)、意大利语 (it)、葡萄牙语 (pt)、波兰语 (pl)、土耳其语 (tr)、俄语 (ru)、荷兰语 (nl)、捷克语 (cs)、阿拉伯语 (ar)、中文 (zh-cn)、日语 (ja)、匈牙利语 (hu)、韩语 (ko)、印地语 (hi)。
Mistral 官方支持的语言:英语、法语、意大利语、德语、西班牙语。但它也可以使用一些其他语言,只是不太流利(例如,俄语虽然没有得到官方支持,但实际上可以使用)。
conda create -n xtts
conda activate xtts
conda install python=3.11
conda install git
pip install git+https://github.com/Mozer/xtts-api-server pydub
pip install torch==2.1.1+cu118 torchaudio==2.1.1+cu118 --index-url https://download.pytorch.org/whl/cu118
pip install git+https://github.com/Mozer/tts
conda deactivate
conda create -n extras
conda activate extras
conda install python=3.11
conda install git
git clone https://github.com/Mozer/SillyTavern-Extras
cd SillyTavern-extras
pip install -r requirements.txt
cd modules
git clone https://github.com/Mozer/wav2lip
cd wav2lip
pip install -r requirements.txt
conda deactivate
--output
从c:\DATA\LLM\SillyTavern-Extras\tts_out\改为你的\SillyTavern-Extras\tts_out\实际路径。别忘了这里的结尾斜杠。-ngl 0
。这会将mistral从GPU移至CPU+RAM。silly_extras.bat
。等待其下载 wav2lip 检查点并为新视频进行人脸检测(如果需要)。xtts_wav2lip.bat
以启动带有 wav2lip 视频的 xtts 服务器。或者运行 xtts_streaming_audio.bat 以启动不带视频的纯音频 xtts 服务器。注意:首次运行时,xtts 将从 GitHub 下载 DeepSpeed。如果 DeepSpeed 下载失败(出现"Warning: Retrying (Retry... ReadTimeoutError...)"),请开启 VPN 下载 DeepSpeed(27MB)和 xtts 检查点(1.8GB),之后可以关闭 VPN。Xtts 检查点可以不用 VPN 下载。但如果中断下载,检查点将会损坏 - 你必须手动删除 \xtts_models\ 目录并重新启动 xtts。talk-llama-wav2lip.bat
或 talk-llama-wav2lip-ru.bat
或 talk-llama-just-audio.bat。不要运行 exe 文件,只运行 bat 文件。注意:如果你的 .bat 文件中包含西里尔字母(俄语),请将其保存为西里尔文 "OEM 866" 编码(notepad++ 支持此编码)。-ngl 0
(mistral 有 33 层,尝试 0 到 33 之间的值以找到最佳速度)--ctx_size 512
--lowvram
,这将在每次 xtts 请求后将 xtts 模型从 GPU 移到 RAM(但会变慢)--wav-chunk-sizes=9999
,这会稍微慢一些,但会减少 wav2lip 请求次数\xtts\speakers\
。我建议使用 16 位单声道、22050Hz、10 秒长的无噪音和音乐的 wav 文件。使用 Audacity 进行编辑。\SillyTavern-extras\modules\wav2lip\input\
。我建议使用 300x400 分辨率、25 帧/秒、1 分钟长的视频,不要放高分辨率视频,它们会占用大量显存。每个文件夹放一个视频。文件夹名称应与所需的 xtts 语音名称和 talk-llama-wav2lip.bat 中的角色名称相同。例如,对于名为 Anna 的角色,使用 Anna.wav 和 \Anna\youtube_ann_300x400.mp4。使用 --multi-chars
参数,talk-llama 将把新角色的名称传递给 xtts 和 wav2lip,即使这个角色没有在 bat 文件或开始提示中定义。如果 xtts 找不到该语音,它将使用默认语音。如果 wav2lip 找不到该视频,它将使用默认视频。语音效果更好,但第一句话会稍慢。Xtts 不会按逗号 ',' 分割句子:
c:\Users[USERNAME]\miniconda3\Lib\site-packages\stream2sentence\stream2sentence.py
第 191 行,将
sentence_delimiters = '.?!;:,\n…)]}。'
替换为
sentence_delimiters = '.?!;:\n…)]}。'
pip install langchain
os.environ["SERPER_API_KEY"] = "your_key"
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
vcpkg install curl[tool]
c:\\DATA\\Soft\\vcpkg\\scripts\\buildsystems\\vcpkg.cmake
修改为您安装vcpkg的文件夹。然后进行构建。git clone https://github.com/Mozer/talk-llama-fast
cd talk-llama-fast
set SDL2_DIR=SDL2\cmake
cmake.exe -DWHISPER_SDL2=ON -DWHISPER_CUBLAS=0 -DGGML_CUDA=1 -DCMAKE_TOOLCHAIN_FILE="c:\\DATA\\Soft\\vcpkg\\scripts\\buildsystems\\vcpkg.cmake" -B build -DCMAKE_BUILD_PARALLEL_LEVEL=4
cmake.exe --build build --config release --target clean
del build\bin\Release\talk-llama.exe & cmake.exe --build build --config release --parallel 4
对于不支持AVX2的旧CPU:cmake.exe -DWHISPER_NO_AVX2=1 -DWHISPER_SDL2=ON -DWHISPER_CUBLAS=0 -DGGML_CUDA=1 -DCMAKE_TOOLCHAIN_FILE="c:\\DATA\\Soft\\vcpkg\\scripts\\buildsystems\\vcpkg.cmake" -B build -DCMAKE_BUILD_PARALLEL_LEVEL=4
然后执行相同的最后两行
编译可能需要30多分钟。
-h, --help [默认] 显示此帮助信息并退出
-t N, --threads N [4 ] 计算时使用的线程数
-vms N, --voice-ms N [10000 ] 语音持续时间(毫秒)
-c ID, --capture ID [-1 ] 捕获设备ID
-mt N, --max-tokens N [32 ] 每个音频块的最大标记数
-ac N, --audio-ctx N [0 ] 音频上下文大小(0 - 全部)
-ngl N, --n-gpu-layers N [999 ] 存储在VRAM中的层数
-vth N, --vad-thold N [0.60 ] 语音平均活动检测阈值
-vths N, --vad-start-thold N [0.000270] VAD停止TTS的最小级别,0:关闭,0.000270:默认
-vlm N, --vad-last-ms N [0 ] 语音后的最小静音时间(毫秒)
-fth N, --freq-thold N [100.00 ] 高通频率截止
-su, --speed-up [false ] 音频加速2倍(不工作)
-tr, --translate [false ] 将源语言翻译成英语
-ps, --print-special [false ] 打印特殊标记
-pe, --print-energy [false ] 打印声音能量(用于调试)
--debug [false ] 打印调试信息
-vp, --verbose-prompt [false ] 在开始时打印提示
--verbose [false ] 打印速度
-ng, --no-gpu [false ] 禁用GPU
-p NAME, --person NAME [Georgi ] 人名(用于提示选择)
-bn NAME, --bot-name NAME [LLaMA ] 机器人名称(用于显示)
-w TEXT, --wake-command T [ ] 要监听的唤醒命令
-ho TEXT, --heard-ok TEXT [ ] 生成回复前TTS说的话
-l LANG, --language LANG [en ] 口语语言
-mw FILE, --model-whisper [models/ggml-base.en.bin] Whisper模型文件
-ml FILE, --model-llama [models/ggml-llama-7B.bin] LLaMA模型文件
-s FILE, --speak TEXT [./examples/talk-llama/speak] TTS命令
--prompt-file FNAME [ ] 包含自定义开始对话提示的文件
--instruct-preset TEXT [ ] 使用的指令预设(不带.json)
--session FNAME 用于缓存模型状态的文件(可能很大!)(默认:无)
-f FNAME, --file FNAME [ ] 文本输出文件名
--ctx_size N [2048 ] 提示上下文的大小
-b N, --batch-size N [64 ] 输入批次大小
-n N, --n_predict N [64 ] 预测的最大标记数
--temp N [0.90 ] 温度
--top_k N [40.00 ] top_k
--top_p N [1.00 ] top_p
--min_p N [0.00 ] min_p
--repeat_penalty N [1.10 ] 重复惩罚
--repeat_last_n N [256 ] 重复最后N个
--main-gpu N [0 ] 主GPU ID,从0开始
--split-mode NAME [none ] GPU分割模式:'none'或'layer'
--tensor-split NAME [(null) ] 张量分割,浮点数列表:0.5,0.5
--xtts-voice NAME [emma_1 ] XTTS语音(不带.wav)
--xtts-url TEXT [http://localhost:8020/] XTTS/Silero服务器URL,带尾部斜杠
--xtts-control-path FNAME [c:\DATA\LLM\xtts\xtts_play_allowed.txt] 不再使用
--xtts-intro [false ] XTTS即时短随机介绍,如"嗯..."
--sleep-before-xtts [0 ] LLaMA推理前的休眠时间(毫秒)
--google-url TEXT [http://localhost:8003/] Langchain Google-Serper服务器URL,带/
--allow-newline [false ] 允许LLaMA输出中的换行
--multi-chars [false ] XTTS将使用与LLaMA输出相同的WAV名称
--push-to-talk [false ] 按住Alt键说话
--seqrep [false ] 序列重复惩罚,在300个中搜索最后20个
--split-after N [0 ] 在前N个标记后分割用于TTS
--min-tokens N [0 ] 输出的最小新标记数
--stop-words TEXT [ ] LLaMA停止词:用;分隔
完整的命令列表及变体可在talk-llama.cpp
中找到,搜索user_command
。
talk-llama.cpp
中的misheard text
。cmd
中。Reddit:https://www.reddit.com/user/tensorbanana2 电报:https://t.me/tensorbanana 捐赠:https://github.com/Mozer/donate
全能AI智能助手,随时解答生活与工作的多样问题
问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。
实时语音翻译/同声传译工具
Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。
一键生成PPT和Word,让学习生活更轻松
讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。
深度推理能力全新升级,全面对标OpenAI o1
科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。
一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型
Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。
字节跳动发布的AI编程神器IDE
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。
AI助力,做PPT更简单!
咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。
选题、配图、成文,一站式创作,让内容运营更高效
讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。
专业的AI公文写作平台,公文写作神器
AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。
OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。
openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它 为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。
最新AI工具、AI资讯
独家AI资源、AI项目落地
微信扫一扫关注公众号