د لوی زبانونو ماډلونه غیرقانوني قوي دي او دا حیرانتیا لري چې دوی په پراخه ډاټا ګروپ کې روزل شوي دي. په هرصورت، څومره موږ، کله چې موږ زموږ د Founder سفر ته راځي، د دې ماډلونو په کور کې روزل کولو بودجه لري؟ احتمالا، ډیر کم. نه انتظار وکړئ، دا مخکښ LLMونه موږ ته ګټور دي؟ البته، که دوی د پرانیستې سرچينې دي. خوشحاله، ډیری ځینې اوس هم شتون لري. نه، څنګه دقیقا دوی ګټور دي؟ د AI په سيمه کې ډیری موږ د RAGونو په اړه پوه دي یا لږ تر لږه د دوی په اړه شنیدلي. اجازه وکړم یو ساده یو لړۍ تعریف وړاندې کړي. د ترلاسه کولو-تولید شوی نسل دقیقا دا دی چې دا ښکاري - دا د خارجي سرچینو څخه ډاټا ترلاسه کوي چې موږ وړاندې کوو او دا د LLM محصول ته زیاتوي. دا ډیر ګټور دی ځکه چې دا د LLMs د تولید قدرت څخه ګټه ورکوي او په داسې حال کې چې موږ بهرني معلومات رامینځته کوو چې د خواړه corpus څخه د محصولاتو تولید کړي. که تاسو د محدود بهرني corpus لرئ، موږ کولی شو ماډل د LLM په عمومي معلوماتو کې رامینځته کړي. م به په ځانګړې توګه په څرنګه کې چې موږ غذا ونیسئ او په عمده توګه په مفهوم کې باور لري چې د خوړو او بدن په اړه د "پړاو" په اړه. که موږ خپل ځان د طبيعي روغتیا خوړو سره تغذیه کوو، موږ طبیعت ته نښلوي - قوي، ښکلي، او غیرقانوني. مګر که موږ د مصنوعي، غیرقانوني خوړو مصرف کوو، موږ د ورته ښکاره او احساس کوو - د رطوبت او غیر طبيعي. د نږدې مصنوعي او پاکیزه خوړو مصرف په ورځ کې د بدترین اغیزو څخه یو دی دی دی. او هغه څه چې په حقیقت کې د ډایټابیس سره ژوند کوي؟ دا ساده دی - هغه خلک چې دا په لومړي ګام کې تجربه کوي. د LLMs په کارولو سره د ډایټابیس په اړه تجربیات ډاټا ترلاسه کولو لپاره زما دلچسپي له امله، زه د Ollama سره دا تجربې ترسره کړ - د ډیری پرانیستې سرچینه LLMونو څخه یو چې د دې کارونو لپاره کارول کیدی شي. زه زما نوټونه په هر مرحله کې د توضیح سره د ګام په برخه کې وده ورکړم. برسېره پر دې، د درک لپاره، زه د عالي کچه د آرشیفیت ډیزاین شامل دي. پړاو 1: د ډیرو URLs څخه د محتوياتو راټول او پروسس. موږ د Reddit URLs لست څخه متن راټول او دا په all_texts کې ذخیره کوو. پړاو 1: د ډیرو URLs څخه د محتوياتو راټول او پروسس. موږ د Reddit URLs لیست څخه متن راټول او دا په all_texts کې ذخیره کوو. text # د وارداتو اړتیا وړ کتابتونونه د وارداتو لپاره د Bs4 د وارداتو لپاره د Retrieval__ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ex_ پیل کړئ پړاو 2: موږ د اغیزمن متن د پروسس لپاره د اغیزمنې لپاره د اغیزمنې ټیکنونو کې د اغیزمنې ټیکنونو ته وټاکو. موږ کولی شو د حافظه کارولو کم کړي او د څیړنې کړنو ښه کړي. پړاو 2: موږ د اغیزمن متن د پروسس لپاره د اغیزمنې کارولو لپاره د اغیزمنې ټیکنونو ته راټول شو. موږ کولی شو د حافظه کارولو کم کړي او د څیړنې کړنو ښه کړي. # پړاو 2: ټول مواد د ټیکنونو ته ورسیږي text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50) all_chunks = [] د ټیکنونو لپاره په all_texts: all_chunks.extend(text_splitter.split_text(text)) # پړاو 2: ټول مواد د ټیکنونو ته ورسیږي text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50) all_chunks = [] د ټیکنونو لپاره په all_texts: all_chunks.extend(text_splitter.split_text(text)) پړاو 3: موږ د Ollama نښلولونو پیل کړئ. نښلولونه د خام متن د شمسی معنی په اړه د شمسی (بکټور) نښلولونو دي. نښلولونه د مختلفو ML ماډلونو په اغیزمنه توګه پروسس او متن درکوي. OllamaEmbeddings ټولګي د llama2 ماډل لپاره د دې نښلولونو جوړولو لپاره د لامپ ګرځنده کوي. پړاو 3: موږ د Ollama نښلولونو پیل کړئ. نښلولونه د خام متن د شمسی معنی د نښلولونو په شمولیت کې شمولیت لري. نښلولونه د مختلفو ML موډلونو په اغیزمنه توګه پروسس کولو او درک کولو ته امکان ورکوي. OllamaEmbeddings ټولګي د llama2 ماډل لپاره د دې نښلولونو تولید لپاره د لامپ ګرځنده کوي. # مرحله 3: د Ollama embeddings انډولونو پیل کړئ = OllamaEmbeddings(model="llama2") # په اړتیا سره د نمونې نوم تنظیم کړئ # مرحله 3: د Ollama embeddings انډولونو پیل کړئ = OllamaEmbeddings(model="llama2") # په اړتیا سره د نمونې نوم تنظیم کړئ پړاو 4: د فیسبوک AI Similarity Search (FAISS) یو کتابتون دی چې د لوړ اندازې ویټورونو په اغیزمنه توګه څیړنې او ګروپ کولو لپاره کار کوي. د from_texts فعالیت د متن ټکټونه په ویټورونو کې بدل کیږي (د مرحله 3 څخه) او دوی په FAISS ویټور سټور کې ذخیره کوي. FAISS تاسو سره مرسته کوي چې ستاسو د پوښتنې په څیر د ویټور فاصلهونو (کوزین، یاکلیډین) په لوړ کیفیت سره پرتله کړئ. پړاو 4: د فیسبوک AI Similarity Search (FAISS) یو کتابتون دی چې د لوړ اندازې ویټورونو په اغیزمنه توګه څیړنې او ګروپ کولو لپاره کارول کیږي. د from_texts فعالیت د متن ټکټونه په ویټورونو کې بدل کیږي (د مرحله 3 څخه) او دوی په FAISS ویټور اسټور کې ذخیره کوي. FAISS تاسو سره مرسته کوي چې د ویټور فاصلهونو (cosine، euclidean) په لوړ کیفیت سره پرتله کولو سره ستاسو د پوښتنې سره ورته ټکټونه ومومئ. # پړاو 4: د FAISS وکتور سټیټ جوړ کړئ د ټولو چټکونو په کارولو سره vector_store = FAISS.from_texts(all_chunks، embeddings) # مرحله 4: د FAISS وکتور سټیټ جوړ کړئ د ټولو بکسونو په کارولو سره vector_store = FAISS.from_texts(all_chunks، embeddings) پړاو 5: موږ Ollama LLM پیل کوو، کوم چې به د پړاو 4 څخه د FAISS ویکتور سټیشن کې ذخیره شوي معلوماتو پر بنسټ ځوابونه یا پروسس پوښتنو تولید کړي. پړاو 5: موږ Ollama LLM پیل کوو، کوم چې له مرحله 4 څخه د FAISS ویکتور سټیشن کې ذخیره شوي معلوماتو پر بنسټ ځوابونه یا پروسس پوښتنو تولید کوي. # مرحله 5: د Ollama LLM llm = Ollama (model="llama2", د حرارت درجه=0.3) # مرحله 5: د Ollama LLM llm = Ollama (model="llama2", د حرارت=0.3) په ټولیزه توګه، مرحله 3-5 د RAG وړاندیز کوي، کوم چې د LLM کولی شي د ویټور سټیشن کې د ذخیره شوي ټوټې څخه معلوماتو اخلي او د ترلاسه شوي کنکشن څخه د کاروونکي پوښتنې ته تر ټولو مهم ډول ځواب ورکړي. پړاو 6: دلته، موږ د ask_question_with_fallback فابريکه تعریف کوو چې د ذخیره شوي معلوماتو ته پوښتنه وکړي ترڅو د کاروونکي پوښتنې ځواب ورکړي. مګر که دا ورته ډکونه نه کولی شي یا د شواهدې کچه کم وي، دا به د زیربنا LLM (Ollama دلته) په عمومي معلوماتو ته ورسیږي. پړاو 6: دلته، موږ د ask_question_with_fallback فابريکه تعریف کوو چې د ذخیره شوي معلوماتو ته پوښتنه ورکوي ترڅو د کاروونکي پوښتنې ځواب ورکوي. مګر که دا د ورته ډکونه نه کولی شي یا د شواهدې کچه کم وي، دا به د زیرمې LLM (Ollama دلته) په عمومي معلوماتو ته ورسیږي. rag> # مرحله 6: د پوښتنې په اړه د پوښتنې په اړه د کارولو د کارولو د کارولو د جوړولو د کارولو د کارولو د کارولو د جوړولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کارولو د کار # مرحله 6: د پوښتنې ځواب دنده def ask_question_with_fallback(query) جوړ کړئ: # د اړونده سندونه docs = vector_store.similarity_search(query, k=3) docs = vector_store.get.similarity_search(query, k=3) لپاره د ډک لپاره جوړ کړئ: print(f"Retrieved doc_knowledge(query) د موادو لپاره: {doc.page_knowledge[:200]}) # که د اړونده سندونو لپاره د اړونده سندونو لپاره یا د کم شواهد ته اړتیا نلري، د عمومي معلوماتو لپاره #if docs یا ټول (doc.metadata.get.get('score 1.0',) < 0.3 لپاره د ډک لپاره: پړاو 7: دا د پاملرنې دنده ده. که په پړاو 6 کې د اړونده ډاټا نلري، د LLM خپل عمومي معلوماتو کاروي ترڅو د کاروونکي پوښتنې ځواب ورکړي. پړاو 7: دا د پیاوړی دنده ده. که په پړاو 6 کې د اړونده سندونه نه ترلاسه کیدی شي، د LLM خپل عمومي پوهې کاروي چې د کاروونکي پوښتنې ځواب ورکوي. # پړاو 7: د عام معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوم # پړاو 7: د عام معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوماتو د معلوم پړاو 8: دا پړاو د دې RAG میکانیزم په کارولو لپاره یو مثال ښيي. تاسو د ماډل ته پوښتنه ورکړئ، او د LLM ستاسو د پوښتنې ځواب لپاره بهرني یا داخلي معلوماتو کاروي. پړاو 8: دا پړاو د دې RAG میکانیزم په کارولو لپاره یو مثال ښيي. تاسو د ماډل ته پوښتنه ورکړئ، او د LLM ستاسو د پوښتنې ځواب کولو لپاره بهرني یا داخلي معلوماتو کاروي. #پړاو 8 # د کارولو د غوښتنلیک د مثال = "کیا د سرطان د مدیریت په اړه ترټولو سخت برخه ده؟" # د خپل واقعي پوښتنې پایلې = ask_question_with_fallback(query) # د نمونې پایلې چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ #پړاو 8 # د کارولو د غوښتنلیک د مثال = "کیا د سرطان د مدیریت په اړه ترټولو سخت برخه ده؟" # د خپل واقعي پوښتنې پایلې = ask_question_with_fallback(query) # د نمونې پایلې چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ چاپ < د HR> د مرحله 8 څخه زما محصول لاندې دی. د ماډل د RAG کاروي، کوم چې د FAISS سټور څخه ورته سند راټولوي او زما پوښتنې ځواب ورکوي. د مرحله 8 څخه زما محصول لاندې دی. د ماډل د RAG کاروي، کوم چې د FAISS د پلټنې څخه یو ورته سند مشخصوي او زما پوښتنې ځواب ورکوي. په پایله کې، د URLs سره د RAG ګټورولو یو قوي لارښوونې ده چې د دیابت په اړه د پوښتنو کې د ګټور معلوماتو ترلاسه کولو لپاره. د Reddit په څیر ټولنیز پلیټ فارمونو څخه د واقعي نړۍ د معلوماتو سره یوځای کول، موږ کولی شو شخصي او دقیق معلومات وړاندې کوو - په پایله کې، هغه څوک چې دا په هر ورځ سره ژوند کوي څخه ښه درکوي؟ دا روش نه یوازې د لګښت اغیزمن دی، بلکه هم د همکارۍ ته وده ورکوي، په پایله کې د انفراديانو لپاره د دیابت مدیریت ملاتړ ښه کوي. لکه څنګه چې د AI پرمختګ کوي، د روغتیا او خوشحالی د ښه کولو پیاوړتیا نلري. د سوزي هیزلډ لخوا د انځور ځانګړتیاوې: https://www.pexels.com/photo/close-up-photo-of-sugar-cubes-in-glass-jar-2523650/ د Suzy Hazelwood انځور ځانګړتیاوې: https://www.pexels.com/photo/close-up-photo-of-sugar-cubes-in-glass-jar-2523650/