Agent 训练数据的校验、转换与批处理工具。
Project description
agent-data-tools
项目路径:https://github.com/NairongZheng/agent_data_tools
一个面向 Agent 训练数据的 Python 包,提供三类核心能力:
- 校验
openai messages中间格式 - 转换为
conversations训练格式 - 转换为
swift messages训练格式
这个仓库已经重构为标准的 src 布局,可以直接发布到 PyPI,也可以本地通过 pip install -e . 使用。
项目结构
agent_data_tools/
├── pyproject.toml
├── README.md
├── docs/
│ ├── architecture.md
│ ├── formats.md
│ └── templates.md
├── src/
│ └── agent_data_tools/
│ ├── __init__.py
│ ├── builtin_templates/
│ ├── cli.py
│ ├── converters.py
│ ├── models.py
│ ├── renderers.py
│ ├── schemas.py
│ ├── template_loader.py
│ ├── utils.py
│ ├── validators.py
│ └── py.typed
├── tests/
│ └── test_api.py
└── data_examples/
安装
直接安装:
pip install -e .
安装 pypi 包:
pip install agent-data-tools
快速开始
使用 cli
agent-data-tools validate-openai --data-list datasets/meta.json --log-dir logs
agent-data-tools convert-conversations --data-list datasets/meta.json --output-dir outputs/convs
agent-data-tools convert-swift-messages --data-list datasets/meta.json --output-dir outputs/messages
agent-data-tools convert-conversations --data-list datasets/meta.json --output-dir outputs/convs --template-dir ./my_templates --no-builtin-templates
agent-data-tools list-templates
使用代码
from agent_data_tools import batch_convert_from_meta
meta_path = batch_convert_from_meta(
"datasets/meta.json",
"outputs/conversations",
target="conversations",
max_workers=4,
template_dir="./my_templates",
use_builtin_templates=False,
)
print(meta_path)
公开 API
常用函数:
validate_function_definitionvalidate_openai_messages_recordvalidate_openai_messages_filevalidate_meta_fileconvert_record_to_conversationsconvert_record_to_swift_messagesconvert_jsonl_filebatch_convert_from_metaresolve_template_specsload_builtin_template_specslist_builtin_template_names
配置类:
TemplateSpec:描述模板内容、来源与权重RenderConfig:保留给手动渲染扩展场景
结果对象:
ValidationResultConversionStats
设计原则
- 以
openai messages作为统一中间格式 - 将“校验”“模板加载”“转换”“批处理”拆分为独立模块
- 默认内置模板开箱即用,同时允许用户传入自定义模板目录、模板文件或模板配置 JSON
- conversations 与 swift messages 共用同一套模板渲染入口
文档
- 结构设计:见 docs/architecture.md
- 数据格式说明:见 docs/formats.md
- 模板使用说明:见 docs/templates.md
- 发布与验收:见 docs/release.md
验证
PYTHONPATH=src python -m unittest tests/test_api.py
PYTHONPATH=src python -m agent_data_tools.cli list-templates
PYTHONPATH=src python -m agent_data_tools.cli --help
发布
构建分发包:
python -m pip install build
python -m build
上传前检查:
python -m pip install twine
python -m twine check dist/*
完整发布说明见 docs/release.md。
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
agent_data_tools-0.1.1.tar.gz
(20.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agent_data_tools-0.1.1.tar.gz.
File metadata
- Download URL: agent_data_tools-0.1.1.tar.gz
- Upload date:
- Size: 20.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
90d41284d309c7dcb491c6e535bc87957164acd9166b057a564158e09b3556c6
|
|
| MD5 |
ac74cf2d56183eca931be1bdef7cb060
|
|
| BLAKE2b-256 |
4b9f46f85ceea138a6eb3cb1e324571d747083777ab55a413a6792dc2f77a4a3
|
File details
Details for the file agent_data_tools-0.1.1-py3-none-any.whl.
File metadata
- Download URL: agent_data_tools-0.1.1-py3-none-any.whl
- Upload date:
- Size: 26.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
92a49efa5c3dca8cf46ccb8fa87577dbb4ea9ad4cd6dcd7af0a3cf834e7675ac
|
|
| MD5 |
9cf2e50798accbebc7164db7f8547f44
|
|
| BLAKE2b-256 |
45463f710330e579965bf8c2e116bdda1d6200b6951ef03368d4ae94d73a27ed
|