Կարճ, չափված պատասխանը. առօրյա չաթի և կառուցվածքային ավտոմատացման համար այս տուփի վրա thinking ռեժիմը ոչինչ չգնեց, որ մեր gate-երը կարողանային նկատել, իսկ արժեցավ մեկից երկու մեծության կարգի սպասում։ Այս workload-ների համար ճիշտ լռելյայն ընտրությունը անջատելն է։ Թվերը և այդ խորհրդի ազնիվ սահմանը՝ ստորև։
Ամեն reasoning-ունակ լոկալ մոդել գալիս է նույն լուռ հարցով. thinking-բլոկը թողնե՞լ միացրած, թե՞ ճնշել։ Վեճը սովորաբար ընթանում է զգացողությունների վրա — «ավելի խելացի է թվում»-ն ընդդեմ «դանդաղ է զգացվում»-ի։ Երկու զգացողություններն էլ չափելի հիմք ունեն, բայց դրանցից միայն մեկը մեր gate-երից ողջ դուրս եկավ։
Որքա՞ն սպասել մինչև առաջին տեսանելի բառը
Reasoning-ն անջատած՝ ասիստենտի առաջին պատասխան-թոքենը հասնում է 210մվunit_replicated-ում — աչքի մի թարթում։ Reasoning-ը միացրած՝ նույն մոդելը նույն տուփի վրա իր առաջին տեսանելի բառն ասելու համար ծախսում է 20191մվunit_replicated։ Ոչ թե ավարտելու համար — սկսելու։
Ուշադրություն մետրիկային. ժամանակ մինչև առաջին պատասխան-թոքենը։ Dashboard-ը, որը դիտում է ժամանակը մինչև ընդհանրապես առաջին թոքենը, երկու ռեժիմն էլ ցույց կտար գրեթե ակնթարթային, որովհետև thinking-հոսքը սկսվում է անմիջապես — պարզապես այն ուղղված չէ օգտվողին։ Այդ չափողական ճեղքը առանձին հաշվետվություն է։
Ի՞նչ արժե սա ավտոմատացման համար
Չաթը ուշացումը թաքցնում է streaming-ի հետևում; pipeline-ը՝ ոչ։ Խիստ JSON խնդիրը end-to-end ավարտվում է 844մվrepeated-ում reasoning-ն անջատած՝ ընդդեմ 14677մվrepeated-ի՝ ստանդարտ thinking-բյուջեով։ Ավտոմատ կանչերի հերթի համար այդ բազմապատիկը գործիքի և bottleneck-ի տարբերությունն է։
Ի՞նչ գնեց thinking-ը
Մեր gate-երի վրա՝ ոչինչ նկատելի։ Խիստ JSON խնդրի հաջողությունը — ելքը պարսվում է, ամեն բանալիով համընկնում է ground truth-ի հետ — reasoning-ն անջատած վերադարձավ 100.0հարցումների %repeated, միացրած՝ 100.0հարցումների %repeated։ Առօրյա ասիստենտի կորպուսը նույն պատկերը ցույց տվեց իր ֆորմատի, լեզվի և կրկնությունների gate-երի միջով։ Նույնական որակ՝ ժամանակով մեկից երկու մեծության կարգ իրարից հեռու։
Որտե՞ղ է ավարտվում այս խորհուրդը
Նախքան վճիռը մեջբերելը կարդացեք շրջանակը։ Մեր կորպուսներն առօրյա հարցումներ են և դետերմինիստական կարճ խնդիրներ՝ փակ պիտակների բազմություններով — workload-ներ, որտեղ պատասխանը ստուգելի է, և մոդելն այն արդեն գիտի։ Իսկապես բարդ խնդիրները — բազմաքայլ մաթեմատիկա, նոր պլանավորում — հենց այն տեղն են, որտեղ reasoning ռեժիմներն արդարացնում են իրենց, և մեր workload-ները դրանք չեն զոնդում։ Ազնիվ պնդումը նեղ է. եթե ձեր բեռը նման է չաթի ու կառուցվածքային ավտոմատացման, thinking-ը հարկ է առանց չափված վերադարձի; եթե ձեր բեռը բարդ reasoning է, այս էջը ձեր ապացույցը չէ։
Կա նաև ձախողման ռեժիմ, որն արժե իմանալ, նախքան thinking-ը կթողնեք միացրած փոքր թոքենային բյուջեով. մոդելը կարող է ամբողջ բյուջեն ծախսել դատողությունների վրա և HTTP 200-ի տակ վերադարձնել դատարկ պատասխան։ Մենք դա չափեցինք սառեցված workload-ի վրա, իսկ հետո հանդիպեցինք դրան կենդանի՝ մեր սեփական տուփի վրա։ Եթե reasoning-ը թողնում եք միացրած, դա հաշվի առեք բյուջեում։
Ինչպե՞ս իրականում անջատել այն
Մեխանիկան տարբեր է ըստ runtime-ի և template-ի. llama.cpp-ն ընդունում է chat-template-ի փոխարկիչ այն մոդելների համար, որոնց template-ները դա պահում են, և reasoning-մոդելների մեծ մասը հարգում է բացահայտ no-think հրահանգը կամ reasoning-բյուջեի կարգավորումը։ Ստուգեք աշխատող սերվերի, ոչ թե փաստաթղթերի վրա — հարցրեք նրան, թե ինչ template և կարգավորումներ է փաստացի կիրառում, հետո ուղարկեք մեկ հարցում և նայեք՝ reasoning-բլոկ հայտնվո՞ւմ է։ Այս մոդելի կողք կողքի մատրիցը համեմատության էջում է։
Վերևի ամեն թիվ ունի մշտական էջ՝ շրջանակով, սահմանափակումներով և հում գործարկումներով. claim-երի ռեեստրը։