我爱我色成人网,欧美日韩国产色,欧美亚视频在线中文字幕免费,亚洲国产影院

WeClone:通過微信聊天記錄微調LLM,形成個人的數字分身。

WeClone是什么?

WeClone 是一個開源項目,旨在通過微信聊天記錄微調LLM,并結合微信語音消息和大模型實現高質量的聲音克隆,最終綁定到微信機器人,實現個人的ai數字分身。

WeClone:通過微信聊天記錄微調LLM,形成個人的數字分身。.webp

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使用.webp

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

收藏
最新工具
PrettyScale
PrettyScale

一個在線面部分析及顏值打分網站,用戶通過上傳照片或直接用攝像頭參...

圓周旅跡
圓周旅跡

一款旅游出行AI智能規劃APP,它可以直接從小紅書這些平臺導入別...

Wonderplan AI
Wonderplan AI

一個免費的AI旅游規劃工具,能根據你的喜好、需求生成專屬行程,支...

智寫流程
智寫流程

一個能自動記錄網頁操作并生成操作指南的工具。它能捕捉鼠標點擊、鍵...

ReactBits
ReactBits

一個免費開源的動畫化、可交互React組件庫,里面有好多動畫化、...

電視眼
電視眼

也叫TV眼,是一個在線網絡電視直播網站,提供全國5000+個電視...

Excel Dashboard Ai
Excel Dashboard Ai

一款能自動把 Excel 或 CSV 文件變成帶交互功能的儀表盤...

ByRutor
ByRutor

俄羅斯的一個免費游戲資源下載網站,提供超23,000多款游戲,涵...

RandomStreetView
RandomStreetView

一個可以隨機展示全球谷歌街景照片的網站,每次點按鈕,系統會隨機選...

ZType
ZType

官網:zty.pe,一個把打字練習和射擊游戲結合的在線工具。玩家...

主站蜘蛛池模板: 金溪县| 保定市| 喀喇| 南开区| 黑山县| 五寨县| 惠来县| 平度市| 中超| 新干县| 墨江| 乡城县| 麻栗坡县| 民和| 堆龙德庆县| 长寿区| 鞍山市| 三原县| 江西省| 陇西县| 靖边县| 香港| 桐庐县| 外汇| 陈巴尔虎旗| 高碑店市| 平顶山市| 湖北省| 绥中县| 会宁县| 麻阳| 天水市| 潮安县| 桦川县| 大宁县| 陆河县| 遂川县| 道孚县| 德州市| 明溪县| 甘孜县|