Qazanclar:
- İstifadəçi səlahiyyətinə əsasən axtarışı süzgəcdən keçirən giriş nəzarətini (ACL) qurun
- Kontekst və istifadəçi sualını düzgün yerləşdirən möhkəm sorğu şablonunun yazılması
- Çoxtərəfli söhbətlərdə sual müstəqilliyini və tarixi idarə etməyi məşq etmək
Biz memarlığı qurduq; İndi gəlin onu təhlükəsiz, ardıcıl və danışıqlı edək. Bu bölmədə üç kritik mövzu var: (1) istifadəçinin səlahiyyətinə əsaslanaraq axtarışı süzgəcdən keçirən girişə nəzarət, (2) konteksti və sualı düzgün yerləşdirən möhkəm sorğu şablonu, (3) çoxtərəfli söhbətdə sual müstəqilliyi və söhbət tarixçəsinin idarə edilməsi. Bu üçü olmasa, köməkçi ya məlumatları sızdıracaq, uyğun olmayan cavablar verəcək, ya da sonrakı suallarda dağılacaq.
Girişə Nəzarət: İcazəsiz Məlumatlar Heç vaxt gəlməməlidir
Müəssisə üçün ən böyük risk: İstifadəçinin görməməli olduğu sənəd cavaba sızır. Başlanğıcların çox yayılmış səhvi, "modelə sorğu zamanı "gizli sənədləri göstər" demək"dir. Bu təhlükəsiz deyil. Model təlimatı unuda bilər və ya təcili inyeksiya ondan yayına bilər. Düzgün yer axtarış mərhələsidir: icazəsiz parça ümumiyyətlə gətirilməməlidir.
Bunun yolu axtarış zamanı hər bir hissəyə filtr kimi qoyduğunuz səlahiyyət metadatasını (departament, rol, məxfilik səviyyəsi) tətbiq etməkdir. Tətbiq səviyyəsində istifadəçinin kim olduğunu (şəxsiyyət və rollar) etibarlı şəkildə müəyyənləşdirir və zəngə ACL (Giriş İdarəetmə Siyahısı) filtri əlavə edirsiniz.
# Səlahiyyət axtarışı (konseptual) istifadəçi tərəfindən süzülür = autentifikasiya (sessiya) # etibarlı mənbədən təsdiq edilmişdir = user.roles + ["hər kəs"] # məs. ["HR", "admin"]nəticə = vektor_db.search( vektor=embed(sual), top_k=20, filter={"permission_group": {"in": allow}, # yalnız icazə verilən hissələr "məxfilik": {"lte": user.level}} # səviyyədən aşağı)
Diqqət: Heç vaxt modeldən səlahiyyət istəməyin və ya göstərişə etibar etməyin. Şəxsiyyət və səlahiyyət tətbiqin etibarlı təbəqəsində müəyyən edilir; Axtarış filtri məcburidir, operativ təlimat sadəcə əlavə bir təbəqədir. "Mən bunu sorğuda yazdım" təhlükəsizlik deyil.
Bərk Tələb Şablonu
Tələb şablonu axtarış zamanı kontekst, istifadəçi sualı və davranış təlimatlarını bir araya gətirən skeletdir. Yaxşı şablonun hissələri: rol/tapşırıq təsviri, davranış qaydaları (təminat, icazəni bilmirəm, resurs sorğusu, ton), kontekst, sual.
Siz korporativ HR köməkçisisiniz. Sizin işiniz YALNIZ aşağıdakı kontekst əsasında işçilərin suallarına cavab verməkdir. Qaydalar: - Əgər cavab kontekstdə aydın deyilsə, "Sənədlərdə bu barədə məlumat tapa bilmədim, HR komandası ilə yoxlayın" yazın. Təxmin etməyin, uydurmayın.- Kontekstdəki mənbələr ziddiyyət təşkil edirsə, rəsmi siyasəti əsas götürün və ziddiyyəti qeyd edin.- Hər bir iddianın sonunda etibar etdiyiniz mənbəni [Mənbə: fayl, bölmə] kimi əlavə edin.- Qısa, aydın və peşəkar dildə cavab verin. CONTEXT:{numbered_parts}SUAL: {user_question}
Kontekst hissələrinin nömrələnməsi ([1], [2], ...) modelə istinad etməyi asanlaşdırır. Həmçinin, hər bir parçanın əvvəlində mənbəni yazın ki, model ondan düzgün sitat gətirə bilsin.
İpucu: Tələb şablonunu sabit saxlayın və dəyişənləri (kontekst, sual) həmişə eyni yerlərdə yerləşdirin. Sabit şablon bəzi sistemlərdə operativ keşləmə sayəsində həm test qabiliyyətini artırır, həm də xərcləri azaldır.
MƏZUNİYYƏT:[1] (Mənbə: ik_el_kitabi.pdf, Bölmə 5.2) İllik ödənişli məzuniyyət 14 gündür...[2] (Mənbə: ik_el_kitabi.pdf, Bölmə 5.4) 5 ildən artıq stajı olanlar üçün məzuniyyət 20 gündür...
Zəif Tələb / Güclü Tələb
Zəif (topraklama yoxdur, mənbə yoxdur, şəxsiyyət qarışıqdır):
Bu sənədlərdən istifadə edin və suala cavab verin: {hissələr}İstifadəçi: {question}# Problem: model kontekstdən kənara çıxır, tərtib edir, mənbələrə istinad etmir, # ziddiyyətli şəkildə özbaşına davranır.
Güclü (rol + qaydalar + nömrələnmiş kontekst + mənbə məcburidir):
Siz... Sadəcə CONTEXT-ə etibar edin. Əks halda “bilmirəm” deyin. Münaqişədə rəsmi siyasəti seçin. Hər iddiaya [Mənbə: ...] əlavə edin. MƏNZƏT: [1]... [2]... SUAL: {question}# Nəticə: kontekstə uyğun gələn, mənbədən götürülən və ziddiyyəti düzgün idarə edən cavab.
Multi-Tour Söhbət İdarəetmə
Həqiqi istifadəçi bir sual vermir və onu tək qoymur; danışır. "Mənim neçə günlük illik məzuniyyətim var?" → "Bəs 6 illik işçi?" → "Bunun üçün necə müraciət edə bilərəm?" Təkcə ikinci və üçüncü suallar mənasızdır; əvvəlki kontekstdən asılıdır.
İki problemi həll etməlisiniz. Birincisi axtarış üçündür: sonrakı sualı müstəqil edin (sualın yenidən yazılması). "Bəs 6 illik işçi?" → "6 illik işçinin neçə günlük illik məzuniyyət hüququ var?" Siz bu müstəqil sualla axtarın. İkincisi istehsal üçündür: siz həm də danışıq tarixçəsini modelə verirsiniz ki, o, ardıcıl davam etsin.
# İki addımlı: müstəqilləşdirin → axtarın → tarixçə ilə yaradın (konseptual) müstəqil = model.uret( "Sualın özlüyündə başa düşülməsi üçün söhbət tarixçəsindən istifadə edin:\nTarix: {history}\nSual: {follow_question}") kontekst = axtarış(müstəqil) # müstəqil sual cavabı ilə axtarış = model.uret(tarix, təqib)(sual)
Tarix böyüdükcə (uzun söhbət), hamısını bir anda göndərmək baha başa gəlir və kontekst pəncərəsini doldurur. Həll yolu: əvvəlki turları ümumiləşdirin və ya son N raundları saxlayın və əvvəlkiləri xülasəyə endirin. Beləliklə, xərclər nəzarət altında qalır və ardıcıllıq qorunur.
Vəziyyət
problem
Həll
Növbəti sualın konteksti yoxdur
Axtarış axtarışları mənasızdır
Sualı müstəqil edin (yenidən yazın)
uzun söhbət
Xərc və pəncərə şişir
Keçmiş turların xülasəsi
İstifadəçi mövzunu dəyişdi
Köhnə kontekst yoluxmuş olur
Yeni mövzuya keçmiş təsirləri azaldın
Səlahiyyət turlar arasında dəyişə bilər
Sızma riski
Hər turda ACL filtrini yenidən tətbiq edin
Üç mini qutu
1-ci hal – “Təhlükəsizlik” səhvi. Bir şirkət hər kəsin soruşa biləcəyi bir köməkçinin üzərinə məxfi maaş sənədləri qoydu, ancaq dərhal "maaş məlumatını vermə" yazdı. Bir istifadəçi sualı dairəvi şəkildə soruşduqda model maaş aralığını sızdırdı. ACL filtri axtarışa əlavə edildikdə (yalnız HR rolunun əmək haqqı hissələri), sızma tamamilə bağlandı; çünki hissə daha gətirilmir.
Case 2 - Kontekstsiz izləmə. Dəstək köməkçisində istifadəçi "qaytarma müddəti?" → "sınıq məhsul haqqında nə demək olar?" Sistem "sınıq məhsul" üçün uyğun olmayan hissələri gətirdi. Sual müstəqilliyi əlavə edildikdə ("Sınıq məhsulun qaytarılma müddəti nə qədərdir?"), düzgün cavab nisbəti 44%-dən 90%-ə yüksəldi.
3-cü hal - Şişmiş keçmiş. Bir köməkçi ilə 30 raund söhbətində hər zəng bütün tarixi göndərdi; Hər raundda xərc 3 dəfə artdı və cavablar yavaşladı. Son 6 turu saxlayan və əvvəlkiləri ümumiləşdirən struktura keçdiyimiz zaman token dəyəri 62% azaldı və ardıcıllıq qorundu.
Ümumi səhvlər
- Səlahiyyəti sorğuya buraxmaq: Model unudur/yandırır; Axtarış zamanı ACL filtri məcburidir.
- Konteksti sadalamamaq: Model düzgün mənbəyə istinad edə bilməz.
- Növbəti sualı müstəqilləşdirməyin: Axtarış mənasız axtarışlar.
- Bütün tarixin kor göndərilməsi: Xərc və gecikmədə partlayır; ümumiləşdirmək.
- Ziddiyyət qaydasını yazmamaq: Model etibarsız mənbəni rəsmi olaraq təqdim edə bilər.
Xülasə
- Girişə nəzarət axtarış mərhələsində metadata filtri ilə həyata keçirilir; İcazəsiz hissələr heç vaxt gətirilməməlidir.
- Şəxsiyyət və səlahiyyət etibarlı tətbiq səviyyəsində müəyyən edilir; Sürətli göstəriş yalnız əlavə bir müdafiə təbəqəsidir.
- Sağlam sorğu şablonuna rol, davranış qaydaları (əsaslandırma, icazəni bilmirəm, mənbə, münaqişə), nömrələnmiş kontekst və sual daxildir.
- Çoxtərəfli söhbətdə əlavə suallar ayrılır və model tarixlə ardıcıl cavablar verir.
- Uzun tarixi ümumiləşdirməklə, xərc və kontekst pəncərəsi nəzarət altında saxlanılır; ACL hər turda yenidən tətbiq olunur.
Tətbiq tapşırığı
(1) Öz köməkçiniz üçün ən azı üç icazə qrupu təyin edin (məsələn, hamı, şöbə, menecer) və hansı sənəd növünün hansı qrupa açıq olduğunu cədvələ yazın. (2) Yuxarıdakı məlumat şablonunu öz rolunuza və tonunuza uyğunlaşdırın və yazın; Konteksti nömrələnmiş və mənbəli edin. (3) Üç dövrəli real söhbət ssenarisini yazın (sual → təqib → təqib) və hər bir cavab sualının müstəqil versiyalarını əl ilə yaradın. (4) Bu ssenaridə ACL filtrinin niyə hər turda yenidən tətbiq edilməli olduğunu bir cümlə ilə izah edin.
yoxlama siyahısı
- [ ] Mən axtarış filtri ilə giriş nəzarətini həyata keçirirəm, mən sadəcə sorğuya etibar etmirəm.
- [ ] Tələb şablonuma əsaslandırma əlavə edirəm, icazə, mənbə və münaqişə qaydasını bilmirəm.
- [ ] Mən kontekst hissələrini nömrələnmiş və istinad etmişəm.
- [ ] Mən axtarışdan əvvəl əlavə suallar verirəm.
- [ ] Mən uzun söhbət tarixini ümumiləşdirməklə xərcləri və pəncərəni idarə edirəm.