63 Commits

Author SHA1 Message Date
xming521 7daa270736 Add encrypted chat storage and shared-password workflows
Integrate suffixed encrypted storage across extraction, review, training, and inference. Add shared-password web authentication with two-hour sessions, private request logging, and an isolated profile-building pipeline.

Fix encrypted dataset discovery at training entrypoints and duplicate CSV imports. Add synthetic storage, authentication, and log checks; update documentation and frontend assets.
2026-10-02 23:18:07 +08:00
XiaoZheBrother ab15ebe50f fix: 保留重试配置中显式传入的空列表 2026-09-28 15:34:59 +08:00
pre-commit-ci[bot] ac033289c0 🎈 auto fixes by pre-commit hooks 2026-09-27 09:16:49 +00:00
xming521 3086a82934 feat: Enhance agent distillation configuration and improve memory organization
- Added default values for batch size, max tokens, and timeout in distill_profile.py.
- Refactored required configuration functions to support section-specific error messages.
- Introduced positive and optional positive integer validation functions for configuration.
- Updated resolve_llm_args to utilize new configuration validation functions.
- Modified organize_memories.py to load agent distill configuration and handle missing model gracefully.
- Improved stage 2 output file management in make_dataset_stage2.py, ensuring proper validation against manifest files.
- Added new web assets including HTML, CSS, and JS files for profile review interface.
- Set up default static directory for serving web assets in profile_review.py.
2026-09-27 17:16:37 +08:00
xming eff8d2657d Merge branch 'master' into agent 2026-09-27 16:34:44 +08:00
xming521 e8d4b3f363 Remove deprecated tokenizer configuration and enhance tokenizer file resolution
- Deleted the obsolete tokenizer configuration file `tokenizer_config.json` from the deepseek_v3 tokenizer resources.
- Updated the `resolve_tokenizer_file` function in `token_counter.py` to raise a FileNotFoundError if the tokenizer file is not specified, improving error handling.
- Modified the help message for the `--tokenizer-file` argument to clarify that it can be set via the environment variable `WECLONE_TOKENIZER_FILE`.
2026-09-27 16:26:59 +08:00
xming521 77c440e9df feat: enhance CLI with new commands for profile and event distillation, and update configuration settings 2026-09-27 14:35:50 +08:00
xming 3e27d4bca5 Add description for quantization method in config 2026-09-17 12:39:34 +08:00
xming bf2de49085 Merge branch 'master' into fix/issue-85-support-float16-for-older-gpus 2026-09-17 12:35:22 +08:00
xming521 08a8ba9935 Add agent distillation configuration and enhance LLM client
- Introduced `agent_distill_args` in `settings.template.jsonc` to specify LLM backend for agent distillation.
- Added `AgentDistillArgs` class in `config_models.py` to support new configuration parameters.
- Enhanced `CodexExecClient` in `llm_client.py` to manage request directories and improve command execution handling.
- Created `distill_state.py` for managing state extraction and processing logic related to agent distillation.
2026-06-23 21:43:55 +08:00
xming521 a153110e73 Update tokenizer configuration and enhance token counting utility
- Removed `milvus-lite` and `pymilvus` from dependencies in `pyproject.toml`.
- Added `package-data` configuration for including tokenizer resources in the `weclone` package.
- Introduced new tokenizer configuration files in `weclone/resources/tokenizers/deepseek_v3`.
- Implemented a token counting utility in `token_counter.py` to facilitate text tokenization and counting.
2026-06-20 22:41:08 +08:00
xming521 d9db662c18 Update dependencies, enhance configuration models, and modify .gitignore
- Added `milvus-lite` and `pymilvus` to project dependencies in `pyproject.toml`.
- Introduced `CodexExecArgs` and `EmbeddingServiceArgs` classes in `config_models.py` to support new execution and embedding service configurations.
- Updated `.gitignore` to exclude the newly added `AGENTS.md` file.
2026-06-20 20:50:55 +08:00
xming521 04ba49e067 Update subproject commit and clean up training configuration
- Updated subproject commit to indicate a dirty state.
- Removed the `create_new_adapter` field from `TrainSftArgs` class in `config_models.py` to streamline training configuration.
2026-05-28 12:21:28 +08:00
xming521 49c7246a18 Enhance training configuration with pre-training support
- Added `train_pt` command to continue pre-training using prepared text datasets.
- Introduced `TrainPtArgs` class for pre-training parameters, extending `TrainSftArgs`.
2026-05-28 10:58:22 +08:00
xming 76e341feef Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-05-11 10:49:59 +08:00
xhrxgr b8747edf27 fix: 量化配置未传递给 LLaMA-Factory 导致退化为全精度加载
- 新增 QuantizationArgs 配置类,与 LLaMA-Factory QuantizationArguments 对齐
- 移除 load_in_4bit/load_in_8bit(由 quantization_bit 内部处理)
- 新增 quantization_method 支持多种量化后端(bnb, gptq, awq 等)
- 修复 dict_to_argv 跳过 None 值,避免 HfArgumentParser 报错
- 使用 exclude_none=True 防止空字段传递给 run_exp()
- 训练和推理时自动展平嵌套的量化配置
2026-05-10 18:26:09 +08:00
octo-patch 990e002d10 fix: constrain VllmArgs.dtype to vLLM-supported Literal values
Per review feedback (#212): the previous `Optional[str]` accepted any
string, deferring validation until runtime. Switch to
`Optional[Literal["auto", "float16", "bfloat16", "float32", "half", "bf16"]]`
so Pydantic rejects invalid values up-front (matching vLLM CLI's accepted
`--dtype` choices, including the `half` / `bf16` aliases).

Also expand the field description to document the supported values.
2026-04-19 13:22:34 +08:00
octo-patch 68c602db6e fix: add dtype config option to VllmArgs for older GPU support (fixes #85)
GPUs with compute capability < 8.0 (e.g., Tesla T4, V100) do not support
bfloat16, causing a ValueError when running vllm-based data cleaning.

Add an explicit dtype field to VllmArgs so users can set dtype: float16
in the vllm_args section of settings.jsonc. The existing engine_args.update()
path already propagates this to the vLLM engine.

Also document the option in settings.template.jsonc with a commented-out example.
2026-04-19 11:11:27 +08:00
xming521 ab863cf134 refactor(infer): enhance guided decoding parameter handling
- Updated the guided decoding parameter logic to support dynamic imports, improving compatibility with different configurations.
- Simplified the creation of guided decoding parameters by introducing a helper function.
- Modified the retry mechanism in the OpenAI API call to retry on all exceptions, enhancing robustness in error handling.
2026-03-29 11:25:18 +08:00
xming521 bbe08f0c77 feat(data): enhance chat member relationship handling in QA generation
- Updated the `qa_generator.py` to include a new mechanism for managing chat member relationships, allowing the addition of contextual information about the relationship between users in conversations.
- Refactored the CSV loading function to support loading user relationship data from a `users.json` file, improving the context provided during QA generation.
- Added a new configuration option `add_relation` to the dataset settings, enabling users to toggle this feature.
- Updated the `.gitignore` to exclude additional data directories and cache files for better repository hygiene.
- Bumped version to 0.3.03 in `pyproject.toml` to reflect these changes.
2025-11-01 17:11:26 +08:00
xming521 41167f6d29 fix(dataset): fix #192 standardize dataset naming and cleaning workflow
Refactors dataset management to consistently append '-vl' for vision-language
datasets and dynamically name cleaned datasets (e.g., 'dataset-cleaned').

Enforces vLLM as a strict dependency for LLM-based data cleaning, exiting if
unavailable. Integrates 'enable_thinking' option for LLM cleaning and enables
cleaning by default in relevant test configurations.

Adds torchvision dependency for vision models and streamlines the cleaning call
in training to centralize decision-making.
2025-08-16 22:51:29 +08:00
xming521 a3f39495de feat(core): enable configurable thinking and cleaning
Introduces a new 'enable_thinking' configuration for LLM interactions.
This allows dynamic control of thinking behavior in both offline inference
and the data cleaning process. When thinking is enabled for cleaning,
the maximum number of new tokens is increased to accommodate longer
reasoning outputs.

Also reduces the repetition penalty in the cleaning strategy for
improved response diversity and skips data entries containing images
during the LLM cleaning process to avoid irrelevant processing.
2025-08-11 15:34:27 +08:00
xming521 ff0015a2ba performance : some improve 2025-08-09 21:35:43 +08:00
xming521 09897a8daf fix(dataset): Data processing results have no images. 2025-07-16 15:18:56 +08:00
xming521 785ad1472a remove wechat 2025-07-16 11:21:11 +08:00
xming521 3e7892fc76 feat(infer): add retry mechanism to API calls
Adds retry logic for OpenAI and image description API calls
to improve resilience against transient errors and rate
limiting. Implements exponential backoff with configurable
parameters.
2025-07-10 19:29:23 +08:00
xming521 5f34b4561e feat(dataset): adds option to include time
Adds a configuration option to include the current
datetime in the system prompt of the generated dataset.
This allows models to be aware of the temporal context
of the conversations.
2025-07-09 23:15:51 +08:00
xming521 f0476b05e7 feat(tg): add sticker parameter to include_type
Adds support for processing stickers in Telegram chat data.

- Includes 'sticker' as a valid DataModality.
- Allows the option to include sticker emojis as message content.
2025-07-06 10:38:28 +08:00
xming521 9a26852c55 更新README文档。 2025-07-02 10:53:10 +08:00
xming521 38113a2524 翻译注释日志为英文 2025-07-01 20:00:34 +08:00
xming521 c94f789868 更新README文档,替换测试数据路径为新的评估数据文件。 2025-06-29 20:27:52 +08:00
xming521 2f9cc52955 更新pyproject.toml以添加pip依赖;优化README文档,增强数据预处理说明;调整日志系统配置,支持从配置文件读取日志等级;重构PII检测器,简化代码并添加自定义识别器;更新数据处理逻辑以支持多语言和隐私过滤。 2025-06-27 23:05:45 +08:00
xming521 6df8c5cf2f 使用presidio进行隐私过滤 ; 添加语言支持配置;优化日志系统,hook标准logging到loguru。 2025-06-26 22:54:45 +08:00
xming521 b265edf2fc 更新依赖项,将commentjson替换为pyjson5;优化README文档,修正项目文档链接;添加聊天平台适配表格以支持不同平台的消息类型。 2025-06-26 15:10:09 +08:00
xming521 05c419c34b 优化Telegram解析器;重构配置模型,统一基类为BaseConfigModel,调整多个配置类以支持额外字段的处理策略。 2025-06-25 11:41:59 +08:00
xming521 43b22ce903 调整settings.template.jsonc以添加Telegram参数,更新数据处理逻辑以支持Telegram平台,优化数据模型以处理不同消息类型。 2025-06-23 18:06:55 +08:00
xming521 0ef327b4a5 更新配置文件,优化vllm_infer函数的参数传递逻辑。 2025-06-21 16:13:17 +08:00
pre-commit-ci[bot] 3e0f08c7cb 🎈 auto fixes by pre-commit hooks 2025-06-21 03:21:06 +00:00
xming521 7066730201 优化vllm_infer函数,移除无用的guided_decoding参数,并在length_cdf.py中添加计算文本token长度的功能。 2025-06-21 11:20:23 +08:00
xming521 55fdfe2520 新增vllm_args配置,更新测试模型参数配置,允许自定义测试数据路径。 2025-06-13 18:27:24 +08:00
xming521 e239893884 feat(tests): 添加测试模型参数配置,允许自定义测试集文件 2025-06-13 15:49:02 +08:00
xming521 53fc844403 refactor(config): 移除configV2,整合配置加载逻辑至config.py,更新相关引用 2025-06-13 12:02:27 +08:00
BAIKEMARK 6f465d356a refactor(train_sft): 移除无需显式设置的配置项 2025-06-13 10:23:08 +08:00
BAIKEMARK 9f4a8f60a0 feat(data): 支持图像识别并优化数据清洗流程
- 新增 VisionApiConfig 类用于配置视觉 API
- 在数据处理中集成图像识别功能,支持并行处理
- 重构数据清洗策略,支持在线和离线两种方式- 优化数据清洗流程,提高可扩展性和可维护性
2025-06-12 13:13:57 +08:00
xming521 6e1903ced6 修改数据集名称为chat-sft, 纯文字模型微调数据切换到sharegpt格式。 2025-06-11 15:34:27 +08:00
xming521 6bf9b5a80f 优化include_type和adapter_name_or_path的处理。 2025-06-11 12:41:56 +08:00
pre-commit-ci[bot] d006cc1ae1 🎈 auto fixes by pre-commit hooks 2025-06-11 04:03:36 +00:00
xming521 c77cdee043 修改full_pipe.jsonc和full_pipeV2.jsonc中的数据处理配置,调整train_sft.py和qa_generatorV2.py中的配置加载方式,更新config_models.py和configV2.py以支持新的配置结构。 2025-06-11 11:57:55 +08:00
xming521 247383e4f3 更新版本号至0.2.23,添加依赖omegaconf,增加pydantic驱动的configV2。 2025-06-10 17:31:34 +08:00
pre-commit-ci[bot] cf30258091 🎈 auto fixes by pre-commit hooks 2025-06-09 03:27:38 +00:00