365赢30万不让提款-365玩球安全吗-365bet娱乐网

— 怀旧经典 · 永恒记忆 —

WeClone:通过微信聊天记录微调LLM,形成个人的数字分身。

WeClone:通过微信聊天记录微调LLM,形成个人的数字分身。

WeClone是什么?WeClone 是一个开源项目,旨在通过微信聊天记录微调LLM,并结合微信语音消息和大模型实现高质量的声音克隆,最终绑定到微信机器人,实现个人的ai数字分身。

WeClone功能使用微信聊天记录微调LLM:通过用户自己的微信聊天记录对语言模型进行微调,使其更符合个人的语言风格和习惯。

高质量声音克隆:结合微信语音消息和0.5B大模型,实现高质量的声音克隆。

绑定微信机器人:将微调后的模型绑定到微信机器人,实现自动回复等功能,形成个人的数字分身。

WeClone特性硬件要求:默认使用 chatglm3-6b 模型,LoRA 方法微调需要约16GB显存。其他模型和方法可自行配置。

软件要求:推荐使用 Python 3.10,以及特定版本的 PyTorch、Transformers 等库。

环境搭建:通过 Git 克隆项目,使用 Conda 创建环境并安装依赖。

数据准备:使用 PyWxDump 提取微信聊天记录,导出为 CSV 格式。

数据预处理:去除敏感信息,支持多种数据处理方式。

模型下载:推荐从 Hugging Face 或魔搭社区下载 ChatGLM3 模型。

微调模型:通过修改 settings.json 配置参数,进行单卡或多卡训练。

推理与测试:提供浏览器 demo 和接口推理功能,支持常见聊天问题测试。

微信机器人部署:通过扫码登录,支持私聊和群聊中的机器人交互。

WeClone使用步骤环境搭建克隆项目:在终端中运行以下命令,将 WeClone 项目克隆到本地。

git clone https://github.com/xming521/WeClone.git创建并激活虚拟环境:使用 Conda 创建一个新的 Python 环境,并激活该环境。

conda create -n weclone python=3.10

conda activate weclone安装依赖:进入项目目录,安装项目所需的依赖包。

cd WeClone

pip install -r requirements.txt数据准备提取微信聊天记录:使用 PyWxDump 软件提取微信聊天记录。下载并安装该软件,解密数据库后,点击聊天备份,导出类型选择为 CSV。可以导出多个联系人或群聊的聊天记录。

放置数据:将导出的位于 wxdump_tmp/export 的 csv 文件夹放在项目目录下的 ./data 目录中,即不同人聊天记录的文件夹一起放在 ./data/csv。示例数据位于 data/example_chat.csv。

数据预处理去除敏感信息:项目默认会去除数据中的手机号、身份证号、邮箱、网址等敏感信息。此外,还提供了一个禁用词词库 blocked_words,可以自行添加需要过滤的词句,程序会默认去掉包含禁用词的整句。

处理数据格式:执行 ./make_dataset/csv_to_json.py 脚本对数据进行处理。在同一人连续回答多句的情况下,可以选择以下三种处理方式之一:

使用 csv_to_json.py:将多句回答用逗号连接。

使用 csv_to_json-单句回答.py(已废弃):只选择最长的回答作为最终数据。

使用 csv_to_json-单句多轮.py:将多句回答放在提示词的 'history' 中。

模型下载首选 Hugging Face:在 Hugging Face 下载 ChatGLM3 模型。如果在 Hugging Face 模型的下载中遇到问题,可以使用魔搭社区的模型。

使用魔搭社区:如果选择使用魔搭社区的模型,需要先执行以下命令来使用魔搭社区的模型。

export USE_MODELSCOPE_HUB=1 # Windows 使用 `set USE_MODELSCOPE_HUB=1`

git lfs install

git clone https://www.modelscope.cn/ZhipuAI/chatglm3-6b.git注意:魔搭社区的 modeling_chatglm.py 文件需要更换为 Hugging Face 的。

配置参数并微调模型修改配置文件:训练以及推理相关配置统一在文件 settings.json 中。可以根据需要修改以下参数:

修改 per_device_train_batch_size 以及 gradient_accumulation_steps 来调整显存占用。

根据数据集的数量和质量修改 num_train_epochs、lora_rank、lora_dropout 等参数。

(可选)修改 settings.json 选择本地下载好的其他模型。

单卡训练:运行以下命令进行 sft 阶段微调。

python src/train_sft.py作者说他本人的 loss 只降到了 3.5 左右,降低过多可能会过拟合,其使用了大概 2 万条整合后的有效数据。

多卡训练:如果有多块显卡,可以使用 deepspeed 进行多卡训练。先安装 deepspeed,然后运行以下命令。

pip install deepspeed

deepspeed --num_gpus=使用显卡数量 src/train_sft.py推理与测试使用浏览器 demo 简单推理:项目提供了浏览器 demo,可以进行简单的推理测试。

使用接口进行推理:运行以下命令启动 api 服务。

python ./src/api_service.py使用常见聊天问题测试:运行以下命令进行常见聊天问题的测试。

python ./src/test_model.py部署微信聊天机器人启动 api 服务:先运行以下命令启动 api 服务。

python ./src/api_service.py运行微信机器人脚本:再运行以下命令启动微信聊天机器人。

python ./src/wechat_bot/main.py默认在终端显示二维码,扫码登录即可。可以私聊或者在群聊中 @ 机器人使用。

注意事项:微信有封号风险,建议使用小号,并且必须绑定银行卡才能使用。

语音克隆模块(WeClone-audio)Spark-TTS 方案(推荐):

导入相关模块。

import SparkTTS

from SparkTTS import SparkTTS初始化模型。

model = SparkTTS("WeClone-audio/pretrained_models/Spark-TTS-0.5B", "cuda")进行语音克隆推理。

with torch.no_grad():

wav = model.inference(

text="要生成的文本内容",

prompt_speech_path="示例音频路径",

prompt_text="示例音频对应的文本",

)Llasa 方案:

导入相关模块。

from text_to_speech import TextToSpeech初始化并进行推理。

tts = TextToSpeech(sample_audio_path, sample_audio_text)

result = tts.infer("要生成的文本内容")Github地址:https://github.com/xming521/WeClone

相关推荐

365赢30万不让提款 Mac虚拟机软件全攻略:选择、安装与优化

Mac虚拟机软件全攻略:选择、安装与优化

📅 06-29 👁️ 2086
365赢30万不让提款 蜂鸟配送客服电话是多少?蜂鸟配送客服联系方式介绍

蜂鸟配送客服电话是多少?蜂鸟配送客服联系方式介绍

📅 07-02 👁️ 4029
365玩球安全吗 刺客列传第一季

刺客列传第一季

📅 08-21 👁️ 3574
365bet娱乐网 本科警察大学有哪些(名单排名一览表2025)

本科警察大学有哪些(名单排名一览表2025)

📅 07-06 👁️ 5342
365赢30万不让提款 孙晓岐问题就是答案目标管理心态调整如何跟进

孙晓岐问题就是答案目标管理心态调整如何跟进

📅 08-24 👁️ 5635
365赢30万不让提款 棕色鞋子配什么颜色衣服裤子?

棕色鞋子配什么颜色衣服裤子?

📅 08-12 👁️ 1315
365赢30万不让提款 海尔电视机连接机顶盒的方法是什么?

海尔电视机连接机顶盒的方法是什么?

📅 09-11 👁️ 3710
365bet娱乐网 PID基本原理

PID基本原理

📅 08-28 👁️ 3159
365bet娱乐网 问道法宝技能一览表

问道法宝技能一览表

📅 09-03 👁️ 1129
365bet娱乐网 中国机场建设加速跑

中国机场建设加速跑

📅 08-28 👁️ 9325
365赢30万不让提款 透明天空大降 曾经售价5亿金如今一套200R

透明天空大降 曾经售价5亿金如今一套200R

📅 07-17 👁️ 7798