跳到正文
cccskills
免费在 GitHub 公开

json-file

Guildlines for handling json files

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md2.5 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

JSON Handling Specifications

Goals

  • Safely parse JSON/JSONL without memory overflow.
  • Discover schema structure (keys, nesting depth, data types).
  • Flatten complex nested structures into tabular data when necessary.
  • Handle inconsistent schemas and "dirty" JSON (e.g., trailing commas, mixed types).

Inspection (Always First)

  • Structure Discovery:
    • Determine if the root is a list or a dict.
    • Identify if it's a standard JSON or JSONL (one valid JSON object per line).
  • Schema Sampling:
    • For large files, read the first few objects/lines to infer the schema.
    • Identify top-level keys and their types.
    • Detect nesting depth: If depth > 3, consider it a "deeply nested" structure.
  • Size Check:
    • If the file is large (>50MB), avoid json.load(). Use iterative parsing or streaming.

Processing & Extraction

  • Lazy Loading (Streaming):
    • For massive JSON: Use ijson (Python) or similar streaming parsers to yield specific paths/items.
    • For JSONL: Read line-by-line using a generator to minimize memory footprint.
  • Flattening & Normalization:
    • Use pandas.json_normalize to convert nested structures into flat tables if the goal is analysis.
    • Specify max_level during normalization to prevent "column explosion."
  • Data Filtering:
    • Extract only required sub-trees (keys) early in the process to reduce the memory object size.

Data Quality & Schema Validation

  • Missing Keys: Use .get(key, default) or try-except blocks. Never assume a key exists in all objects.
  • Type Coercion:
    • Validate numeric strings vs. actual numbers.
    • Standardize null, "", and [] consistently.
  • Encoding: Default to UTF-8; check for BOM (utf-8-sig) if parsing fails.
  • Malformed JSON Recovery:
    • For minor syntax errors (e.g., single quotes instead of double), attempt ast.literal_eval or regex-based cleanup only as a fallback.

Best Practices

  • Minimal Reads: Don't load a 50MB JSON just to read one config key; use a streaming approach.
  • Schema Logging: Document the detected structure (e.g., "Root is a list of 500 objects; key 'metadata' is nested").
  • Error Transparency: When a JSON object in a JSONL stream is corrupted, log the line number, skip it, and continue instead of crashing the entire process.
  • Avoid Over-Flattening: Be cautious with deeply nested arrays; flattening them can lead to massive row duplication.
  • Strict Typing: After extraction, explicitly convert types (e.g., pd.to_datetime) to ensure downstream reliability.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Guidelines for handling CSV/Excel files

中文简介正在准备中。当前显示原文说明。

agentscope-ai/agentscope-samples3512026年4月10日 更新

database

免费

Guidelines for handling databases

中文简介正在准备中。当前显示原文说明。

agentscope-ai/agentscope-samples3512026年4月10日 更新

Guidelines for handling image files

中文简介正在准备中。当前显示原文说明。

agentscope-ai/agentscope-samples3512026年4月10日 更新

text-file

免费

Guidelines for handling text files

中文简介正在准备中。当前显示原文说明。

agentscope-ai/agentscope-samples3512026年4月10日 更新

查看 agentscope-ai 的全部技能

报告此技能的问题