Požiadavka: V ére veľkých modelov AI rôzne odvetvia prijímajú AI, aby nám pomohli analyzovať dáta. Niektoré sú volané cez programovacie jazyky. Chceme, aby veľké AI modely generovali JSON-štruktúrované dáta. Ako môžeme overiť, či JSON reťazce výstupné AI modelmi zodpovedajú typom definovaným naším objektovo orientovaným prístupom?
JsonSchema.Net
Niekedy budete musieť overiť, či je objekt JSON správne naformátovaný (s správnym typom kľúča a hodnoty), alebo možno budete chcieť pridať komentáre do dát. Tu prichádza na rad JSON schéma. Podobne ako XML schéma, JSON schéma definuje vzor pre JSON dáta. Validátor JSON schémy môže overiť, či daný objekt JSON spĺňa požiadavky definované JSON schémou a poskytuje aplikácii ďalšie informácie o dátach. Toto hodnotenie môže slúžiť ako prípravný krok pred deserializáciou a je veľmi užitočné.
Zdroj:Prihlásenie na hypertextový odkaz je viditeľné. Dokumentácia:Prihlásenie na hypertextový odkaz je viditeľné.
V súčasnosti je známych šesť verzií špecifikácie JSON Schema:
- Návrh 3
- Návrh 4
- Návrh 6
- Návrh 7
- Draft 2019-09
- Draft 2020-12
Tím JSON Schema odporúča použiť Draft 7 alebo 2020-12. JsonSchema.Net podporovať Draft 6 a novšie.
Základný tutoriál
Definujeme objekt pre osobu a potom vygenerujeme schému. Kód je nasledovný:
Výstup je nasledovný:
{ "typ": [ "objekt", "null" ], "vlastnosti": { "Meno": { "typ": [ "struna", "null" ] }, "Email": { "typ": [ "struna", "null" ] }, "Vek": { "typ": "celé číslo" }, "Adresa": { "typ": [ "array", "null" ], "items": { "typ": [ "objekt", "null" ], "vlastnosti": { "Lokalita": { "typ": [ "struna", "null" ] }, "PSČ": { "typ": "celé číslo" } }, "vyžadované": [ "Lokalita", "PSČ" ] } } }, "vyžadované": [ "Meno", "Email", "Vek", "Adresa" ]
} Použite JsonSchema na overenie, či JSON reťazec zodpovedá štruktúre objektu. Kód je nasledovný:
Ako je uvedené nižšie:
Použitím builder vzoru je kód nasledovný:
(Koniec) |