mcpField
M
moai-formats-data

moai-formats-data

github.com/modu-ai数据与数据库1.2k65 次安装今天更新
代码仓库

关于 moai-formats-data

面向性能敏感型应用的数据格式技能,涵盖序列化、验证和格式转换。它提供用于降低 LLM 令牌消耗的 TOON 编码、优化的 JSON/YAML 处理、流式处理及 Schema 工具。

主要功能

  1. 01TOON 编码与解码
  2. 02优化 JSON 和 YAML
  3. 03Schema 与类型验证
  4. 04格式转换
  5. 05大型数据集流式处理
  6. 06缓存与 Schema 演进

适用场景

  1. 01缩减 LLM 输入数据
  2. 02验证结构化 API 数据
  3. 03合并配置文件
  4. 04流式处理大型 JSON 文件

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/modu-ai/moai-adk --skill moai-formats-data

安装后在 Claude Code 中输入/moai-formats-data确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

modules/
INDEX.md
SKILL-MODULARIZATION-TEMPLATE.md
caching-performance.md
data-validation.md
json-optimization.md
toon-encoding.md
references/
examples.md
reference.md

详细介绍

数据格式专家

快速参考

高级数据格式管理——涵盖 TOON 编码、JSON/YAML 优化、序列化模式和数据验证,满足性能关键型应用的数据处理需求。

核心能力:

  • TOON 编码:与 JSON 相比,LLM 通信的令牌用量减少 40-60%
  • JSON/YAML 优化:高效的序列化和解析模式
  • 数据验证:模式验证、类型检查、错误处理
  • 格式转换:在不同数据格式之间无缝转换
  • 性能:优化数据结构和缓存策略
  • 模式管理:动态生成和演进模式

适用场景:

  • 在令牌预算内优化向 LLM 传输的数据
  • 高性能序列化/反序列化
  • 模式验证和数据完整性
  • 格式转换和数据处理
  • 大型数据集处理和优化

快速入门:

创建一个 TOONEncoder 实例,并调用 encode,传入包含 user 和 age 字段的字典来压缩数据。编码后的结果可减少 40-60% 的令牌用量。调用 decode 可还原原始数据结构。

创建一个 JSONOptimizer 实例,并调用 serialize_fast 处理大型数据集,实现超快速 JSON 处理。

创建一个 DataValidator 实例,并调用 create_schema,传入一个定义 name 为必填字符串类型的字典。调用 validate 并传入数据和模式,检查数据是否有效。


实现指南

核心概念

TOON(令牌优化对象表示法):

  • 与二进制兼容的自定义格式,针对 LLM 令牌用量进行了优化
  • 类型标记:# 表示数字,! 表示布尔值,@ 表示时间戳,~ 表示 null
  • 与 JSON 相比,典型数据结构的大小减少 40-60%
  • 无损往返编码/解码

性能优化:

  • 使用 orjson 实现超快速 JSON 处理,速度比标准 json 快 2-5 倍
  • 使用 ijson 对大型数据集进行流式处理
  • 通过 LRU 淘汰和内存管理实现智能缓存
  • 模式压缩和验证优化

数据验证:

  • 通过自定义规则和模式进行类型安全验证
  • 支持模式演进和迁移
  • 跨字段验证和依赖关系检查
  • 针对性能优化的批量验证
基本实现

面向 LLM 优化的 TOON 编码:

创建一个 TOONEncoder 实例。定义数据,其中包含带有 id、name、active 布尔值和 created datetime 的 user 对象,以及 permissions 数组。调用 encode 进行压缩,再调用 decode 进行还原。比较大小以验证压缩效果。

快速 JSON 处理:

创建一个 JSONOptimizer 实例。调用 serialize_fast 获取字节,再调用 deserialize_fast 进行解析。使用 compress_schema,并传入类型对象和属性定义,以优化重复验证。

数据验证:

创建一个 DataValidator 实例。定义 user_schema,其中 username 要求为字符串类型且最小长度为 3,email 要求为电子邮件类型,age 为可选整数且最小值为 13。调用 validate 并传入 user_data 和模式,然后检查结果中的 valid 状态、sanitized_data 或 errors 列表。

常见用例

API 响应优化:

创建一个函数,通过使用 TOONEncoder 编码数据来优化供 LLM 使用的 API 响应。创建对应的函数,将 TOON 数据解码回字典,以解析优化后的响应。

配置管理:

创建一个 YAMLOptimizer 实例,并调用 load_fast,传入配置文件路径。调用 merge_configs,并传入 base_config、env_config 和 user_config,以合并多个文件。

大型数据集处理:

创建一个 StreamProcessor,并将 chunk_size 设为 8192。定义一个用于处理每个条目的 process_item 函数。调用 process_json_stream,并传入文件路径和回调函数,无需将大型 JSON 文件加载到内存中即可进行处理。


高级功能概览

高级 TOON 功能

请参阅 modules/toon-encoding.md,了解自定义类型处理程序(UUID、Decimal)、TOON 流式处理、批量 TOON 编码,以及包含基准测试的性能特征。

高级验证模式

有关跨字段验证、架构演进与迁移、自定义验证规则和批量验证优化,请参阅 modules/data-validation.md。

性能优化

有关智能缓存策略、缓存预热与失效、内存管理和性能监控,请参阅 modules/caching-performance.md。

JSON/YAML 高级功能

有关流式 JSON 处理、内存高效解析、架构压缩和格式转换工具,请参阅 modules/json-optimization.md。


配合使用

  • moai-domain-backend - 后端数据序列化和 API 响应
  • moai-domain-database - 数据库数据格式优化
  • moai-foundation-core - MCP 数据序列化和传输模式
  • moai-workflow-docs - 文档数据格式化
  • moai-foundation-context - 针对 Token 预算的上下文优化

模块参考

核心实现模块:

  • modules/toon-encoding.md - TOON 编码实现
  • modules/json-optimization.md - 高性能 JSON/YAML
  • modules/data-validation.md - 高级验证和架构
  • modules/caching-performance.md - 缓存策略

支持文件:

  • modules/INDEX.md - 模块概览和集成模式
  • reference.md - 扩展参考文档
  • examples.md - 完整的可运行示例

技术栈

核心库:

  • orjson:超快速 JSON 解析和序列化
  • PyYAML:使用基于 C 的加载器处理 YAML
  • ijson:用于大型文件的流式 JSON 解析器
  • python-dateutil:高级日期时间解析
  • regex:高级正则表达式支持

性能工具:

  • lru_cache:内置记忆化
  • pickle:对象序列化
  • hashlib:用于缓存的哈希生成
  • functools:函数装饰器和实用工具

验证库:

  • jsonschema:JSON Schema 验证
  • cerberus:轻量级数据验证
  • marshmallow:对象序列化/反序列化
  • pydantic:使用 Python 类型提示进行数据验证

资源

可运行代码示例请参阅 examples.md。

状态:可用于生产环境 最后更新:2026-01-11 维护者:MoAI-ADK Data Team

评论

支持 Markdown