json_repair

一键修复 LLM 输出的坏 JSON,解析不再报错

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 开源模型 🍴 复刻 232 👀 关注 11
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 5136
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT 许可证,完全免费,可自行部署使用。

项目预览

json_repair 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类开源模型
开发团队mangiucugna
定价模式🏷️完全免费
价格说明开源项目,MIT 许可证,完全免费,可自行部署使用。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Python
技术栈/模型cli,json,json-repair,json-schema,llm,llm-output,malformed-json,parser,pydantic,python,streaming,structured-output
GitHub 星标★ 5136
上线时间2023-09-06 00:00:00
代码更新2026-11-10
仓库体积7.3 MB
本站数据更新2026-11-10
维护状态活跃
收录时间2026-08-09
浏览次数5

项目介绍

json_repair 是一个 Python 库,专门用于修复来自大语言模型(LLM)、API、日志或用户输入中的畸形 JSON 字符串。它解决了 AI 生成内容中常见的 JSON 格式错误问题,如缺少引号、多余逗号、截断、转义错误等,使得下游程序无需手动干预即可解析这些不完美的数据。核心能力包括:自动检测并修复多种常见的 JSON 语法错误,提供与标准 json.loads 兼容的接口,支持流式解析(针对不完整 JSON),并允许自定义修复策略。项目轻量、无外部依赖,易于集成到现有 Python 项目中,尤其适合需要处理 LLM 输出或非严格 JSON 数据的场景。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 5136

技术标签

使用教程

难度:入门 约 5 分钟 部署方式:库/依赖 4 步

环境要求

  • 已安装 Python 环境(README 未指明具体版本要求)
  • 已安装 pip 包管理工具
  • 可正常访问 PyPI 以安装 json-repair

安装与启动步骤

  1. 1安装 json-repair

    README 明确指出使用 pip 安装该库,这是集成到项目中的唯一安装方式。

    pip install json-repair
  2. 2运行官方示例验证

    把 README 的 Quick example 写成脚本运行,确认畸形 JSON 能被正确修复并打印出对象。

    cat > test_repair.py <<'EOF'
    import json_repair
    
    bad_json = '{"users":[{"name":"Ada","role":"admin",}],"ok":true'
    decoded_object = json_repair.loads(bad_json)
    print(decoded_object)
    EOF
    python test_repair.py
  3. 3替代 json.loads

    README 说明该库可完全替代 json.loads:直接 import json_repair 后调用 json_repair.loads(json_string) 即可。

  4. 4需要修复后字符串时

    若只想拿到修复后的 JSON 字符串,用 repair_json;要对象则加 return_objects=True,字符串损坏过重会返回空字符串。

关键配置

配置项必填说明示例
PYTHONANYWHERE_API_TOKEN否仅官方文档站同步到 PythonAnywhere 的 Actions 仓库密钥,普通用户无需配置your-pythonanywhere-api-token

如何确认成功

运行脚本后打印出 {'users': [{'name': 'Ada', 'role': 'admin'}], 'ok': True},说明修复与安装均成功。

常见问题

Q:修复后的返回值是空字符串怎么办?

A:README 说明如果字符串损坏得过于严重,repair_json 会返回空字符串,此时需要检查原始输入或改用 loads 取对象。

Q:它能直接替换 json.loads 吗?

A:可以,README 明确写到你完全可以用它替代 json.loads(),写法为 json_repair.loads(json_string)。

Q:想先在线确认能否修复我的 JSON?

A:README 提供了 Live demo(https://mangiucugna.github.io/json_repair/),可先在线验证再决定是否集成。

注意事项

  • README 未给出 Python 最低版本要求,安装前请确认本地 Python 与 pip 可用。
  • 文档站由 GitHub Pages 部署,PythonAnywhere 同步属于维护者流程,普通使用者无需关心。

核心亮点

  • 自动修复多种常见 JSON 错误(缺引号、多余逗号、截断等),无需手动正则
  • 提供 load 和 loads 接口,可直接替换标准 json 模块,迁移成本低
  • 支持流式解析不完整 JSON,适合处理流式 LLM 输出

不足之处

  • 复杂嵌套或严重损坏的 JSON 可能修复失败,需人工兜底
  • 文档/社区待观察

适用场景

  • 解析大语言模型生成的 JSON 响应
  • 处理 API 返回的不规范 JSON 数据
  • 清洗日志或用户输入中的半结构化文本

替代项目

json5、demjson3、json-fix

上一篇:copilot

下一篇:lsp-ai

同类项目推荐

awesome-copilot 开源

抄社区配置,让 Copilot 秒变懂你项目的专属助手

Community-contributed instructions, agents, skills, and configurations to help you m···

★ 41012 2026-09-15
spark-stack 开源

用聊天对话直接生成 Web 应用,快速搭建 MVP。

Spark Stack is an tool for building web applications through an AI-powered chat inte···

★ 278 2026-08-09
momo-code 开源

越用越懂你的 AI 编程搭档,让代码建议更贴合你的习惯

MOMO CODE — RSI *JEV*Pi --AI coding agent that evolves with you

★ 1111 2026-08-09
cymbal 开源

终端里跨语言秒查代码定义与引用

Language-agnostic code navigation CLI powered by tree-sitter

★ 377 2026-09-30
gokin 开源

在终端里用自然语言指挥 AI 搞定编码杂活

A powerful CLI tool that brings AI assistance directly to your terminal. Gokin under···

★ 110 2026-08-09
LittleJS-AI 开源

用大白话聊出 HTML5 游戏,AI 帮你写代码

AI-assisted toolkit for making HTML5 games with LittleJS: the engine, templates, and···

★ 85 2026-08-09
llama.vscode 开源

本地跑 Llama,离线也能智能补全代码

VS Code extension for LLM-assisted code/text completion

★ 1553 2026-08-09
notebook-intelligence 开源

在 JupyterLab 里直接让 AI 写代码、跑分析、调模型

A JupyterLab extension supporting Claude Code, Copilot, Ollama, and OpenAI-compatibl···

★ 355 2026-09-30
builder 开源

说句话就生成网站和应用,开源自部署版 Lovable

✨ AI Builder For Creating Sites and Apps! An open-source alternative to Lovable, Re···

★ 339 2026-10-18