Jinsi ya Kutumia RAGFlow: Mwongozo wa Kivitendo wa Kujenga Programu za RAG za Kuaminika
Ikiwa umejaribu kujenga mfumo wa uzalishaji unaoimarishwa na urejeshaji (RAG), pengine umekumbana na changamoto za kawaida: mawazo ya uongo, urejeshaji usioaminika, njia za uchakataji polepole, na uchakataji mbaya wa hati. RAGFlow inaingia kama zana ya mtiririko wa kazi ya mwisho hadi mwisho ambayo hukusaidia kupanga utumiaji wa hati, ugawaji, uwekaji vekta, urejeshaji, na uzalishaji kwa udhibiti zaidi na uwezo wa kuchunguza.
Mwongozo huu unachukua mbinu ya kivitendo na inayolenga suluhisho. Tutapitia usanidi safi, kukuonyesha jinsi ya kutumia RAGFlow kwa hati halisi, na kushiriki mifumo ambayo kwa kweli inapunguza mawazo ya uongo na kuboresha ubora wa majibu.
RAGFlow ni nini na kwa nini uitumie?
RAGFlow ni mfumo wa kujenga njia za uzalishaji zinazoimarishwa na Urejeshaji. Katika usanidi wa kawaida wa RAG, unafanya yafuatayo:
- Ingiza hati (PDF, kurasa za wavuti, slaidi, msimbo, n.k.)
- Gawanya maudhui katika vitengo vinavyoweza kurejeshwa
- Pachika vipande katika vekta kwa utafutaji wa kisemantiki
- Rejesha vipande muhimu vya juu‑k wakati wa swali
- Zalisha jibu lililo na msingi ukitumia LLM
RAGFlow huongeza chaguo-msingi zilizopendekezwa, vizuizi vya mtiririko wa kazi, na kingo ili uweze kujaribu haraka na kusafirisha programu za kuaminika zaidi. Ni muhimu sana ikiwa unataka:
- Ugawaji thabiti na metadata: Urejeshaji bora huanza na vipande bora.
- Vipachikaji na LLM vinavyoweza kuzibwa: Badilisha OpenAI, miundo ya ndani, au vituo vya biashara.
- Tathmini na kingo: Pima ubora wa urejeshaji na upunguze mawazo ya uongo.
- Njia za usambazaji: Sogeza kutoka daftari hadi uzalishaji na uandishi mdogo.
Mwanzo wa haraka: Kutoka sifuri hadi njia ya kazi ya RAGFlow
Hapa chini kuna mtiririko mdogo wa kazi wa mwisho hadi mwisho ambao unaweza kuurekebisha. Hata kama mazingira yako ni tofauti, mfuatano na kingo zinaweza kuhamishwa.
1) Tayarisha mazingira yako
- Unda
.env na funguo zako:
OPENAI_API_KEY (au mtoa huduma mwingine wa LLM)
EMBEDDINGS_API_KEY (ikiwa unatumia mtoa huduma tofauti)
VECTOR_DB_URL (k.m., Pinecone, Weaviate, Qdrant, au ya ndani)
- Weka saraka ya mradi, k.m.,
ragflow-project/ na folda:
data/raw/ (faili za chanzo)
data/processed/ (vipande vilivyosafishwa)
configs/ (YAML/JSON kwa mipangilio ya njia)
eval/ (seti za data na ripoti)
2) Ingiza hati na metadata safi
Metadata nzuri = urejeshaji bora. Sanifisha vichwa, waandishi, tarehe, na vyanzo.
- Badilisha PDF na slaidi kuwa maandishi na kichanganuzi thabiti
- Hifadhi muundo: vichwa, orodha, vizuizi vya msimbo, na jedwali
- Ambatisha metadata kwa kila kipande:
source, section, page, timestamp, version
Kidokezo: Weka doc_id na chunk_id ili kusaidia nukuu na uingizaji tena.
3) Chagua mkakati wa ugawaji unaofaa maudhui yako
Ugawaji unaathiri sana ubora wa urejeshaji na muda wa kusubiri.
- Kwa hati za masimulizi: ugawaji wa kisemantiki (gawanya kwa vichwa/aya)
- Kwa hati za kiufundi: tumia ugawaji mseto (kisemantiki + dirisha lililowekwa)
- Kwa msimbo: gawanya kwa function/class na dirisha ndogo linaloteleza
Mipangilio inayopendekezwa ya kuanza:
chunk_size: tokeni 600–1,000
chunk_overlap: tokeni 50–100
max_depth: zuia sehemu zilizowekwa ndani hadi viwango 2–3 ili kuepuka kugawanyika
4) Chagua vipachikaji na duka la vekta
- Anza na muundo thabiti wa jumla wa upachikaji (k.m., text‑embedding‑3‑large au muundo wa kisasa wa ndani). Ikiwa faragha ni muhimu, fikiria vipachikaji vilivyohifadhiwa kibinafsi.
- Tumia DB ya vekta ambayo inasaidia:
- Utafutaji mseto (mnene + neno muhimu)
- Vichujio (vizuizi vya metadata)
- Uingizaji wa bechi na vipimo vya faharasa
Mipangilio ya faharasa ya kujaribu:
top_k = 5–10 kwa urejeshaji wa awali
similarity_metric = cosine (au nukta kwa miundo fulani)
- Washa umuhimu wa juu zaidi wa pembezoni (MMR) ili kupunguza urudufishaji
5) Mpangilio wa urejeshaji
Tekeleza mrejeshaji wa hatua mbili:
- Ukumbusho wa haraka wa mgombea
- Utafutaji mseto (BM25 + mnene)
top_k kubwa (k.m., 30–50)
- Kipanga upya cha msimbo mtambuka au ufungaji kulingana na LLM
- Punguza hadi
top_k ya mwisho (k.m., 5–8)
Ongeza vichujio vya metadata: source:"handbook" AND section:"benefits" AND version:"v2" ili kuzuia majibu kwa hati zinazoaminika.
6) Uzalishaji ulio na msingi na muundo
Kidokezo chako kinapaswa kulazimisha nukuu na kukataa wakati ushahidi ni dhaifu.
Mfano wa kidokezo cha mfumo:
Wewe ni msaidizi makini. Jibu TU kwa habari inayoungwa mkono na muktadha uliotolewa.
- Nukuu vyanzo ndani ya mstari kama [doc_id:chunk_id].
- Ikiwa muktadha hautoshi, sema "Hakuna habari ya kutosha katika hati zilizotolewa."
- Usigundue ukweli.
Kiolezo cha kidokezo cha mtumiaji:
Swali: {query}
Muktadha:
{top_chunks}
Maagizo:
- Toa jibu fupi kwanza, kisha maelezo.
- Jumuisha nukuu baada ya kila dai la kweli.
7) Ongeza kingo ili kupunguza mawazo ya uongo
- Ukaguzi wa kujibu: Kabla ya uzalishaji, uliza muundo mdogo: "Je, kuna ushahidi wa moja kwa moja katika vipande vilivyorejeshwa?" Ikiwa hapana, rudisha swali la ufafanuzi.
- Sera ya nukuu‑au‑kimya: Zuia matokeo ambayo hayana nukuu.
- Vichujio vya Sumu/PII kwa maudhui ya biashara.
8) Tathmini na uboreshaji endelevu
Unda seti ya eval/ na:
- Maswali 50–200 ya mtumiaji halisi
- Majibu ya ukweli (au marejeleo ya kuaminika)
- Vyanzo vinavyotarajiwa (vitambulisho vya hati) inapohitajika
Pima:
- Kiwango cha kugonga urejeshaji (je, chanzo cha dhahabu kinaonekana kwenye top‑k?)
- Uaminifu wa jibu (taarifa zinazoungwa mkono na nukuu)
- Muda wa kusubiri (p95 mwisho hadi mwisho)
- Gharama (kwa maswali 100)
Jaribu:
- Ukubwa wa kipande na mwingiliano
- Uchaguzi wa muundo wa upachikaji
- Kipanga upya dhidi ya top‑k ya juu zaidi
- Muundo na vizuizi vya kidokezo
Njia kamili ya RAGFlow: Mfano wa usanidi
Hapa chini kuna usanidi wa dhana unaweza kuurekebisha kwa mnyororo wako wa zana. Badilisha majina ya mtoa huduma inavyohitajika.
project: product-handbook-rag
io:
input_path: data/raw/
output_index: product-handbook-index
parsing:
pdf:
strategy: auto
keep_layout: true
extract_tables: true
markdown:
preserve_headings: true
chunking:
method: semantic_hybrid
target_tokens: 800
overlap_tokens: 80
windowing: 2
metadata:
fields: [doc_id, title, section, page, version, source]
embeddings:
provider: openai
model: text-embedding-3-large
vectorstore:
type: qdrant
url: ${VECTOR_DB_URL}
similarity: cosine
retrieval:
hybrid: true
lexical_weight: 0.35
semantic_weight: 0.65
candidate_top_k: 40
rerank:
enabled: true
model: bge-reranker-large
final_top_k: 7
generation:
llm: gpt-4o
temperature: 0.2
cite_or_silence: true
guardrails:
answerability_check: true
pii_filter: true
toxicity_filter: moderate
monitoring:
log_traces: true
latency_budget_ms: 3500
cost_budget_per_100: 1.25
Jinsi ya kutumia RAGFlow kwa aina tofauti za maudhui
Miongozo ya bidhaa na vitabu vya kiada
- Pendelea ugawaji wa kisemantiki na mipaka ya sehemu iliyo wazi
- Ambatisha toleo na tarehe ya kuanza kutumika ili kuzuia majibu yaliyopitwa na wakati
- Tumia vichujio vikali: daima hitaji
version = latest
Hifadhi za maarifa na Maswali Yanayoulizwa Mara kwa Mara
- Tumia vipande vidogo (tokeni 400–600) kwa majibu sahihi
- Ongeza hifadhi ya wagombea na utegemee upangaji upya ili kupata kipande halisi
- Zalisha kiotomatiki jozi za kawaida za Maswali/Majibu ili kuongeza ukumbusho kupitia utafutaji wa kileksika
Hati za uhandisi na msimbo
- Gawanya kwa function/module na ujumuishe grafu za kuingiza katika metadata
- Washa urejeshaji wa mzazi‑mtoto: rudisha function + muktadha wake wa docstring
- Tumia kipanga upya kinachofahamu msimbo ili kuweka kipaumbele alama muhimu
Kisheria na utiifu
- Hitaji nukuu za kiwango cha aya
- Ongeza mantiki ya kukataa kwa muktadha usio kamili
- Weka seti ya dhahabu ya vyanzo vilivyoidhinishwa na mdhibiti katika faharasa tofauti
Mifumo ya kidokezo ambayo hufanya kazi kweli
- Jibu kisha unukuu: Jibu fupi juu; nukuu ndani ya mstari baada ya kila dai
- Msururu wa urejeshaji: Uliza muundo muhtasari kila kipande kwanza, kisha unganisha
- Andika upya swali: Panua maswali ya mtumiaji na visawe na maneno ya kikoa kabla ya urejeshaji
- Vidokezo tofauti: "Eleza kwa nini chaguo A ni bora kuliko B kulingana na muktadha." Hii inalazimisha matumizi ya ushahidi
Mfano wa hatua ya kuandika upya swali:
Asili: "sera yetu ya kubeba PTO ni nini?"
Andika upya: "sera ya kubeba muda wa kulipwa; kusongesha likizo; saa za juu zaidi; toleo la sera la hivi karibuni"
Uwezo wa kuchunguza na mizunguko ya maoni
- Ingia ni vipande vipi vilitumika, alama zao, na vipi vilipuuzwa
- Nasa ishara ya kidole gumba juu/chini na maelezo mafupi; lisha hiyo nyuma katika urekebishaji wa mrejeshaji
- Endesha majaribio ya urejeshaji ya kila wiki kwenye seti yako ya eval kabla ya kusambaza mabadiliko yoyote ya muundo
Karatasi ya kudanganya ya urekebishaji wa utendaji
- Ikiwa majibu yanahisi kuwa ya jumla: ongeza
candidate_top_k na uongeze kipanga upya chenye nguvu zaidi
- Ikiwa majibu yanakosa maelezo: punguza ukubwa wa kipande; ongeza uzito wa kileksika kidogo
- Ikiwa nukuu zinarudia kipande kile kile: washa MMR na uinue utofauti
- Ikiwa muda wa kusubiri ni mrefu: weka akiba vipachikaji, hesabu upya uandishi wa swali, tumia kipanga upya kidogo
- Ikiwa gharama zinaongezeka: sogeza joto la uzalishaji chini, punguza vidokezo, jaribu LLM ndogo kwa hatua ya kwanza
Usalama na mambo muhimu ya utawala
- Simba vekta zilizohifadhiwa na urekebishe sehemu nyeti katika metadata
- Tumia udhibiti wa ufikiaji kwa kila faharasa; gawanya kwa timu au usikivu wa data
- Dumisha rekodi ya nasaba ya data: URL ya chanzo cha hati, jumla ya hundi, na timestamp ya uingizaji
Muhtasari wa uchunguzi wa kesi: Kutoka kwa PDF mbaya hadi majibu ya kuaminika
Timu ya usaidizi iliingiza kurasa 1,200 za PDF. Urejeshaji wa awali haukuwa thabiti; mawakala hawakuamini roboti. Baada ya kubadili ugawaji wa kisemantiki‑mseto (tokeni 800, mwingiliano wa 80), kuwezesha upangaji upya wa msimbo mtambuka, na kulazimisha nukuu‑au‑kimya, kiwango cha kugonga cha top‑k kiliongezeka kutoka 62% hadi 89%, na upitishaji wa wakala uliongezeka mara mbili. Muhimu haukuwa LLM kubwa—ilikuwa vipande safi na urejeshaji mkali.
Kidokezo cha zana: Majaribio ya haraka na upau wa kando wa AI
Inafaa kukumbuka: ikiwa unafanya majaribio na vidokezo na vipande vya urejeshaji katika hati nyingi, msaidizi wa AI ambaye hukuruhusu kupiga gumzo kupitia PDF, kurasa za wavuti, na msimbo moja kwa moja kutoka kwa kivinjari anaweza kuharakisha majaribio. Kwa njia, Sider.AI (https://sider.ai/) inatoa upau wa kando wa AI ambao hukuruhusu kuvuta muktadha kutoka kwa ukurasa ulio nao, muhtasari, na uboresha vidokezo haraka. Ni muhimu kwa kuunda vidokezo vya RAG na kujaribu ubora wa kipande kabla ya kurasimisha njia. Utatuzi wa RAGFlow: Marekebisho ya haraka
- "Muundo una uhakika lakini umekosea."
- Washa ukaguzi wa kujibu; punguza joto; hitaji nukuu
- "Utafutaji unarudisha nakala karibu."
- Washa MMR; ongeza kipanga upya; punguza mwingiliano wa kipande
- "Muda wa kusubiri unaongezeka kileleni."
- Vipachikaji vya bechi; weka akiba uandishi wa swali; tumia uzalishaji wa utiririshaji
- "Sera za zamani zinaendelea kuonekana."
- Chuja kwenye
version = latest; punguza au uweke alama hati zilizopitwa na wakati
Hatua zinazofuata: Fanya RAGFlow yako iwe ya kuaminika katika uzalishaji
- Anza na mkusanyiko mdogo, unaoaminika; kamilisha ugawaji na vichujio kwanza
- Ongeza kipanga upya kabla ya kuboresha LLM
- Jenga seti ya eval ya maswali 100 na ufuatilie kiwango cha kugonga kila wiki
- Unganisha maoni ya mtumiaji ili kurekebisha urejeshaji kila wakati
Mambo muhimu:
- Ubora wa urejeshaji unazidi ukubwa wa muundo kwa RAG
- Ugawaji, metadata, na upangaji upya ndio levers zako za msingi
- Kingo kama vile nukuu‑au‑kimya huongeza uaminifu sana
- Wekeza mapema katika uwezo wa kuchunguza na tathmini
Kwa mazoea haya, RAGFlow inakuwa uti wa mgongo wa kuaminika kwa majibu yenye msingi—iwe unaendesha roboti ya usaidizi, rubani msaidizi wa msanidi programu, au msaidizi wa maarifa wa ndani.
Maswali Yanayoulizwa Mara kwa Mara
Swali la 1: RAGFlow ni nini na ninawezaje kuitumia kwa QA ya hati?
RAGFlow ni mfumo wa kujenga njia za uzalishaji zinazoimarishwa na urejeshaji. Unaingiza, kugawanya, kupachika, kurejesha, na kutoa majibu na nukuu ili kupunguza mawazo ya uongo na kuboresha usahihi.
Swali la 2: Ninapaswa kugawanya hati vipi katika RAGFlow?
Tumia ugawaji wa kisemantiki au mseto na vipande vya tokeni 600–1,000 na mwingiliano wa tokeni 50–100. Kwa msimbo, gawanya kwa function au class na ujumuishe muktadha unaozunguka.
Swali la 3: Hifadhidata ipi ya vekta inafanya kazi vizuri na RAGFlow?
Chagua duka ambalo linasaidia utafutaji mseto, vichujio vya metadata, na upangaji upya—Qdrant, Weaviate, Pinecone, au chaguo la ndani zote ni chaguo za kawaida.
Swali la 4: Ninawezaje kuzuia mawazo ya uongo katika programu ya RAGFlow?
Lazimisha sera ya nukuu‑au‑kimya, ongeza ukaguzi wa kujibu kabla ya uzalishaji, na weka vidokezo vikali kuhusu kutumia muktadha uliorejeshwa tu.
Swali la 5: Ni vipimo vipi ninapaswa kufuatilia ili kutathmini RAGFlow?
Fuatilia kiwango cha kugonga urejeshaji, uaminifu wa jibu, muda wa kusubiri, na gharama kwa maswali 100, na udumishe seti ndogo lakini inayowakilisha ya tathmini.