资讯动态

WeClone实战:把微信聊天记录炼成24小时在线的数字分身

发布时间:2026/9/9 22:30:12 来源:尧图企业网站定制
WeClone实战把微信聊天记录炼成24小时在线的数字分身【免费下载链接】WeClone One-stop solution for creating your AI twin from chat history Fine-tune LLMs with your chat logs to capture your unique style, then bind to a chatbot to bring your digital self to life.项目地址: https://gitcode.com/GitHub_Trending/we/WeClone用WeClone把自己的微信聊天记录微调成大模型就能得到一个按你语气说话的微信聊天机器人。回不过来的消息、想要一个24小时在线的数字分身这个项目干的就是这件事。先看见成品WeClone跑通之后的效果很具体你在微信里发消息机器人用你的口吻回你。它怎么称呼人、习惯用哪些口头禅、什么时候发一串哈哈哈都是从你的聊天记录里学来的。默认人设是扮演一名人类不要说自己是人工智能所以回答不会带作为AI那种机器腔。下图是项目自带的网页演示。对话本身不算惊艳但注意回答的节奏——我叫小张你呢这种口语化、不端着的话通用大模型默认给不出来。私聊它会直接回你群聊里被才会开口每个聊天对象它还记得最近15轮上下文。作者的自评是差强人意但有时候真的很搞笑。有点笨拙很正常最终效果很大程度取决于你自己数据的数量和质量。准备工作先说门槛。默认搭配ChatGLM3-6B模型做LoRA微调只训练少量附加参数不动整个模型大约需要16GB显存换成QLoRA量化压缩加低秩更新的组合进一步压显存6到10GB就够。训练方法模型大小显存需求LoRA7B约16GBQLoRA8bit7B约10GBQLoRA4bit7B约6GB软件方面你只需要Python 3.10和几个常用训练库仓库的requirements.txt里列全了克隆下来直接装。它基于LLaMA-Factory训练框架搭建后面想换别的模型也不麻烦。克隆仓库一条命令装好全部依赖git clone https://gitcode.com/GitHub_Trending/we/WeClone conda create -n weclone python3.10 conda activate weclone cd WeClone pip install -r requirements.txt准备一下聊天记录用PC端微信的导出工具把聊天备份成CSV放进./data/csv目录多个联系人和群聊的文件夹一起放就行。仓库里带了示例数据可以先跑通流程再换自己的。核心操作微信聊天记录怎么导出和清洗用PyWxDump这类工具把微信聊天记录导出为CSV放进./data/csv再跑项目自带的清洗脚本数据就变成训练集了。手机号、身份证号、邮箱、网址默认自动去掉有绝对不能出现的词句写进blocked_words.json包含禁用词的整句会被直接丢弃。同一个人连发多条消息时默认用逗号合并成一条样本也可以换多轮历史处理模式保留聊天的原始来回节奏。16GB显存怎么把模型调好训练参数都集中在settings.json里不用逐条看记住两件事显存不够就调小per_device_train_batch_size、调大gradient_accumulation_steps显存降下来效果基本不变数据在几万条量级跑3轮一般就够。参数默认值作用per_device_train_batch_size4批次大小显存主要消耗gradient_accumulation_steps8梯度累积步数替代大批次lora_rank4LoRA低秩维度越大越接近全量num_train_epochs3训练轮数learning_rate0.0001学习率下载好ChatGLM3-6B模型后启动SFT监督微调用问答对做训练阶段python src/train_sft.py deepspeed --num_gpus2 src/train_sft.py # 双卡并行就加这行微信机器人怎么接上训练好的模型先起API推理服务再开一个新终端起微信机器人扫码登录就能用私聊自动回复群聊被才应声python ./src/api_service.py python ./src/wechat_bot/main.py它会把回复按逗号拆开、一条条发每条间隔约2.2秒模拟真人打字节奏看起来不那么像机器一口气吐出来的。踩坑与调优如果你发现显存不够、程序OOM显存溢出崩掉先别急着换模型把批次调小、把梯度累积调大还差就切QLoRA的4bit。训练loss损失可以理解为错误指标降得太低别贪。作者自己跑只降到3.5左右再往下去容易过拟合机器人会开始复读自己的句子像一台坏掉的复读机。这里有个小坑项目通过itchat一个对接微信的库连微信账号必须绑定银行卡而且有封号风险。用小号别拿主号去挂7天24小时。如果感觉回复太板正把infer_args里的temperature稍微调高一点语气会活一些。延伸玩法想让机器人换个魂改一行就行src/template.py 里默认人设是请你扮演一名人类不要说自己是人工智能改成扮演我2019年的自己或者扮演一个嘴硬心软的打工人整个味道都不一样数据不用重新整理重训一遍就好。想换脑子也不局限于ChatGLM3-6B它在settings.json里能换成更小的模型显存跟着降。仓库还给了pt阶段预训练先让模型通读你的文本的代码作者说提升不明显可以先不管。你的聊天记录如果已经躺了好几年拿去喂一次模型比让它们睡在云端强。先导出一个聊得最多的人跑完一轮训练把机器人拉进一个测试群看它接不接得住你的口气——接得住就加数据接不住就回去把数据洗干净。【免费下载链接】WeClone One-stop solution for creating your AI twin from chat history Fine-tune LLMs with your chat logs to capture your unique style, then bind to a chatbot to bring your digital self to life.项目地址: https://gitcode.com/GitHub_Trending/we/WeClone创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价