From 575114661ef9afb95df2a211e1d8498686340e6b Mon Sep 17 00:00:00 2001 From: HsiangNianian Date: Tue, 30 Dec 2025 19:54:08 +0800 Subject: feat: Refactor and enhance TRPG NER model SDK - Removed deprecated `word_conll_to_char_conll.py` utility and integrated its functionality into the new `utils` module. - Introduced a comprehensive GitHub Actions workflow for automated publishing to PyPI and GitHub Releases. - Added `__init__.py` files to establish package structure for `basemodel`, `inference`, `training`, and `utils` modules. - Implemented model downloading functionality in `download_model.py` to fetch pre-trained ONNX models. - Developed `TRPGParser` class for ONNX-based inference, including methods for parsing TRPG logs. - Created training utilities in `training/__init__.py` for NER model training with Hugging Face Transformers. - Enhanced utility functions for CoNLL file parsing and dataset creation. - Added command-line interface for converting CoNLL files to datasets with validation options. --- src/basemodel/__init__.py | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/basemodel/__init__.py (limited to 'src/basemodel/__init__.py') diff --git a/src/basemodel/__init__.py b/src/basemodel/__init__.py new file mode 100644 index 0000000..7287df4 --- /dev/null +++ b/src/basemodel/__init__.py @@ -0,0 +1,36 @@ +""" +base-model - HydroRoll TRPG NER 模型 SDK + +这是一个用于 TRPG(桌上角色扮演游戏)日志命名实体识别的 Python SDK。 + +基本用法: + >>> from basemodel import TRPGParser + >>> parser = TRPGParser() + >>> result = parser.parse("风雨 2024-06-08 21:44:59 剧烈的疼痛...") + >>> print(result) + {'metadata': {'speaker': '风雨', 'timestamp': '2024-06-08 21:44:59'}, 'content': [...]} + +训练功能(需要额外安装): + >>> pip install base-model[train] + >>> from basemodel.training import train_ner_model + >>> train_ner_model(conll_data="./data", output_dir="./model") +""" + +from basemodel.inference import TRPGParser, parse_line, parse_lines + +try: + from importlib.metadata import version + __version__ = version("base-model") +except Exception: + __version__ = "0.1.0.dev" + +__all__ = [ + "__version__", + "TRPGParser", + "parse_line", + "parse_lines", +] + + +def get_version(): + return __version__ -- cgit v1.2.3-70-g09d2