Yunit 3 / 12

Pagbuo ng Mga Sagot mula sa Knowledge Base (Introduction to RAG)

Mga nadagdag:

  • Pag-unawa sa lohika ng knowledge-based generation (RAG) at kung bakit nito binabawasan ang mga guni-guni
  • Kakayahang tumugon ang modelo nang may pagsipi, batay lamang sa mga ibinigay na dokumentong pinagmumulan
  • Kakayahang pamahalaan ang mga tanong na wala sa pinagmulan sa pamamagitan ng paglilipat ng mga ito nang ligtas, nang hindi gumagawa ng mga tanong

Maraming "alam" ang isang modelo ng wika, ngunit hindi nito alam ang patakaran sa pagbabalik ng iyong kumpanya ngayon, ang iyong kasalukuyang listahan ng presyo, o ang iyong kasunduan sa pagpapadala na nagbago kahapon. Ang masama, kapag hindi niya alam, madalas siyang gumagawa at nagsusulat sa sobrang kumpiyansa na tono. Isa itong nakamamatay na depekto sa serbisyo sa customer: ang sabi ng modelo ay "Ibinibigay ang mga refund sa loob ng 30 araw" habang ang iyong patakaran ay maaaring 14 na araw. Ang diskarte na nagsasara ng puwang na ito ay tinatawag na RAG: Retrieval-Augmented Generation, iyon ay, "retrieval-augmented production".

Ang ideya ay simple: Sinasagot ng modelo ang tanong na hindi mula sa memorya, ngunit mula sa tamang mapagkukunang mga dokumento na inilagay sa harap nito sa sandaling iyon. Una, ang tamang piraso ng dokumentong nauugnay sa tanong ay "pagbawi", pagkatapos ay "bumubuo" ang modelo ng sagot batay sa pirasong iyon lamang. Sa unit na ito, mauunawaan mo ang lohika ng RAG at matutunan mo kung paano kontrolin ang modelo upang manatili lamang ito sa na-verify na pinagmulan na iyong ibibigay.

Tandaan: Itinuturo ng unit na ito ang gumaganang lohika at maagang bahagi ng RAG. Enterprise-scale awtomatikong pagkuha ng dokumento system (vector database, atbp.) ay nangangailangan ng isang teknikal na pag-install; Disiplina dito ang batayan para makasagot ng tama ang sistemang iyon.

Bakit Binabawasan ng RAG ang mga Hallucinations?

Ang hallucination ay kapag ang modelo ay gumagawa ng hindi totoong impormasyon na parang ito ay totoo. Ang modelo ay naka-program upang makagawa ng isang tugon na tila "posible" kapag nakakita ito ng isang puwang; Hindi alam kung totoo o hindi. Pinupuunan ng RAG ang puwang na ito: ibibigay mo sa modelo ang aktwal na nauugnay na teksto kasama ang tanong at sabihin ang "sagot lamang mula rito." Sa ganitong paraan ang modelo ay hindi "kailangan" na magkasya.

May tatlong sangkap:

  • Base ng kaalaman: Mga mapagkakatiwalaang text gaya ng mga FAQ, mga dokumento ng patakaran, mga manwal ng produkto, mga listahan ng presyo.
  • Pagbawi: Paghahanap ng piraso ng dokumento na naglalaman ng sagot sa tanong at ibigay ito sa modelo.
  • Limitadong edisyon: Tumutugon ang modelo nang may quote, batay lamang sa bahaging ibinigay.

Hakbang sa Hakbang: Isang Tapat na Tugon sa Pinagmulan

  1. Ihanda ang pinagmulan. Hanapin ang teksto kung saan ibabatay ang tugon (patakaran, FAQ) sa isang malinaw at napapanahon na format.
  2. I-embed ang pinagmulan sa prompt. Ilagay ang text sa isang tag tulad ng <source>.
  3. Isulat ang tuntunin ng katapatan. "Gamitin lamang ang impormasyon mula sa pinagmulan; huwag lumihis mula sa pinagmulan."
  4. Gumawa ng pagsipi na kailangan. Hayaang ipahiwatig niya kung aling seksyon ang batayan ng sagot.
  5. Tukuyin ang pag-uugaling hindi pinagkukunan. Kung ang sagot ay wala sa pinagmulan, hayaan siyang sabihin na "Wala akong impormasyong ito" at ipasa ito.
  6. I-verify. Kumpirmahin ang sagot sa pamamagitan ng paghahambing nito sa pinagmulang pangungusap kung saan ito batay.

Mga Nakokopyang Prompt

Prompt ng pagtugon batay sa pinagmumulan:

Tungkulin: Isa kang customer support assistant. Sagutin ang tanong LAMANG batay sa impormasyon sa <source>block sa ibaba. Huwag magdagdag ng anumang impormasyon na wala sa pinagmulan, hulaan o sagot mula sa iyong pangkalahatang kaalaman. Idagdag ang seksyong iyong inaasahan sa dulo ng iyong sagot sa format na "[Source: ...]". Kung ang sagot ay wala sa pinagmulan, isulat ang sumusunod: "Wala akong tiyak na impormasyon sa paksang ito, ililipat kita sa isang opisyal na makakapagbigay ng tamang sagot."<source>{{ policy_or_faq_text }}</source>Tanong: {{ customer_question }}

Sa kaso ng multi-source, ang prompt upang ipakita kung aling dokumento ito ay batay sa:

Mayroong maraming mga mapagkukunan na may numero sa ibaba. Kapag sinasagot ang tanong, sabihin ang numero ng pinagmulang ginamit mo, gaya ng [Source 2]. Kung higit sa isang source ang sumasalungat sa iyo, sabihin nang malinaw at sabihin na dapat mong itanong kung alin ang mas napapanahon.<sources>1) {{ source_1 }}2) {{ source_2 }}3) {{ source_3 }}</sources>Tanong: {{ customer_question }}

Prompt na ligtas na namamahala sa tanong na hindi pinagmumulan:

Kung ang sagot sa tanong ay BAHAGI na matatagpuan sa pinagmulan: sagutin lamang ang bahaging sakop ng pinagmulan, at sabihing "wala ang detalyeng ito sa pinagmulan" para sa natitirang bahagi. Huwag kailanman punan ang nawawalang bahagi sa pamamagitan ng paghula.

Prompt na nagsasalin ng tugon sa wika ng kliyente, ngunit nananatiling tapat sa pinagmulan:

Isalin ang opisyal/teknikal na expression sa source sa simpleng wika na mauunawaan ng customer, ngunit HUWAG baguhin ang kahulugan at mga numerical na halaga (araw, halaga, rate). Halimbawa, ang pag-round sa "14 na araw sa kalendaryo" sa "mga dalawang linggo"; panatilihin ang buong halaga.

Mahina Prompt / Malakas na Prompt

Mahinang prompt

Napakahusay na prompt

"Sabihin sa amin ang tungkol sa aming patakaran sa pagbabalik"

I-embed ang source + "reply here only" + humiling ng quote

Sagot mula sa memorya ng modelo (marahil mali)

Sagot mula sa iyong kasalukuyang dokumento

Kung wala sa source, siya ang gumagawa

Sinabi niya "Wala akong impormasyong ito" at ipinapasa ito.

Maaaring i-round at i-distort ang mga numero

Pinapanatili ang araw/halaga/rate nang eksakto

Ang pagkakaiba ay ang malakas na prompt ay nagbibigay sa modelo ng isang anchor (pinagmulan ng teksto) at isang pagbabawal (pag-alis sa pinagmulan). Ang modelo ay hindi na nagsasalita mula sa memorya, ngunit mula sa katotohanan sa harap niya.

Tatlong Mini Case

Kaso 1 — Ang lumang bitag ng patakaran. "Tinanggap ang mga pagbabalik sa loob ng 30 araw," sabi ng bot ng isang tindahan habang tumatakbo nang walang credit; Gayunpaman, binawasan ng kumpanya ang panahon sa 14 na araw. Kapag ang na-update na text ng patakaran ay idinagdag sa pinagmulan sa pag-install ng RAG, ang bot ay tumugon na ngayon ng "14 na araw sa kalendaryo [Source: Return Policy, article 2]". Na-reset ang mga hindi pagkakaunawaan sa refund na nagmula sa mga maling pangako.

Kaso 2 - Paghuli sa kontradiksyon. Nagtanong ang isang customer tungkol sa mga gastos sa pagpapadala. Parehong ang luma at bagong mga listahan ng presyo ay inilagay sa system bilang mga mapagkukunan. Salamat sa multi-source prompt, sinabi ng modelo, "Ang dalawang mapagkukunan ay nagbibigay ng magkaibang mga presyo (49 TL at 59 TL); kailangan kong kumpirmahin ang kasalukuyan" at ipinarating ang isyu sa tao. Sa halip na sabihin sa customer ang isang maling halaga, sinabi niya nang tapat ang kawalan ng katiyakan.

Kaso 3 — Bahagyang pagdisiplina sa pagtugon. "Nagpapadala ka ba ng produkto sa ibang bansa at sino ang nagbabayad ng customs duty?" Sa tanong, sinabi lang ng source na ginawa ang shipment, wala naman tungkol sa kung sino ang nagbayad ng buwis. Sabi ng modelo, "Oo, ang pagpapadala ay ginagawa sa ibang bansa [Source: Cargo FAQ]. Gayunpaman, hindi nakasaad sa dokumentong ito kung sino ang nagbabayad ng customs duty; Inililipat kita sa opisyal para linawin ito." Sa halip na isang half-true, half-fabricated na sagot, gumawa ito ng isang tapat at tiwala na output.

Tip: Panatilihin ang pinakabago at nag-iisang pinagmulan ng bersyon ng katotohanan ng iyong base ng kaalaman. Ang pagkakaroon ng parehong impormasyon (hal. panahon ng pagbabalik) na iba ang nakasulat sa tatlong magkahiwalay na dokumento ay ang pinakamalaking kaaway ng RAG; Iba-iba ang tugon ng modelo depende sa kung alin ang tinitingnan nito. I-deduplicate muna ang iyong mga dokumento, pagkatapos ay i-automate ang mga ito.

Pag-verify: Huwag Mag-relax Dahil Lang Ang Pinagmulan

Lubos na binabawasan ng RAG ang guni-guni ngunit hindi ito nire-reset. Ang modelo ay maaaring minsan ay mali ang interpretasyon sa pinagmulan, paghahalo ng dalawang pangungusap, o pagguhit ng "konklusyon" na wala sa pinagmulan. Iyon ang dahilan kung bakit kritikal ang kinakailangan sa pagsipi: buksan ang seksyon kung saan sinasabing nakabatay ang sagot at suriin kung ito nga ba ang nagsasabi. Ang kontrol na ito ay hindi mapag-usapan, lalo na sa mga tugon na naglalaman ng mga numero (araw, halaga, rate) at kundisyon (pagbubukod, kundisyon).

Babala: Kung ang pinagmulan mismo ay mali o luma na, tapat na inuulit ng RAG ang pagkakamaling iyon. Ang pagsasabi na "ang modelo ay nagsasalita mula sa pinagmulan" ay hindi nangangahulugan na "ang modelo ay nagsasalita ng tama"; Responsable ka para sa pera at katumpakan ng iyong pinagmulan.

Pagpapanatiling Handa ang Knowledge Base para sa Tugon

Ang kalidad ng RAG ay higit na nakasalalay sa kung paano isinulat ang pinagmulang teksto. Ang modelo ay nagbabalik ng mas tumpak na tugon kaysa sa maayos na pagkakaayos, may pamagat, solong paksa na mga teksto. Praktikal na payo: isulat ang iyong mga patakaran sa maikli, may pamagat na mga seksyon sa halip na mahaba, naka-nest na mga talata; Hayaang sagutin ng bawat seksyon ang isang tanong ("Ilang araw ang panahon ng pagbabalik?", "Aling mga produkto ang hindi maibabalik?"). Ang pagpapanatili ng mga madalas itanong (FAQ) sa format na tanong-at-sagot ay nagpapadali para sa modelo na mahanap ang tamang bahagi. Ipahayag ang mga halaga tulad ng petsa, halaga, at rate nang malinaw at sa isang lugar sa loob ng teksto; Ang pagsusulat ng parehong numero nang naiiba sa iba't ibang mga seksyon ay nakalilito sa modelo.

Ang isa pang mahalagang ugali ay panatilihing buhay ang base ng kaalaman. Iba-iba ang mga patakaran, presyo at promosyon; Kung hindi na-update ang pinagmulan, patuloy na ligtas na inuulit ng modelo ang lumang katotohanan. Sa bawat pagbabago ng patakaran, i-update ang pinagmulan at muling tanungin ang modelo ng ilang mga pagsubok na tanong tungkol sa binagong paksa upang kumpirmahin na nagbibigay ito ng tamang sagot. Pinipigilan ng maliit ngunit regular na maintenance na ito ang RAG system na "tahimik na magkamali" sa paglipas ng panahon.

Mga karaniwang pagkakamali

  • Ang pagsasabi ng "ipaliwanag ang aming patakaran" nang hindi inililibing ang pinagmulan at umaasa sa pagsasaulo ng modelo.
  • Hindi pagtukoy sa hangganan ng "tugon mula sa pinagmulan lamang" at hindi pinagmumulan ng pag-uugali.
  • Hindi humihiling ng quote/source reference at iniiwan ang sagot na hindi mabe-verify.
  • Pagpapanatiling magkasalungat na bersyon ng parehong impormasyon sa maraming dokumento sa knowledge base.
  • Nagbibigay-daan sa modelo na i-round/interpret ang mga numerical value.
  • Nakalimutang i-update ang pinagmulan, na nagiging dahilan upang matapat na ulitin ng modelo ang lumang impormasyon.

Sa buod

  • Ang RAG ay nangangahulugan na ang modelo ay gumagawa ng sagot nito mula sa kasalukuyang pinagmumulan ng dokumento, sa halip na mula sa memorya.
  • Ang pinakapraktikal na paraan upang mabawasan ang guni-guni: ibaon ang pinagmulan, sabihin ang "tugon lamang dito", humingi ng pagsipi.
  • Kung ang sagot ay wala sa pinagmulan, hindi dapat magkasya ang isa sa isang modelo; Dapat niyang sabihin na "Wala ako" at ibigay ito.
  • Ipaalam sa modelo ang mga magkasalungat na mapagkukunan; Eksakto mong napanatili ang mga numerical na halaga.
  • Ang katumpakan ng RAG ay nakasalalay sa pagiging maagap ng iyong pinagmulan; Palaging kumpirmahin ang quote.

Gawain ng aplikasyon

Kumuha ng aktwal na text ng patakaran (pagbabalik, pagpapadala, o membership) mula sa iyong sariling negosyo at i-embed ito bilang pinagmulan sa pangunahing RAG prompt sa itaas. Pagkatapos ay magtanong ng tatlong tanong: (1) isang tanong na ang sagot ay malinaw sa pinagmulan, (2) isang tanong na ang sagot ay wala man lang sa pinagmulan, (3) isang tanong na ang sagot ay hindi kumpleto sa pinagmulan. I-verify na ang modelo ay sumasagot nang tama, nagsasabing "Wala ako nito," at tapat na minarkahan ang bahagyang sagot at ang nawawala, ayon sa pagkakabanggit. Iwasto ang lihis na pag-uugali sa pamamagitan ng pagpapalakas ng katapatan at hindi mapagkukunang mga panuntunan sa prompt.

checklist

  • [ ] Na-embed ko ang kasalukuyang pinagmulan kung saan ibabatay ang tugon sa prompt.
  • [ ] Idinagdag ko ang panuntunang "Tugon lamang mula sa pinagmulan, huwag lumampas".
  • [ ] Naglagay ako ng source reference / citation requirement.
  • [ ] Tinukoy ko ang pag-uugali ng pagtatalaga kung ang sagot ay hindi available sa pinagmulan.
  • [ ] Hinihiling ko na ang mga numerical na halaga ay eksaktong mapangalagaan.
  • [ ] Kinumpirma ko ang sagot mula sa pinagmulang pangungusap kung saan ito batay.