Ассистент жауабындағы дереккөз сілтемелері: оларды қалай құру керек
Ассистент жауабындағы дереккөз сілтемелері қорытындыларды тексеруге көмектеседі. Құжаттағы кездейсоқ үзінділерге емес, дәл құжат бойынша цитаталарды қалай жинау керегін қарастырамыз.

Кездейсоқ цитаталардың мәселесі неде
Ассистент «құжат деректері бойынша» деп жазып, қасына жауаппен тікелей байланысы жоқ мәтін үзіндісін қосса, бұл дәлел сияқты көрінбейді. Пайдаланушы сөздердің сәйкес келгенін көреді, бірақ жауаптың дәл осы жерден неге шығатынын түсінбейді. Сондықтан кездейсоқ таңдалған цитаталар тез арада мәнін жоғалтады.
Құжат әдетте бір сөйлемнен әлдеқайда күрделі болады. Бір бөлімде жалпы ереже жазылады, екіншісінде — ерекшелік, қосымшада — түсіндіруді өзгертетін мерзім беріледі. Егер модель ұқсас сөздерге қарап үзінді алса, ал мағынасына емес, жауап әдемі көрінуі мүмкін, бірақ шын мәнінде қате болады.
Мұны келісімшарттарда әсіресе жақсы байқауға болады. Мәтінде: төлем тауар қабылданғаннан кейін 10 күн ішінде жүргізіледі, — делінуі мүмкін. Ал ассистент 10 күн шот-фактура шығарылғаннан кейін деген ұқсас сөйлемді тауып алып, мерзім бірдей деп қорытынды жасайды. Айырмашылығы мардымсыз сияқты көрінеді, бірақ бухгалтер, заңгер немесе сатып алу маманы үшін бұл — мүлде басқа жауап.
Тіпті жалпы қорытынды дұрыс болса да, сенімділік әрдайым сақталмайды. Егер пайдаланушы цитатаны ашып, жауаптың нақты тұжырымына тікелей тірек көрмесе, ол қалғанының бәріне де күмәндана бастайды. Модель дұрыс шамалауы мүмкін, бірақ мұны пайдаланушы білмейді. Оған сәтті нәтиже емес, құжаттан қорытындыға дейін тексеруге болатын жол керек.
Әлсіз цитатаны әдетте қарапайым белгілермен тануға болады. Үзінді ұқсас тақырыпты айтады, бірақ ассистент жасаған нақты тұжырымды емес. Цитата қосымша шартсыз, ерекшеліксіз немесе датасыз жұлынып алынған. Жауапта нақты қорытынды бар, ал дереккөзде тек жанама ишара ғана тұр. Немесе ассистент бірден бірнеше сниппет көрсетіп, оларды тезистермен мүлде байланыстырмайды.
Ұзын үзінділер тізімі де көп көмектесе бермейді. Пайдаланушы бес мәтін бөлігін еш түсіндірмесіз алса, логиканы өзі құрастырып, қабаттасуларды тексеріп, қай абзац нені дәлелдейтінін шешуі керек. Бұл — құжатты қолмен тексеру, тек ыңғайсыз форматта.
Дәйексөзбен RAG-та қате көбіне іздеуде емес, соңғы қадамда жатады. Жүйе жақын нәрсені тауып алады да, кейін жауапты табылған мәтінге қарағанда кеңірек құрастырады. Егер бір ғана сөйлемді тексеру үшін адамға бүкіл құжатты қайта оқуға тура келсе, цитаталау жұмыс істемегені.
Құжатқа сүйенудің дұрыс түрі қандай
Құжатқа дұрыс сүйену өте қарапайым: ассистент бір тезис айтады, жанында қысқа цитатаны көрсетеді және мәтіндегі нақты орнын бірден белгілейді. Пайдаланушы жауап қайдан шыққанын болжауға тиіс емес. Ол бірнеше секунд ішінде керек бетті ашып, абзацты тауып, мағынасын тексеруі керек.
Жақсы сілтеме бүкіл жауапты түгел емес, әр маңызды тезисті жеке-жеке растайды. Егер ассистент төлем мерзімі — 30 күнтізбелік күн деп жазса, сілтеме дәл төлем мерзімі туралы тармаққа апаруы керек, ал «төлем» сөзі кездесетін кез келген бетке емес.
Жұмыс істейтін схема әдетте былай көрінеді: бір тезис — бір дереккөз, тезистің жанында — бір-екі жолдық қысқа үзінді, ал сілтемеде не жазуда — бет, бөлім, тармақ немесе кесте жолы. Егер жауапта екі түрлі ой болса, олардың да екі түрлі тірегі болуы керек.
Бұл әсіресе кестелер үшін маңызды. Егер ассистент лимит, баға немесе күн туралы жауап берсе, пайдаланушыға жай ғана бет нөмірі емес, жол немесе баған атауы көрінуі керек. Әйтпесе құжаттан іздеу қолмен жасалатын квестке айналып, жауапқа деген сенім төмендейді.
Нашар нұсқа былай көрінеді: жауаптың төменгі жағында әртүрлі беттерден алынған үш ұзын үзінді жатады, бірақ қайсысы нені дәлелдейтіні түсініксіз. Формалды түрде цитаталар бар, бірақ пайдасы жоқ. Адам бәрібір құжатты қайта оқиды, өйткені тезис пен дереккөздің байланысын көрмейді.
Жақсы нұсқа қысқа әрі адал болады. Мысалы: «Кешіктіргені үшін айыппұл күніне 0,1% құрайды». Және бірден төменде: «8.4-тармақ, 12-бет: 'Жеткізуші мерзімі өткен міндеттеме сомасының 0,1% мөлшерінде әр кешіккен күн үшін өсімпұл төлейді'». Мұнда әрі санды, әрі контексті оңай тексеруге болады.
LLM жауаптарын тексеру үшін бұл ойлағаннан да маңызды. Күшті модель жалпы мағынаны дұрыс айтып, бірақ сан, мерзім немесе ұсақ әріппен жазылған ерекшелікте қателесуі мүмкін. Тезистің жанындағы қысқа цитата мұндай қателерді тез ұстап қалады.
Дәйексөзбен RAG жүйесі табылған үзінділердің бәрін жауапқа тізе бермегенде жақсы жұмыс істейді. Оған тәртіп керек: алдымен тезис, содан кейін нақты тірек. Егер тірек бір түсінікті сілтеме мен қысқа үзіндіге сыймаса, демек жауап әлі жиналмаған.
Цитата үшін қайсыны дереккөз деп санау керек
Цитатаға арналған дереккөз — бүкіл құжат та емес, іздеу алғаш алып шыққан кездейсоқ мәтін де емес. Дереккөз адамға бөлек көрсетуге болатын, ол мағынасын болжамсыз түсінетін үзінді болуы керек. Егер ассистент шекарасы жоқ жарты бетке сілтеме жасаса, пайдаланушы тірек емес, шу көреді.
Бөлек дереккөз деп абзацты, кесте жолын, сносканы, қосымшаны, анықтама блогын, келісімшарт тармағын санаған дұрыс. Бет те керек, бірақ тек мекенжай ретінде, мағыналық бірлік ретінде емес. Бір бетте көбіне бірнеше ой қатар тұрады, ал бүкіл бетке сілтеме цитатаны көмескі етеді.
Әр үзіндінің тұрақты идентификаторы болуы керек. Индекстегі уақытша нөмір емес және іздеу нәтижесіндегі орын емес, қайта индекстелгеннен кейін де өзгермейтін түсінікті ID болғаны жөн. Мысалы: doc_17:p_12:sec_4.3:para_2 немесе contract_A:appendix_1:table_3:row_5. Сонда жауап, лог және қолмен тексеру бір ғана бөлікке сүйенеді.
Қарапайым ереже де бар: мағыналық жұпты бөлмеңіз. Егер бір жерде анықтама берілсе, ал келесі сөйлемде шектеу келсе, оларды бірге сақтаңыз. Егер кестеде мөлшерлеме болса, ал кестенің астында ерекшелік жазылса, осы бөліктерді анық байланыстырыңыз. Әйтпесе модель ыңғайлы санды алады, ескертпені өткізіп жібереді де, сенімді, бірақ қате жауап береді.
Әдетте әр дереккөз үшін үзіндінің өзін, бет не парақ нөмірін, бөлім атауын және алдындағы-кейінгі контекстті сақтау жеткілікті. Соңғысы көбіне ойлағаннан маңыздырақ. Ол есімдіктің нені білдіретінін, қандай шартты шектейтінін және ойдың келесі абзацта жалғасып-жалғаспағанын түсінуге көмектеседі. Бұл әсіресе келісімшарттарда, регламенттерде және кестелі PDF-файлдарда байқалады.
Егер құжат ұзақ болса, дереккөздің екі қабатын жасаған пайдалы. Бірінші қабат — дәл цитата үшін кішкентай үзінді. Екінші қабат — ата-аналық блок, мысалы келісімшарттың толық тармағы немесе бүкіл кесте. Сонда ассистент қысқа цитатаны көрсете алады, бірақ өзін кеңірек үзінді арқылы тексере алады. Мұндай тәсіл цитата формалды түрде бар, ал мәні жоқ жауаптарды айтарлықтай азайтады.
Құжат бойынша іздеуді қалай баптау керек
Егер сізге дереккөз сілтемелері адал көрінсін десеңіз, бастау жауап генерациясынан емес, іздеуден болуы керек. Нашар іздеу көбіне нашар цитата береді: модель ұқсас сөздері бар кездейсоқ абзацты тауып, сонымен шектелгендей болады.
Құжатты тұтас мәтін ретінде емес, құрылым ретінде индекстеу жақсырақ. Тақырыптарды, тармақшаларды және негізгі мәтінді бөлек сақтаған жөн. Сонда іздеу сөздерді ғана емес, ойдың құжаттағы орнын да түсінеді. «Тараптардың жауапкершілігі» бөліміндегі сөйлем мен дәл сондай сөйлем қосымшадағы сөйлем — бір нәрсе емес.
Үзінділер мағынаны жарты сөзден бөлмеуі керек. Егер келісімшарт тармағы келесі блокта жалғасса, жүйе оны да қоса алуы тиіс. Әйтпесе ассистент ереженің бірінші жартысын ғана цитаталайды да, ерекшелік сыртта қалады. Тәжірибеде бұл оңай шешіледі: табылған үзіндіге қоса, егер олар бір бөлімде және ортақ нөмірленуде болса, үстіңгі немесе астыңғы көрші бөлікті қосады.
Үзіндімен бірге нені сақтау керек
Метадерексіз іздеу ұқсас бөліктерді тез шатастыра бастайды. Әр блок үшін құжат идентификаторын, оның нұсқасын, тақырыптар бойынша жолын және бет нөмірін не жолдар ауқымын сақтау пайдалы.
Бұл өрістер ескі мен жаңаны араластырмауға көмектеседі. Егер келісімшарт кеше жаңартылса, ассистент таныс көрінгені үшін өткен редакциядан алынған цитатаны алмауы керек. Нұсқаларды қатаң ажыратқан дұрыс: бөлек version_id, бөлек күн, «өзекті» немесе «архив» деген нақты мәртебе.
Кестелер — бөлек мәселе. Оларды бағандар арасындағы байланыссыз жай ғана жолдар жиынына айналдырмаңыз. Баға, мерзім және төлем шарты мәтіннің әр жерінде жатса, модель деректерді ретсіз жабыстыра бастайды. Кестені кесте күйінде сақтаңыз: атауымен, бағандарымен, жолдарымен және бөлімге байланысымен. Сонда ассистент кездейсоқ үзіндіге емес, нақты жолға сілтеме жасай алады.
Дәйексөзбен RAG үшін көбіне аралас іздеу жақсы жұмыс істейді. Алдымен сөздер бойынша, кейін мағынасы бойынша іздеп, соңында нәтижені тақырып, нұсқа және көрші блоктарды ескере отырып ранжирлейді. Бұл архитектураның ең әсерлі бөлігі емес, бірақ дәл осы тәсіл минут ішінде тексеруге болатын цитаталарды береді.
Жауапты қадам-қадаммен қалай жинау керек
Қате көбіне ерте басталады: жүйе сұрақты толық күйінде алып, бірнеше ұқсас үзіндіні тауып, модельден «құжат бойынша жауап беруді» сұрайды. Осындайда бір сөйлемі дұрыс тармақтан алынған, ал келесісі ойдан шығарылған жауаптар пайда болады. Егер сізге сенімді дереккөз сілтемелері керек болса, жауапты түгел емес, бөлек тұжырымдар бойынша жинаңыз.
Мына сұрақты алайық: «Жеткізуші қашан бағаны көтере алады және мерзімді бұзғаны үшін қандай айыппұл бар?» Мұнда екі түрлі тұжырым бар. Біріншісі бағаны өзгерту шарттарына қатысты, екіншісі — кешігу санкцияларына. Екеуін бір сұраумен іздеу ыңғайсыз: жақсы іздеу әдетте бір үзіндіні екіншісінен күштірек шығарады.
Алдымен сұрақты қысқа, тексеруге болатын тезистерге бөліңіз. «Келісімшарт шарттарын түсіндір» демей, «бағаны өзгертуге бола ма», «кім хабарлауы керек», «айыппұл мөлшері қандай», «кешігу қандай мерзім бойынша есептеледі» деп бөліңіз.
Содан кейін әр тезиске өз үзіндісін табыңыз. Егер тезис айыппұл туралы болса, іздеуге төлем не қабылдау туралы абзацтарды тартқызбаңыз. Төрт нақты іздеу әдетте бір кең іздеуден жақсырақ.
Одан кейін мағынасы бірнеше абзацқа шашылса, көрші бөліктерді біріктіріңіз. Көбіне ереже бір тармақта, ал ерекшелік не хабарлау мерзімі келесі тармақта жатады. Егер модельге бір ғана үзінді берілсе, ол жетіспейтін бөлікті өзі толтырады.
Генерация алдында әр тезиске шағын тірек пакетін жинаңыз: цитата, тармақ нөмірі, бет, көрші контекст. Содан кейін модельге тек осы пакетте бар нәрсені ғана жазуға рұқсат етіңіз. Егер тірек жоқ болса, модель құжат жауап бермейтінін ашық айтуы керек.
Сілтемені тұжырымнан немесе қысқа блоктан кейін бірден қойған дұрыс, бүкіл жауаптың соңында емес. Пайдаланушы әр ойдың немен негізделгенін бірден көруі керек: «Жеткізуші бағаны тек тараптардың жазбаша келісімімен өзгерте алады [4.2-тармақ, 7-бет]».
Мұндай тәртіп әдемі, бірақ жалған жауаптардың санын айтарлықтай азайтады. Дәйексөзбен RAG үшін бұл дерлік міндетті ереже: алдымен тезис, кейін тірек, содан соң тұжырым. Егер модельге еркін жазуға мүмкіндік берілсе, ол құжатты тез арада жорамалға толы қайта баяндауға айналдырады.
Тәжірибеде қарапайым тыйым да көмектеседі: табылған үзіндісіз бір тезис — жауапта бірден бос орын болсын. Бұл қатаңдау көрінеді, бірақ пайдаланушы жүйенің шекарасын түсінеді және цитатамен аз дауласады.
Жеткізу келісімшарты мысалында
Сатып алу менеджері ассистенттен қарапайым сұрақ қояды: «Жеткізуді кешіктіргені үшін айыппұл бар ма?» Осындай кейсте цитатаның не үшін керектігі анық көрінеді. Егер іздеу әлсіз болса, жүйе екі кездейсоқ үзіндіні алып келеді: бірі тараптардың жауапкершілігі туралы, екіншісі форс-мажор туралы. Формалды түрде цитаталар бар, бірақ айқындық жоқ.
Дұрыс жауап басқаша құралады. Жүйе айыппұл туралы негізгі тармақты және ерекшеліктері бар көрші тармақты табады. Мысалы, келісімшарттың 8.4-тармағы 12-бетте: «Жеткізуші мерзімі өткенде жеткізілмеген тауар құнының 0,1% мөлшерінде әр кешіккен күн үшін өсімпұл төлейді, бірақ партияның жалпы құнының 10%-ынан аспайды». Ал 13-беттегі 8.6-тармақ айыппұл қандай жағдайда салынбайтынын нақтылайды: егер сатып алушы қабылдауды өзі кешіктірсе, міндетті деректерді бермесе немесе форс-мажор болса.
Сонда ассистент мәні бойынша жауап береді: айыппұл бар, мөлшерлемесі — күніне 0,1%, шегі — партия құнының 10%-ынан аспайды, ал ерекшеліктер — сатып алушы тарапынан кешігу және форс-мажор. Дереккөздер бөлек көрсетіледі: 8.4-тармақ, 12-бет және 8.6-тармақ, 13-бет.
Мұндай жауапты бірнеше секундта тексеруге болады. Пайдаланушы соманы, қолданылу шартын және шегін көреді, ал жай ғана «жауапкершілік келісімшартта қарастырылған» деген сөйлемді емес.
Тағы бір маңызды жайт бар. Нұқу арқылы жүйе бүкіл PDF-ті емес, дәл керек беттегі керек абзацты ашуы тиіс. Егер адам 8.4-тармаққа сілтемені басса, ол бірден 12-бетке өтеді, онда 0,1% мөлшерлеме белгіленген жол ерекшеленіп тұрады. Ал егер ерекшелікке өтсе, жүйе оны 13-беттегі абзацқа әкеледі. Қағаз жүзінде бұл ұсақ нәрсе сияқты. Іс жүзінде пайдаланушы жауапқа сенетін-сенбейтінін дәл осындай бөлшектер шешеді.
Бұл үшін тек чанк мәтінін сақтау аз. Жүйе үзіндінің координаталарын сақтауы керек: бетті, тармақ нөмірін, абзац шекарасын және көрші сөйлемдерді. Сонда цитата құжатқа сүйенгендей көрінеді. Адам ассистенттің жауапты кездейсоқ үзінділерден жинамағанын, келісімшарттағы керекті орынды тапқанын көреді.
Жүйе көбіне қай жерде қателеседі
Жиі қате — сілтеменің ереженің өзіне емес, бөлім тақырыбына берілуі. Пайдаланушы төлем мерзімі туралы сұрайды, ал жауапта «Есеп айырысу тәртібі» сияқты жолдан алынған цитата тұрады. Бұл құжатқа сүйену емес. Нақты мерзім, шарт, ерекшелік немесе есептеу формуласы бар үзінді керек.
Көп мәселе бет пен чанк шекарасында туындайды. Іздеу ұқсас бөлікті көрші беттен табады, өйткені онда бірдей сөздер қайталанады: «жеткізу», «акт», «мерзім», «тараптар». Нәтижесінде жауап сенімді көрінеді, бірақ цитата керек ереже жазылған орынға емес, соған жақын жерге апарады. Бұл жиі бірнеше бөлімде ұқсас тұжырымдар қатар келетін келісімшарттарда болады.
Бір сілтеме бірден бірнеше қорытындыны жабатын схема да нашар жұмыс істейді. Мысалы, ассистент тауарды 10 күн ішінде төлеу керек, мерзім бұзылса 0,1% айыппұл салынады, ал келісімшартты тек ескерткеннен кейін ғана бұзуға болады деп жазады. Егер жанында бір ортақ цитата тұрса, мұндай жауапты тексеру қиын. Пайдаланушы қай тұжырым қай жерден алынғанын түсінбейді. Цитатаны бір тұжырымға немесе бір абзацтағы екі көрші сөйлемге байлаған дұрыс.
Құжат нұсқалары кезінде қате одан да қауіпті. Индекске черновик, қосымшаның ескі редакциясы немесе соңғы түзетусіз келісімшарт түсіп кетуі мүмкін. Модель сенімді жауап береді, өйткені мәтінді шынымен тапты, бірақ бұл енді жауап беру керек құжат емес. Егер қоймада договор_final, договор_final2 және договор_signed жатса, метадерексіз жүйе қателесуі әбден мүмкін.
OCR де цитаталарды ойлағаннан қатты бұзады. Ол мәтінге колонтитулдарды, бет нөмірлерін, сноскаларды, қолтаңбаларды, кесте үзінділерін алып кіреді. Сосын іздеу пайдалы үзіндіден гөрі қоқыс фрагментін жоғары шығарады, ал модель оны дәлел ретінде қояды. Әсіресе OCR екі жолды біріктіріп жіберсе немесе сөзді бөліп тастаса, мағына өзгереді, ал цитата сырттай ұқсас болып қала береді.
Әдетте мұндай ақаулар қарапайым белгілермен байқалады: цитата тым жалпы және жауаптың өзін қамтымайды, бет нөмірі шындыққа сай көрінеді, бірақ жанында керекті норма жоқ, бір дереккөз ұзақ абзацтың соңында бірнеше қорытындымен бірге тұр, цитатада қайталанатын бас тақырыптар немесе сноска үзінділері сияқты қоқыс бар, ал жауап мәтіні файлдың соңғы бекітілген нұсқасымен сәйкес келмейді.
Егер мұндай қателерді ұстамаса, дереккөз сілтемелері әшекейге айналады. Сырттай бәрі ұқыпты көрінеді, бірақ пайдаланушы цитатаны тексеріп, қорытындыға тірек таппайды.
Жауап берер алдындағы жылдам тексерулер
Жауапты жібермес бұрын қысқа қолмен не автоматты тексеру жасаған пайдалы. Ол секундтар ғана алады, бірақ ең жағымсыз жағдайдан құтқарады: ассистент сенімді сөйлейді, ал құжатқа сүйенуі бірінші қарағанда-ақ шашылып кетеді.
Әр қорытындының өз дереккөзі болуы тиіс. «Құжат растайды» деген жалпы комментарий емес, түсінікті тіркес: тармақ, абзац, кесте немесе бет. Егер ассистент төлем мерзімі — 10 жұмыс күні десе, пайдаланушы бірден мұның қайдан алынғанын көруі керек.
Тәжірибеде бірнеше тексеру жеткілікті. Әр нақты тұжырымды жанындағы бір цитатамен салыстырыңыз. Сандарды, күндерді, компания атауларын және тармақ нөмірлерін символына дейін тексеріңіз. Цитата файл ішінде ұзақ іздеусіз-ақ дәл керек орынды ашатынына көз жеткізіңіз. Ал құжат жаңартылған болса, жүйе қай нұсқаға сүйенетінін бөлек қарап шығыңыз.
Әсіресе сандар жиі бұзылады. Модель «10 күнтізбелік күн» мен «10 жұмыс күні», «5%-ға дейін» мен «5%» дегенді оңай шатастырады. Келісімшарт, тариф немесе регламент үшін бұл — басқа мағына. Сондықтан сомалар, мөлшерлемелер, мерзімдер және аты-жөндерді қалған мәтін дұрыс көрінсе де, бөлек тексерген дұрыс.
Файл нұсқасында да қате көп болады. Базада черновик жатуы мүмкін, ал пайдаланушы қол қойылған нұсқаны қарап отырады. Ондайда формалды сілтемелер бар, бірақ пайдасы аз. Жүйе құжат нұсқасының идентификаторын сақтап, цитатаны жауапқа қатысып тұрған өзекті файлдан ғана алуы керек.
Жақсы цитата бір басқанда ашылады және жауап сүйеніп тұрған дәл сол үзіндіні көрсетеді. 80 бет PDF-тің бәрін емес және іргелес мәтін үйіндісін де емес. Пайдаланушы модель негізді дәл қай жерден тапқанын өзі болжауға тиіс емес.
Егер тірек әлсіз болса, соны ашық айту жақсы. Мысалы: «Ұқсас үзінді таптым, бірақ ол мерзімді нақты растамайды» немесе «Құжатта айыппұл туралы айтылған, бірақ оның нақты қай жағдайға қатысты екені көрінбейді». Мұндай адалдық күмәнді цитатамен берілген әсем жауаптан пайдалырақ.
Қарапайым тест былай естіледі: адам 5-10 секунд ішінде жауапты тексеріп, бүкіл құжатты қайта оқымай-ақ келісуі мүмкін бе? Егер жоқ болса, жауап жинау логикасын қайта қарау керек.
Өндірісте ары қарай не істеу керек
Продакшнда цитаталар бір үлкен қателіктен емес, ешкім бақыламайтын ұсақ детальдардан бұзылады. Бүгін жауап сенімді көрінеді, ал бір аптадан кейін модель басқа үзіндіге сілтеме жасайды, өйткені модель нұсқасы, индекс немесе чанк реті өзгеріп кеткен.
Сондықтан әр жауаптың ізі сақталуы керек. Әр сұрау үшін сұрақтың өзін, табылған үзінділерді, олардың құжаттағы орнын, соңғы промптты, модель нұсқасын және жауап мәтінін логтау пайдалы. Онсыз іздеу ме, генерация ма, әлде цитатаны өңдеу ме — қай жерде сынғанын білмейсіз.
Әдетте төрт тексеру жеткілікті: қайта іске қосқанда сұрақ бірдей үзінділерге алып келуі, цитата жалпы тақырыпты емес, дәл қорытындыны растауы, модель сөздері ұқсас, бірақ құжаттың басқа тармағына қатысты бөлікті сілтеме етпеуі және модель жаңартылғаннан кейін типтік сұрақтардағы сапа төмендемеуі керек.
Бөлек тұрақты бақылау сұрақтар жинағы керек. Кездейсоқ он мысал емес, нақты сценарийлерден тұратын шағын жиын: төлем мерзімдері, ерекшеліктер, айыппұлдар, күшіне ену даталары, бұзу шарттары. Осындай жинақта жүйе қай жерде қиялға кететінін, қай жерде көрші абзацтарды шатастыратынын және қай жерде дәл цитатаның орнына тым кең үзіндіні тартатынын тез байқауға болады.
Модельдерді салыстырған дұрыс — бірдей пайплайнда. Бір ретривер, бірдей чанкалар, цитатаны кірістірудің бірдей ережелері. Әйтпесе сіз модельдерді емес, бүкіл стекты бірден салыстырып жатасыз. Тәжірибеде бір модель мәтінді әдемірек жазады, ал екіншісі қорытындыны құжатқа дәлірек байлайды. Цитатамен жұмыс кезінде сілтеменің дәлдігі мәтіннің әсемдігінен маңыздырақ.
Команда тұрақты тестілеуге келгенде, тағы бір практикалық сұрақ туындайды: модельдерді қалай ауыстырып, клиент кодын қайта жазбауға болады. Мұнда біртұтас OpenAI-үйлесімді шлюз ыңғайлы. Мысалы, airouter.kz арқылы base_url-ды ауыстырып, бір эндпоинт арқылы әртүрлі модельдермен жұмыс істеуге болады, әрі үйреншікті SDK мен промпттар сақталады. Ал аудит-логтар даулы жауаптар мен ішкі тексерулерді талдауға көмектеседі.
Жүйе пісіп-жетілгенінің жақсы белгісі қарапайым: кез келген сәтсіз жауапты бірнеше минут ішінде қадамдап талдап шығуға болады. Егер ол үшін үш сервисті қосып, қай модель жауап бергенін шамалап отыру керек болса, жүйе әлі де салмақты жүктемеге дайын емес.