TOON ni nini?

TOON
JSON
Uboreshaji

Sote tumekuwepo. Unaunda kidokezo cha Muundo wa Lugha Kubwa (LLM), na unahitaji kupitisha data iliyopangwa. Unafikia JSON. Ni kiwango cha tasnia, baada ya yote. Lakini unapotazama dirisha la muktadha wako likijaa viunga visivyoisha, funguo zinazorudiwa, na alama za kunukuu karibu na nambari kamili rahisi, unaanza kujiuliza: Je, kuna njia bora zaidi?

YAML inatoa usomaji lakini inakabiliwa na utata. CSV ni mnene lakini haina daraja.

Ingiza TOON.

TOON ni umbizo la kuratibu data ambalo huhisi kama pumzi ya hewa safi kwa wasanidi programu na lugha asilia kwa miundo ya AI. Inaweka pengo kati ya usomaji wa binadamu na ufanisi wa mashine. Leo, hebu tuzame kwa undani sintaksia na mbinu za TOON ili kuelewa ni kwa nini inakuwa kipendwa kwa ubadilishanaji data wa ufanisi wa juu.

Falsafa: Semantiki ya JSON, Urembo wa YAML

Katika msingi wake, TOON inashiriki muundo wa data sawa na JSON. Iwapo unaweza kuiwakilisha katika JSON—za awali (mifuatano, nambari, booleans, null), vitu na safu—unaweza kuiwakilisha katika TOON. Walakini, uwasilishaji ni tofauti kabisa.

TOON hutupa braces. Inatumia ujongezaji kuwakilisha uongozi, kama vile YAML. Kitu rahisi kinaonekana safi na kinachoweza kufikiwa:

Tofauti na YAML, hata hivyo, TOON ni kali kuhusu aina. Hakuna kubahatisha ikiwa hapana inamaanisha sivyo au mfuatano "hapana". Katika TOON, mifuatano huhitaji tu nukuu inapohitajika kabisa—kama vile ikiwa na herufi maalum, inafanana na nambari, au haina chochote. Ukiandika ujumbe: Hello World, utapata kamba. Ukiandika hesabu: 42, utapata nambari.

kitambulisho: 123 
jina: Ada 
hai: kweli 

Nguvu ya Mikusanyiko: Urefu na Majedwali

Ambapo TOON inajitenga yenyewe kutoka kwa pakiti ni utunzaji wake wa safu. Hii ndio "kipengele cha muuaji" cha uboreshaji wa ishara.

Kila safu katika TOON inatangaza kwa uwazi urefu wake katika mabano, kama vipengee[3]. Hii inaweza kuonekana kuwa ya lazima kwa mwanadamu, lakini kwa LLM, ni nguvu kuu. Inaruhusu mtindo kuthibitisha muundo mara moja na kugundua kupunguzwa. Ikiwa mtiririko utakatwa baada ya vitu viwili lakini kichwa kiliahidi tatu, mchanganuzi anajua kuwa kuna hitilafu.

TOON inatoa kwa ufanisi njia tatu za kushughulikia safu, ikichagua moja kwa moja inayofaa zaidi:

  1. Misingi ya Msingi: Kwa orodha rahisi za nambari au mifuatano, TOON huiweka thabiti. tagi[3]: admin,ops,dev
  1. Orodha Sanifu: Kwa aina mchanganyiko, hutumia sintaksia ya orodha iliyounganishwa sawa na YAML.
  1. Vitu vya Jedwali: Hiki ndicho kibadilishaji mchezo.

Iwapo una safu ya vipengee vinavyoshiriki funguo sawa—mchoro unaojulikana sana katika rekodi za hifadhidata—pivots za TOON hadi Muundo wa Jedwali. badala ya kurudia funguo kwa kila safu moja, inatangaza funguo mara moja kwenye kichwa.

Katika mfano ulio hapo juu, users[2]{id,name,role}: inatuambia tuna safu mlalo 2 na inafafanua schema. Data hufuata katika muundo unaofanana na CSV. Hii itaondoa kichwa kikubwa cha tokeni ya kurudia "id":, "jina":, na "jukumu": kwa kila mtumiaji.

watumiaji[2]{id,name,jukumu}: 
1,Msimamizi wa Alice,msimamizi 
2, Bob Smith, mtumiaji 

Vikomo na Ufanisi wa Ishara

Unaweza kugundua matumizi ya koma katika mifano hapo juu. TOON hutumia vikomo vitatu: koma (chaguo-msingi), vichupo, na mirija (|).

Kwa nini jambo hili? Uwekaji alama.

Katika viashiria vingi vya LLM, koma ikifuatiwa na nukuu inaweza kugawanywa katika ishara nyingi. Tabia ya kichupo, hata hivyo, mara nyingi huashiria kwa usafi sana. TOON hukuruhusu kubadilisha vikomo kwenye kiwango cha kichwa cha safu. Ikiwa unatumia kikomo cha kichupo, mara nyingi huhitaji hata kunukuu mifuatano iliyo na nafasi, ikibana zaidi data yako.

Umbizo ni mahiri vya kutosha kushughulikia "migongano." Ikiwa data yako ina kikomo kinachotumika, TOON hunukuu tu thamani hiyo mahususi.

vitu[2]{sku,name,qty}: 
A1, Jina la Wijeti,2 
B2,Jina la Kifaa,1 

Kukunja Muhimu: Kuweka Mviringo laini

Kipengele kingine kinachoangazia mtazamo wa TOON juu ya ufanisi ni Kukunja Muhimu. Vitu vilivyowekwa kiota kwa kina kawaida husababisha "ngazi" ya kujipenyeza ambayo hula nafasi ya mlalo na ishara.

Ikiwa una safu ya kina ambapo vitu vya kati havina ndugu, TOON inaweza kuvikunja katika njia ya nukuu.

Badala ya kuandika:

Unaweza kuandika:

data: 
metadata: 
vitu[2]: a,b 

Kipengele hiki, kinachopatikana tangu spec v1.5, hupunguza kwa kiasi kikubwa hesabu ya laini na tokeni za ujongezaji. Muhimu, hii inaweza kutenduliwa kikamilifu. Unaposimbua data na upanuzi wa njia umewezeshwa, inaunda upya safu ya kitu kirefu kikamilifu.

data.metadata.items[2]: a,b 

Ukali na Usalama

Licha ya mwonekano wake mfupi, TOON haiko huru na data. Inafuata seti kali ya sheria za kunukuu na kutoroka.

Kamba kwa ujumla hukaa bila kunukuliwa, ambayo ni nzuri kwa kusomeka. Hata hivyo, TOON hutekeleza kunukuu kwa matukio makali ili kuhakikisha uadilifu wa data. Ikiwa mfuatano unaonekana kama nambari (k.m., "05" au "1e-6"), hunukuliwa ili kuuzuia kuchanganuliwa kama nambari. Ikiwa mfuatano ni neno lililohifadhiwa kama kweli au null, hunukuliwa.

Zaidi ya hayo, TOON hurekebisha nambari. Inatoa fomu za desimali za kisheria-hakuna nukuu ya kisayansi au sufu inayofuata katika matokeo-kuhakikisha uthabiti. Hata inashughulikia BigInt kwa usalama; nambari ikizidi safu salama ya nambari kamili, hupangwa kama mfuatano ili kuzuia upotevu wa usahihi wakati wa usafiri.

Mizizi Fomu

Ingawa wengi wetu tunafanya kazi na Root Objects, TOON inaweza kunyumbulika. Hati si lazima ianze na jozi ya thamani-msingi. Inaauni Mizizi ya Arrays (kuanzia mara moja na [N]:) au hata Root Primitive moja. Usawa huu na JSON unamaanisha kuwa unaweza kubadilisha TOON katika takriban bomba lolote ambapo JSON inatumika kwa sasa, mradi tu unayo kichanganuzi upande mwingine.

Mawazo ya Mwisho

TOON sio tu "muundo mwingine." Ni zana maalum kwa enzi ambapo data hutumiwa na miundo ya uwezekano mara nyingi kama ilivyo kwa msimbo wa kubainisha. Kwa kuchanganya muundo thabiti wa data wa JSON na msongamano wa CSV na usomaji wa YAML, hutatua tatizo mahususi la uboreshaji wa muktadha wa dirisha bila kuacha usalama wa aina.

Ikiwa wewe ni mawakala wa ujenzi, mifano ya kurekebisha vizuri, au umechoka tu kuvinjari kupitia viunga vya kufunga visivyo na mwisho, ni wakati wa kutoa TOON kuangalia.