--- license: apache-2.0 base_model: empero-ai/Qwythos-9B-Claude-Mythos-5-1M language: - zh tags: - qwen3.5 - lora - wechat - chinese - article-generation pipeline_tag: text-generation --- # Qwythos-9B-WeChat (v2) 基于 [empero-ai/Qwythos-9B-Claude-Mythos-5-1M](https://huggingface.co/empero-ai/Qwythos-9B-Claude-Mythos-5-1M)(Qwen3.5-9B 架构)LoRA 微调后合并的模型,专用于生成**微信公众号科技 / AI / 新闻类文章**(Markdown 格式输出)。 ## v2 相对 v1 的改进 - 清洗规则增强:清除来源声明、加星标、点赞引导、往期推荐、编辑署名等 boilerplate - 粗体独立行还原为 `##` 小标题,训练数据结构化排版占比从 5% → 55% - 训练超参:2 epochs、lr 1e-4(v1 为 3 epochs / 2e-4,减轻过拟合与复读) - 推理建议:`repetition_penalty=1.1`,vLLM 加 `--reasoning-parser qwen3` ## 训练细节 - **训练数据**:2398 篇二次清洗后的公众号科技类文章 - **方法**:LoRA(r=16, alpha=16, dropout=0.05) - **训练参数**:2 epochs,序列长度 4096,有效 batch size 8,lr 1e-4(cosine),BF16 - **硬件**:单卡 RTX 5090D 32GB(Windows 原生),约 5.2 小时 - **收敛**:train_loss ≈ 2.26 ## 使用 ```python import torch from transformers import AutoModelForImageTextToText, AutoTokenizer model_id = "junshengma/Qwythos-9B-WeChat" # 或本地 D:/models/Qwythos-9B-WeChat-v2 tok = AutoTokenizer.from_pretrained(model_id) model = AutoModelForImageTextToText.from_pretrained( model_id, dtype=torch.bfloat16, device_map="auto" ) msgs = [{"role": "user", "content": ( "你是一位专业的微信公众号文章作者,擅长撰写科技、AI、新闻类文章。" "请根据给定的主题创作一篇高质量的公众号文章,使用 Markdown 格式输出。\n\n" "主题:OpenAI 发布最新推理模型,性能大幅提升" )}] inputs = tok.apply_chat_template( msgs, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt" ).to(model.device) out = model.generate(**inputs, max_new_tokens=1500, temperature=0.8, top_p=0.95, repetition_penalty=1.1) print(tok.decode(out[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True)) ``` ```bash vllm serve junshengma/Qwythos-9B-WeChat \ --max-model-len 49152 \ --gpu-memory-utilization 0.90 \ --reasoning-parser qwen3 ``` ## 说明 - 模型保留基座推理(thinking)能力;部署时请用 reasoning parser 分离思考与正文 - 权重按 4GB 分片保存,避免 Windows 下超大单文件 mmap 问题 - `lora-adapter/` 目录内附原始 LoRA adapter(111MB)