更新依赖项,将commentjson替换为pyjson5;优化README文档,修正项目文档链接;添加聊天平台适配表格以支持不同平台的消息类型。

This commit is contained in:
xming521
2025-06-26 15:10:09 +08:00
parent e9b92aa189
commit b265edf2fc
6 changed files with 34 additions and 16 deletions
+10 -1
View File
@@ -21,7 +21,7 @@
<a href="https://github.com/xming521/WeClone/blob/master/README_zh.md" target="_blank">简体中文</a>
English</a>
<a href="https://www.weclone.love/" target="_blank"> Project Homepage </a>
<a href="https://www.weclone.love/what-is-weclone.html" target="_blank"> Documentation </a>
<a href="https://docs.weclone.love/what-is-weclone.html" target="_blank"> Documentation </a>
</p>
> [!IMPORTANT]
@@ -37,6 +37,15 @@
> [!IMPORTANT]
> ### WeClone is currently not partnered with any platform and has not issued any cryptocurrency. The only official website is: [weclone.love](https://www.weclone.love). Beware of imitations.
### Chat Platform Support
| Platform | Text | Images | Voice | Video | Animated Emojis | Links (Sharing) | Quote | Forward | Location | Files |
|----------|------|--------|-------|-------|-----------------|-----------------|-------|---------|----------|-------|
| WeChat | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Telegram | ✅ | ✅ | ❌ | ❌ | ⚠️Convert to Emoji | ❌ | ❌ | ✅ | ✅ | ❌ |
> [!IMPORTANT]
> - WeClone is still in rapid iteration phase, current performance does not represent final results.
> - LLM fine-tuning effectiveness largely depends on model size, quantity and quality of chat data. Theoretically, larger models with more data yield better results.
+8 -1
View File
@@ -21,7 +21,7 @@
<p align="center">
<a href="https://www.weclone.love/" target="_blank"> 项目主页 </a>
<a href="https://www.weclone.love/what-is-weclone.html" target="_blank"> 项目文档 </a>
<a href="https://docs.weclone.love/what-is-weclone.html" target="_blank"> 项目文档 </a>
<a href="https://blog.051088.xyz/2025/05/14/WeClone-%E7%94%A8%E5%BE%AE%E4%BF%A1%E8%81%8A%E5%A4%A9%E8%AE%B0%E5%BD%95%E6%89%93%E9%80%A0%E8%87%AA%E5%B7%B1%E7%9A%84AI%E6%95%B0%E5%AD%97%E5%88%86%E8%BA%AB/" target="_blank">Windows部署指南</a>
<a href="https://blog.051088.xyz/posts/weclone-linux-tutorial/" target="_blank"> Linux部署指南【保姆级】</a>
</p>
@@ -39,6 +39,13 @@
> [!IMPORTANT]
> ### WeClone 目前未与任何平台合作,未发行任何数字货币。唯一官方网站:[weclone.love](https://www.weclone.love),谨防仿冒。
### 聊天平台适配
| 平台 | 文字 | 图片 | 语音 | 视频 | 动画表情 | 链接(分享) | 引用 | 转发 | 位置 | 文件 |
|------|------|------|------|------|----------|-----------|------|------|------|------|
| 微信 | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Telegram | ✅ | ✅ | ❌ | ❌ | ⚠️转为Emjoy | ❌ | ❌ | ✅ | ✅ | ❌ |
> [!IMPORTANT]
> - WeClone仍在快速迭代期,当前效果不代表最终效果。
> - 微调LLM效果很大程度取决于模型大小、聊天数据的数量和质量,理论上模型越大,数据越多,效果越好。
+3 -1
View File
@@ -8,7 +8,7 @@ requires-python = ">=3.10,<3.11"
dependencies = [
"pandas",
"commentjson",
"pyjson5",
"omegaconf",
"click",
"tqdm",
@@ -40,6 +40,8 @@ main = [
"transformers==4.52.1",
"accelerate==1.7.0",
"triton==3.3.0; platform_system == 'Linux'",
"presidio_analyzer[transformers]",
"presidio_anonymizer",
]
sparktts = [
"einops>=0.8.1",
+2 -2
View File
@@ -5,7 +5,7 @@ from pathlib import Path
from typing import cast
import click
import commentjson
import pyjson5
from weclone.utils.config import load_config
from weclone.utils.config_models import CliArgs
@@ -168,7 +168,7 @@ def _check_versions():
if SETTINGS_PATH.exists():
try:
with open(SETTINGS_PATH, "r", encoding="utf-8") as f:
settings_data = commentjson.load(f)
settings_data = pyjson5.load(f)
settings_version = settings_data.get("version")
except Exception as e:
logger.error(f"错误:无法读取或解析 {SETTINGS_PATH}: {e}")
+9 -9
View File
@@ -12,16 +12,16 @@ from weclone.utils.i18n import MultiLangList
@dataclass
class ChatMessage:
id: int # 顺序id
MsgSvrID: int
type_name: str
MsgSvrID: str # 消息平台原始id
type_name: str # 消息类型 参考cut_type_data和skip_type_data
is_sender: int # 0: 对方 1: 自己
talker: str
msg: str
src: str
CreateTime: Timestamp
room_name: Optional[str] = None
is_forward: bool = False
modality: Optional[DataModality] = None
talker: str # 消息发送者
msg: str # 消息内容
src: str # 媒体文件路径、额外信息字段
CreateTime: Timestamp # 消息发送时间
room_name: Optional[str] = None # 聊天室名称
is_forward: bool = False # 是否是转发消息
modality: Optional[DataModality] = None # 消息模态 set in qa_generator.py
@dataclass
+2 -2
View File
@@ -2,7 +2,7 @@ import os
import sys
from typing import Any, Dict, cast
import commentjson
import pyjson5
from omegaconf import OmegaConf
from pydantic import BaseModel
@@ -23,7 +23,7 @@ def load_base_config() -> WcConfig:
try:
with open(config_path, "r", encoding="utf-8") as f:
s_config_dict: Dict[str, Any] = commentjson.load(f)
s_config_dict: Dict[str, Any] = pyjson5.load(f)
except FileNotFoundError:
logger.error(f"Configuration file not found: {config_path}")
sys.exit(1)