Skip to main content
CheckTown
Інструменти

Відновлення JSON: виправте зламаний JSON з API та LLM

Опубліковано 5 хв читання
У цій статті

Поширені помилки JSON

JSON має суворі правила синтаксису, які регулярно спотикають розробників. Одна неправильно розміщена кома, ключ без лапок або кінцева кома зробить весь документ невалідним. Стандартні парсери JSON повністю відхиляють ці помилки, видаючи лише повідомлення про помилку.

Найчастіші помилки JSON включають кінцеві коми після останнього елемента, одинарні лапки замість подвійних, ключі без лапок, вбудовані коментарі (// або /* */), відсутні закриваючі дужки та неекрановані спеціальні символи. Інструменти відновлення JSON виправляють все це автоматично.

Як працює відновлення JSON

Інструмент відновлення JSON використовує підхід на основі парсера, а не простий пошук-заміну регулярними виразами. Він читає вхідні дані символ за символом, підтримуючи автомат станів, який відстежує поточну позицію в структурі JSON.

  • Корекція на основі парсера — двигун відновлення підтримує стан аналізу (всередині об'єкта, масиву, рядка) і використовує цей контекст для визначення правильного виправлення
  • Балансування дужок — відстежує відкриваючі та закриваючі дужки і автоматично додає відсутні закриваючі в кінці документа або там, де структура їх передбачає
  • Нормалізація лапок — конвертує одинарні лапки в подвійні, додає відсутні лапки навколо ключів та правильно екранує спеціальні символи

Спробуйте безкоштовно — реєстрація не потрібна

Відновити JSON →

Вивід LLM та обрізаний JSON

Великі мовні моделі часто створюють невалідний JSON. Вони можуть обрізати вивід посеред об'єкта, забути закриваючі дужки або додати коментарі. Відновлення JSON справляється з усіма цими специфічними для LLM проблемами.

  • Обрізаний вивід — коли LLM припиняє генерацію посеред об'єкта, інструмент закриває всі відкриті структури у правильному порядку для створення валідного JSON
  • Блоки коду Markdown — LLM часто обгортають JSON у блоки ```json...```. Інструмент видаляє ці огорожі перед обробкою
  • Змішаний вміст — LLM іноді додають текст або коментарі навколо JSON. Інструмент витягує лише частину JSON та виправляє синтаксичні проблеми

Часті запитання

Чи може відновлення JSON спричинити деструктивні зміни?

Відновлення JSON консервативне за задумом — воно виправляє лише синтаксичні помилки, ніколи не змінюючи значення даних. Фактичні дані залишаються недоторканими. Відновлений вивід семантично ідентичний тому, що мав на увазі автор.

Як відновлення обробляє проблеми кодування?

JSON вимагає кодування UTF-8. Інструмент обробляє поширені проблеми кодування, такі як BOM на початку файлу, невалідні escape-послідовності та неекрановані керуючі символи в рядках.

Чи можна відновити глибоко вкладений JSON?

Так. Підхід на основі парсера обробляє довільно глибоке вкладення, оскільки підтримує стек відкритих структур. Незалежно від того, чи має вхідний документ 3 чи 30 рівнів, двигун відстежує кожен рівень і правильно закриває залишені відкритими структури.

Пов'язані інструменти