Päätösmallit Transformersiin: vastausvaihtoehdot pisteytetään tuottamatta tekstiä
Hugging Face tavoittelee päätösmalleille yhteistä rajapintaa: mallit antavat todennäköisyydet ennalta määritellyille vastauksille tuottamatta tekstiä. Tuki on Transformersissa ja llama.cpp:ssä, ja Hubissa malleilla on oma tunniste.
Hugging Face kertoi päätösmalleista (decision models) blogissaan 10. marraskuuta. Päätösmalli saa syötteeksi tilanteen kuvauksen, esimerkiksi asiakkaan viestin, ja nimettyjä kysymyksiä vastausvaihtoehtoineen. Malli ei kirjoita vastausta token kerrallaan vaan antaa jokaiselle sallitulle vaihtoehdolle todennäköisyyden.
Kolme kysymystyyppiä
Kysymyksiä on kolmea tyyppiä. Choice-tyypissä malli valitsee yhden vaihtoehdon ja palauttaa koko todennäköisyysjakauman. Score-tyypissä malli arvioi järjestysasteikolla ja palauttaa tasojen järjestysnumeron odotusarvon. Noul-tyypissä malli palauttaa todennäköisyyden sille, että kyllä–ei-kysymyksen vastaus on kyllä. Kynnysarvosta päättää sovellus.
Blogin esimerkissä autotrust/GEV-26B-Decide-malli ohjasi kaksoisveloituksen palautuspyynnön laskutustiimille todennäköisyydellä 0,998. Malli arvioi myös, että asiakas pyytää palautusta, todennäköisyydellä 0,995. Kiireellisyys asteikolla matala–keskitaso–korkea (0–2) sai arvon 1,71. Hugging Facen mukaan luku ei silti ole keskitason ja korkean välille valittu taso vaan mallin jakauman odotusarvo. Choice- ja score-kysymyksistä malli palauttaa lisäksi varmuusluvun. Se on 0, kun kaikki vaihtoehdot ovat yhtä todennäköisiä, ja 1, kun koko todennäköisyys on yhdellä vaihtoehdolla.
Hugging Face perustelee mallityyppiä sillä, ettei suuri kielimalli välttämättä noudata pyydettyä JSON-rakennetta. Rajoitettu dekoodaus pakottaa rakenteen sallimalla vain siihen sopivat tokenit, mutta se lisää työtä. Sitä tarjoavat esimerkiksi Outlines ja XGrammar.
Hugging Face ei väitä päätösmallien keksineen käyttöhetkellä määriteltäviä luokkia eikä todennäköisyyksiin perustuvaa luokittelua. Jo nollaoppivassa luokittelussa (zero-shot) vaihtoehdot voi määrittää vasta käyttöhetkellä. Hugging Facen mukaan päätösmallit eroavat siinä, että niillä on yhtenäinen rajapinta ja samaan pyyntöön mahtuu erityyppisiä kysymyksiä. Blogi mainitsee kalibroidut päätökset vain mahdollisuutena, jonka erikoistunut koulutus voi tuoda. Kalibroidun mallin todennäköisyydet vastaavat todellisia osumaosuuksia. Blogia referoiva NewMediaFactor kuitenkin kuvaa todennäköisyydet kalibroiduiksi.
Yhteinen rajapinta eri toteutuksille
Hugging Face tavoittelee yhteistä rajapintaa mutta ei pakota malleille yhteistä toteutusta. Transformers-kirjastossa on nyt DecisionPipeline-, AutoModelForDecision- ja DecisionConfig-luokat sekä palvelinrajapinta /v1/systemone. GEV-26B-Decide-mallin esimerkkivastauksessa tuotettuja tokeneita oli nolla. Myös llama.cpp tukee samaa rajapintaa.
Rajapinta toimii myös yhteensopivilla tavallisilla kielimalleilla. Transformers rakentaa kehotteet, laskee vastausvaihtoehtojen pisteet eränä ajettavalla läpikululla ja muuntaa pisteet todennäköisyyksiksi. Hugging Facen mukaan päätösmallien toimintatapaa voi siis kokeilla kouluttamatta uutta mallia.
Hubissa päätösmalleilla on oma tunniste. Mallit voivat perustua esimerkiksi ModernBERT-kooderiin tai suuriin generatiivisiin kielimalleihin. Hugging Face kuvaa alaa nuoreksi ja nopeasti muuttuvaksi.
Päätösmalleja voi hienosäätää Transformersin Trainer-rajapinnalla. TRL-kirjaston tuki odottaa vielä avoimessa pull requestissa. Unslothin ohjeella generatiivisen kielimallin voi muuttaa päätösmalliksi LoRA-hienosäädöllä, esimerkiksi Qwenin.
Käyttöönotto vaatii päätösmalleja tukevan Transformers-version, ja paikallinen palvelin tarvitsee kirjaston palvelinriippuvuudet. Ohjeet ja koodiesimerkit ovat Hugging Facen blogissa.
Lue lisää: Miten agentti toimii · Agenttikartta