يزيد بن شيحه نشر 3 ديسمبر أرسل تقرير نشر 3 ديسمبر السلام عليكم اريد ان اتعلم الGraph و طرق استخدام وكيف استخدم معه ragGraph ولكن ليس لدي اي مصادر له وبحثت ورأيت ان لا يوجد طريق واضح للمضي به احتاج مساعدتكم لرسم طريق واضح لمبتدئ في graph 2 اقتباس
0 Mustafa Suleiman نشر 3 ديسمبر أرسل تقرير نشر 3 ديسمبر تقصد مجال GraphRAG وللتوضيح هو مجال حديث ظهر بقوة في أخر عام، ولذلك المصادر التعليمية الممنهجة له قليلة، ومعظمها عبارة عن أوراق بحثية أو مقالات تقنية متناثرة. في البداية تحتاج إلى استيعاب أساسيات Graph Database وهي فهم يتم تخزين البيانات في الـ Graph أصلاً، وهو يتكون من شيئين فقط: Nodes العقد، وهي الكيانات مثل يزيد، شركة جوجل، كتاب. Relationships و Edges أي العلاقات وهي الروابط بين العقد مثل يزيد يعمل في جوجل. ويوجد Properties وهي خصائص داخل العقدة أو العلاقة. ومثلما يوجد SQL لقواعد البيانات العادية، فيوجد لغة تسمى Cypher لقواعد بيانات الـ Graph وتحديداً Neo4j، وهي لغة سهلة تشبه الرسم. أنصحك بالتعلم من خلال المصدر الرسمي المجاني وهو: https://graphacademy.neo4j.com/categories/beginners ثم الإنتقال للمستوى المتوسط لتتعلم كيف تعمل على نص غير مهيكل وتحوله إلى Nodes و Relationships وذلك من خلال بايثون: https://graphacademy.neo4j.com/categories/intermediate/ ثم الإنتقال للمستوى المتقدم: https://graphacademy.neo4j.com/categories/advanced/ 1 اقتباس
0 ياسر مسكين نشر 3 ديسمبر أرسل تقرير نشر 3 ديسمبر وعليكم السلام ورحمة الله وبركاته، أولا ال Graph هو هيكل بيانات يستخدم لتمثيل العلاقات والارتباطات بين الأشياء أو الكيانات المختلفة على شكل عقد (Nodes) وروابط (Edges) ويستخدم في مجالات متعددة مثل شبكات التواصل الاجتماعي، تحليل البيانات، الذكاء الاصطناعي وغيرها أما ال ragGraph فهو تقنية متقدمة تستخدم الرسوم البيانية (Graphs) لتحسين استرجاع المعلومات عن طريق ربط بيانات مترابطة في knowledge graphs ومن ثم استخدام هذه المعرفة الموسعة لتعزيز نتائج البحث أو التحليل. ما أنصحك به هو تعلم التقنية من مصادرها الرسمية من هنا: https://microsoft.github.io/graphrag/ https://github.com/microsoft/graphrag https://graphacademy.neo4j.com/courses/neo4j-fundamentals/ https://graphacademy.neo4j.com/categories/beginners/ 1 اقتباس
0 يزيد بن شيحه نشر 4 ديسمبر الكاتب أرسل تقرير نشر 4 ديسمبر ولكن كيف طريقة ربط LLMs مع قاعدة البيانات 1 اقتباس
0 محمد_عاطف نشر 4 ديسمبر أرسل تقرير نشر 4 ديسمبر بتاريخ 2 ساعة قال يزيد بن شيحه: ولكن كيف طريقة ربط LLMs مع قاعدة البيانات إن ربط LLMs مع قواعد البيانات يتم عبر عدة طرق ويعتمد على ما تريد فعله: فمثلا هل تريد أن يقرأ الـ LLM البيانات من قاعدة البيانات. أو هل تريد أن يولد استعلامات SQL. أو هل تريد RAG (استرجاع معلومات). أو هل تريد ذكاء اصطناعي فوق قاعدة البيانات مثل natural language queries . وبما أن سؤالك عن ال RAG سأوضح لك كيف ذلك . إن ربط LLM مع قاعدة البيانات عبر RAG مناسب لو لديك بيانات غير مهيكلة مثل النصوص أو وصف منتجات أو ملفات PDF أو وثائق. والربط بين نماذج اللغة الكبيرة (LLMs) وقواعد البيانات باستخدام تقنية التوليد المعزز بالاسترجاع (RAG) يتم عبر عمليتين رئيسيتين: أولا تحويل البيانات الخارجية الموجودة في قاعدة البيانات إلى تمثيلات عددية (vectors or embeddings) وتخزن في قاعدة بيانات متجهية ثم عند استلام سؤال أو استعلام من المستخدم يتم تحويله أيضا إلى تمثيلات عددية تستخدم للبحث في قاعدة البيانات لإيجاد المعلومات الأكثر صلة. وبعد إيجاد النتائج ذات الصلة يتم دمج هذه البيانات المسترجعة مع الاستعلام الأصلي وإعطائها لنموذج اللغة الكبير مما يزيد دقة وصحة الإجابات ويقلل من الأخطاء الناتجة عن الهلوسة اللغوية. ولتنفيذ ذلك يجب إتباع الخطوات التالية : أولا نأخذ النصوص من قاعدة البيانات. ثم نقوم بتحويلها إلى embeddings (متجهات). نقوم بحفظ المتجهات في Vector DB مثل: Pinecone Weaviate Chroma MongoDB Atlas Vector Search بعد ذلك المستخدم يقوم بطرح السؤال. نقوم بجعل التطبيق يبحث عن المعلومات الأقرب باستخدام ال embeddings. وأخيرا نرسل النتائج لل LLM كي يشكل الإجابة. وإليك المصادر التالية : https://mongodb-developer.github.io/mongodb-rag/docs/intro https://python.langchain.com/docs/use_cases/question_answering/ https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/retrieval-augmented-generation-rag-and-vector-databases-generative-ai-for-beginners اقتباس
0 يزيد بن شيحه نشر الأربعاء في 10:28 الكاتب أرسل تقرير نشر الأربعاء في 10:28 بتاريخ On 4/12/2025 at 13:18 قال محمد_عاطف: إن ربط LLMs مع قواعد البيانات يتم عبر عدة طرق ويعتمد على ما تريد فعله: فمثلا هل تريد أن يقرأ الـ LLM البيانات من قاعدة البيانات. أو هل تريد أن يولد استعلامات SQL. أو هل تريد RAG (استرجاع معلومات). أو هل تريد ذكاء اصطناعي فوق قاعدة البيانات مثل natural language queries . وبما أن سؤالك عن ال RAG سأوضح لك كيف ذلك . إن ربط LLM مع قاعدة البيانات عبر RAG مناسب لو لديك بيانات غير مهيكلة مثل النصوص أو وصف منتجات أو ملفات PDF أو وثائق. والربط بين نماذج اللغة الكبيرة (LLMs) وقواعد البيانات باستخدام تقنية التوليد المعزز بالاسترجاع (RAG) يتم عبر عمليتين رئيسيتين: أولا تحويل البيانات الخارجية الموجودة في قاعدة البيانات إلى تمثيلات عددية (vectors or embeddings) وتخزن في قاعدة بيانات متجهية ثم عند استلام سؤال أو استعلام من المستخدم يتم تحويله أيضا إلى تمثيلات عددية تستخدم للبحث في قاعدة البيانات لإيجاد المعلومات الأكثر صلة. وبعد إيجاد النتائج ذات الصلة يتم دمج هذه البيانات المسترجعة مع الاستعلام الأصلي وإعطائها لنموذج اللغة الكبير مما يزيد دقة وصحة الإجابات ويقلل من الأخطاء الناتجة عن الهلوسة اللغوية. ولتنفيذ ذلك يجب إتباع الخطوات التالية : أولا نأخذ النصوص من قاعدة البيانات. ثم نقوم بتحويلها إلى embeddings (متجهات). نقوم بحفظ المتجهات في Vector DB مثل: Pinecone Weaviate Chroma MongoDB Atlas Vector Search بعد ذلك المستخدم يقوم بطرح السؤال. نقوم بجعل التطبيق يبحث عن المعلومات الأقرب باستخدام ال embeddings. وأخيرا نرسل النتائج لل LLM كي يشكل الإجابة. وإليك المصادر التالية : https://mongodb-developer.github.io/mongodb-rag/docs/intro https://python.langchain.com/docs/use_cases/question_answering/ https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/retrieval-augmented-generation-rag-and-vector-databases-generative-ai-for-beginners لا اقصد GRAPHRAG وليس RAG العادي اقتباس
0 Sherif Aboghazala نشر الأربعاء في 23:59 أرسل تقرير نشر الأربعاء في 23:59 أولاً: كيف تربط LLM بقاعدة بيانات؟ هناك 3 طرق رئيسية، حسب ما تريد فعله: 1) ربط مباشر (Natural Language → SQL) تستخدم LLM لتحويل سؤال المستخدم إلى SQL، ثم تنفّذ SQL على قاعدة البيانات. مثال بايثون: query = llm.generate("كم عدد العملاء في 2023؟ اكتب SQL فقط") rows = db.execute(query) المناسب: الاستعلامات العددية والتحليلية. 2) استخدام Connectors جاهزة مثل: LangChain SQLDatabaseChain LlamaIndex SQL Retriever تعطي LLM القدرة على فهم مخطط قاعدة البيانات (schema) ثم توليد SQL آمن. 3) ربط عبر Graph (مهم لـ GRAPHRAG) تقوم بتحويل البيانات إلى: Entities → Relationships → Graph ثم LLM يستعلم من الـ Graph بدلاً من SQL. هذا هو الأساس الذي يستخدمه GRAPHRAG. ثانياً: كيف تربط LLM مع GRAPHRAG؟ العملية بسيطة ومكونة من 3 أجزاء: 1) بناء الـ Graph من البيانات بعد تركيب GRAPHRAG: graphrag init project graphrag run هذا يحول النصوص أو الجداول إلى: كيانات – علاقات – مجتمعات – Graph. 2) تشغيل محرك الاستعلام (LLM + Graph) بعد البناء: graphrag chat أو باستخدام Python: from graphrag import GraphRAG engine = GraphRAG("myproject") engine.query("ما العلاقة بين المنتج X والمبيعات؟") الـ LLM هنا لا يتعامل مع النص الخام، بل مع: Graph + Summaries + Context Hierarchy. ثالثاً: الطريق الواضح لتعلّم GRAPHRAG الخطوات: شغّل GRAPHRAG على بيانات بسيطة افهم الملفات: config.yaml pipeline.yaml model_config.yaml جرّب استعلامات بسيطة عدّل إعدادات استخراج الكيانات والعلاقات جرّبه على قاعدة بيانات حقيقية: استخرج البيانات → حولها إلى نص/JSON → أدخلها لـ GRAPHRAG اربطه بتطبيق (API – n8n – Streamlit) 1 اقتباس
0 يزيد بن شيحه نشر أمس الساعة 10:09 الكاتب أرسل تقرير نشر أمس الساعة 10:09 بتاريخ 10 ساعة قال Sherif Aboghazala: أولاً: كيف تربط LLM بقاعدة بيانات؟ هناك 3 طرق رئيسية، حسب ما تريد فعله: 1) ربط مباشر (Natural Language → SQL) تستخدم LLM لتحويل سؤال المستخدم إلى SQL، ثم تنفّذ SQL على قاعدة البيانات. مثال بايثون: query = llm.generate("كم عدد العملاء في 2023؟ اكتب SQL فقط") rows = db.execute(query) المناسب: الاستعلامات العددية والتحليلية. 2) استخدام Connectors جاهزة مثل: LangChain SQLDatabaseChain LlamaIndex SQL Retriever تعطي LLM القدرة على فهم مخطط قاعدة البيانات (schema) ثم توليد SQL آمن. 3) ربط عبر Graph (مهم لـ GRAPHRAG) تقوم بتحويل البيانات إلى: Entities → Relationships → Graph ثم LLM يستعلم من الـ Graph بدلاً من SQL. هذا هو الأساس الذي يستخدمه GRAPHRAG. ثانياً: كيف تربط LLM مع GRAPHRAG؟ العملية بسيطة ومكونة من 3 أجزاء: 1) بناء الـ Graph من البيانات بعد تركيب GRAPHRAG: graphrag init project graphrag run هذا يحول النصوص أو الجداول إلى: كيانات – علاقات – مجتمعات – Graph. 2) تشغيل محرك الاستعلام (LLM + Graph) بعد البناء: graphrag chat أو باستخدام Python: from graphrag import GraphRAG engine = GraphRAG("myproject") engine.query("ما العلاقة بين المنتج X والمبيعات؟") الـ LLM هنا لا يتعامل مع النص الخام، بل مع: Graph + Summaries + Context Hierarchy. ثالثاً: الطريق الواضح لتعلّم GRAPHRAG الخطوات: شغّل GRAPHRAG على بيانات بسيطة افهم الملفات: config.yaml pipeline.yaml model_config.yaml جرّب استعلامات بسيطة عدّل إعدادات استخراج الكيانات والعلاقات جرّبه على قاعدة بيانات حقيقية: استخرج البيانات → حولها إلى نص/JSON → أدخلها لـ GRAPHRAG اربطه بتطبيق (API – n8n – Streamlit) لدي بيانات خاصة والمشكلة التي تواجهني انها حجمها كبير ولا استطيع اعطاءها النماذج المفتوحة كـ Gemini or gpt وكذلك لو بحمل اي نموذج لغوي دقته سيئه للاسف هل يوجد طرق اخرى ممكن تفيدني ؟؟ او تسهل العمليه ؟ اقتباس
0 Sherif Aboghazala نشر أمس الساعة 21:08 أرسل تقرير نشر أمس الساعة 21:08 بتاريخ 10 ساعة قال يزيد بن شيحه: لدي بيانات خاصة والمشكلة التي تواجهني انها حجمها كبير ولا استطيع اعطاءها النماذج المفتوحة كـ Gemini or gpt وكذلك لو بحمل اي نموذج لغوي دقته سيئه للاسف هل يوجد طرق اخرى ممكن تفيدني ؟؟ او تسهل العمليه ؟ نعم، يوجد حلول حقيقية وعملية تستطيع استخدامها عندما تكون بياناتك حساسة وكبيرة ولا يمكنك إرسالها إلى نماذج سحابية مثل GPT أو Gemini، وفي نفس الوقت النماذج المحلية ضعيفة. هذه بالضبط مشكلة شائعة في الشركات التي تعمل على GraphRAG. إليك أفضل الخيارات الآمنة والعملية بدون تعقيد: 1) استخدام LLM سحابي لكن بدون إرسال البيانات (Zero-Data / On-Device Processing) بعض الشركات بدأت توفر وضع اسمه: Zero-data mode أو Data Minimization الفكرة: ترسل دائماً ملخصات صغيرة جداً آمنة وليس البيانات الأصلية. وهذا يناسب GRAPHRAG تماماً، لأنك تستطيع: معالجة بياناتك محلياً بناء الكيانات والعلاقات بالـ locally إرسال فقط “تمثيل مجرد” للكيانات (بدون نص خام) مثال: بدلاً من إرسال تقرير حساس، ترسل فقط: اسم كيان: "Client A" علاقة: "Increased sales by 30%" بدون أي تفاصيل سرية. 2) استخدام نماذج صغيرة محلياً لكن تحسينها باستخدام تقنيات خاصة الحقائق الآن: النماذج الصغيرة (مثل Mistral 7B، Llama 8B، Qwen 7B) عندما تعمل بدون تحسين تكون فعلاً ضعيفة. لكن هناك تحسينات ترفع الجودة بشكل كبير جداً بدون تدريب مكلف: 1) RAG + GraphRAG يعوض ضعف النموذج المحلي بنسبة كبيرة. 2) Fine-Tuning خفيف (LoRA) يكلفك: ذاكرة 8GB تدريب لمدة ساعة ويعطي دقة أعلى بكثير. 3) استخدام quantization مثل GGUF أو GPTQ لتشغيل نماذج 8B على جهاز متوسط بدون فقد كبير في الجودة. 3) استخدام نماذج متخصصة بدلاً من "LLM عام" غالباً المشكلة ليست في الحجم، بل في اختيار نموذج غير مناسب. أمثلة قوية: DeepSeek-R1 Distill 14B Qwen2.5 14B Mixtral 8x7B Llama 3.1 8B Instruct Phi-3 Medium (جيد جداً على المعلومات المنظمة) هذه النماذج حجمها متوسط وأداؤها ممتاز إذا تم دمجها مع RAG/GraphRAG. 4) معالجة البيانات الضخمة محلياً ثم استخدام LLM فقط للبنية إذا بياناتك كبيرة جداً، لا ترسلها للنموذج. بدلاً من ذلك: Local Preprocessing استخراج الكيانات والعلاقات محلياً بناء Graph دمج النصوص وفهرستها Remote Small Tasks إرسال: سؤال أسماء كيانات توصيفات صغيرة وليس البيانات الأصلية. هذا يجعل النظام آمناً 100%. 5) استخدام LLM داخل بيئة سحابية خاصة (Private Cloud) ليس بالضرورة أن تستخدم خدمات عامة مثل GPT. يمكنك استخدام: Azure OpenAI Private Network Google Vertex AI Private Service AWS Bedrock PrivateLink هذه تضمن: البيانات لا تخرج من شبكتك لا تُستخدم لتدريب النماذج تشغل فقط inference مناسبة جداً للبيانات الحساسة. 6) بالنسبة لـ GraphRAG بالتحديد هو لا يحتاج LLM قوي جداً في كل خطوة. يوجد 3 مراحل: استخراج الكيانات والعلاقات بناء المجتمعات تلخيص hierarchies الاستعلام النهائي يمكنك تقسيم العمل كالآتي: 1 و2 محلياً بالكامل (بدون نموذج قوي) 3 بنموذج متوسط محلي 4 بنموذج سحابي بدون إرسال بيانات حساسة (فقط السياق المختصر) وبذلك تحل المشكلة تماماً. لذا الخلاصه نعم، يمكنك العمل على بياناتك الحساسة بدون إرسالها إلى نماذج سحابية، وما زال بإمكانك الحصول على دقة ممتازة عبر: GraphRAG Local preprocessing تحسين النماذج الصغيرة Zero-data usage Private cloud inference LoRA fine-tuning Quantization إذا تريد، أقدم لك: خطة كاملة لبناء GraphRAG آمن 100% اختيار أفضل نموذج محلي لك تصميم بنية نظام تجمع بين الأمن والقوة كود جاهز للربط بقاعدة بياناتك أخبرني فقط نوع بياناتك (نصوص؟ جداول؟ تقارير؟). اقتباس
السؤال
يزيد بن شيحه
السلام عليكم
اريد ان اتعلم الGraph و طرق استخدام وكيف استخدم معه ragGraph
ولكن ليس لدي اي مصادر له وبحثت ورأيت ان لا يوجد طريق واضح للمضي به
احتاج مساعدتكم لرسم طريق واضح لمبتدئ في graph
8 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.