Home
Login

إطار عمل بحثي متعمق مدفوع بالمجتمع يعتمد على نماذج اللغة الكبيرة، ويتكامل مع أدوات متخصصة مثل البحث عبر الإنترنت والزحف وتنفيذ بايثون.

MITTypeScript 14.2kbytedancedeer-flow Last Updated: 2025-06-19

DeerFlow - إطار عمل أتمتة البحث العميق

نظرة عامة على المشروع

DeerFlow (تدفق الاستكشاف العميق والبحث الفعال) هو إطار عمل بحثي عميق مفتوح المصدر ومدفوع بالمجتمع من ByteDance. يعتمد هذا المشروع على العمل المتميز للمجتمع مفتوح المصدر، ويهدف إلى الجمع بين نماذج اللغة الكبيرة والأدوات المتخصصة، بما في ذلك البحث عبر الإنترنت، والزحف، وتنفيذ كود Python، مع رد الجميل للمجتمع مفتوح المصدر.

عنوان المشروع: https://github.com/bytedance/deer-flow

الميزات الأساسية

🤖 تكامل LLM

  • يدعم تكامل معظم النماذج من خلال litellm
  • يدعم النماذج مفتوحة المصدر مثل Qwen
  • واجهة برمجة تطبيقات متوافقة مع OpenAI
  • نظام LLM متعدد الطبقات لتعقيدات المهام المختلفة

🔍 البحث والاسترجاع

  • البحث عبر الإنترنت من خلال Tavily و Brave Search وما إلى ذلك
  • استخدام Jina للزحف
  • وظائف استخراج المحتوى المتقدمة

🔗 تكامل MCP السلس

  • توسيع الوصول إلى المجالات الخاصة، والرسم البياني المعرفي، وتصفح الويب، وما إلى ذلك
  • تعزيز تكامل أدوات ومنهجيات البحث المتنوعة

🧠 حلقة التفاعل بين الإنسان والآلة

  • يدعم التعديل التفاعلي لخطة البحث باستخدام اللغة الطبيعية
  • يدعم القبول التلقائي لخطة البحث

📝 تحرير التقارير اللاحق

  • يدعم التحرير القائم على الكتل المشابه لـ Notion
  • يسمح بتحسين الذكاء الاصطناعي، بما في ذلك التنقيح بمساعدة الذكاء الاصطناعي، وتقصير الجمل وتوسيعها
  • مبني على tiptap

🎙️ إنشاء البودكاست والعروض التقديمية

  • إنشاء نصوص بودكاست مدفوعة بالذكاء الاصطناعي وتوليف الصوت
  • إنشاء عروض PowerPoint تقديمية بسيطة تلقائيًا
  • قوالب قابلة للتخصيص للمحتوى المخصص

البنية التقنية

يطبق DeerFlow بنية نظام متعدد الوكلاء معيارية، مصممة خصيصًا لأتمتة البحث وتحليل التعليمات البرمجية. يعتمد النظام على LangGraph، ويحقق سير عمل مرن قائم على الحالة من خلال نظام تمرير رسائل محدد بوضوح، حيث تتواصل المكونات مع بعضها البعض.

مكونات سير العمل

يستخدم النظام سير عمل مبسطًا، يتضمن المكونات التالية:

المنسق (Coordinator)

  • نقطة الدخول لإدارة دورة حياة سير العمل
  • يبدأ عملية البحث بناءً على مدخلات المستخدم
  • يفوض المهام إلى المخطط عند الاقتضاء
  • يعمل كواجهة رئيسية بين المستخدم والنظام

المخطط (Planner)

  • مكون استراتيجي لتحليل المهام والتخطيط
  • يحلل أهداف البحث وينشئ خطة تنفيذ منظمة
  • يحدد ما إذا كان هناك سياق كافٍ أو حاجة إلى مزيد من البحث
  • يدير عملية البحث ويقرر متى يتم إنشاء التقرير النهائي

فريق البحث (Research Team)

مجموعة من الوكلاء المتخصصين الذين ينفذون الخطة:

  • الباحث (Researcher): يستخدم أدوات مثل محركات البحث على الإنترنت، والزحف، وحتى خدمات MCP للبحث على الإنترنت وجمع المعلومات
  • المبرمج (Coder): يستخدم أداة Python REPL لمعالجة تحليل التعليمات البرمجية والتنفيذ والمهام التقنية

يمكن لكل وكيل الوصول إلى أدوات محددة محسّنة لدوره، ويعمل داخل إطار عمل LangGraph.

المراسل (Reporter)

  • معالج المرحلة النهائية لمخرجات البحث
  • يلخص نتائج فريق البحث
  • يعالج وينظم المعلومات التي تم جمعها
  • ينشئ تقرير بحث شامل

التثبيت والبدء السريع

متطلبات النظام

  • Python 3.12+
  • Node.js (لواجهة المستخدم على الويب)
  • يوصى باستخدام uv و nvm و pnpm

خطوات التثبيت

# استنساخ المستودع
git clone https://github.com/bytedance/deer-flow.git
cd deer-flow

# تثبيت التبعيات، سيتعامل uv مع مترجم Python وإنشاء البيئة الافتراضية، وتثبيت الحزم المطلوبة
uv sync

# تكوين متغيرات البيئة
cp .env.example .env
# تكوين مفاتيح API الخاصة بك:
# - Tavily: https://app.tavily.com/home
# - Brave Search: https://brave.com/search/api/
# - volcengine TTS: أضف بيانات اعتماد TTS الخاصة بك إذا كانت لديك

# تكوين نموذج LLM ومفتاح API
cp conf.yaml.example conf.yaml

# تثبيت marp لإنشاء PPT
brew install marp-cli

تشغيل المشروع

واجهة المستخدم الطرفية (أسرع طريقة)

uv run main.py

واجهة المستخدم على الويب

# أولاً، قم بتثبيت تبعيات واجهة المستخدم على الويب
cd deer-flow/web
pnpm install

# تشغيل الخادم الخلفي والأمامي (وضع التطوير)
# macOS/Linux
./bootstrap.sh -d

# Windows
bootstrap.bat -d

ثم قم بزيارة http://localhost:3000 لتجربة واجهة المستخدم على الويب.

محركات البحث المدعومة

يدعم DeerFlow العديد من محركات البحث، والتي يمكن تكوينها باستخدام متغير SEARCH_API في ملف .env:

  • Tavily (افتراضي): واجهة برمجة تطبيقات بحث مصممة خصيصًا لتطبيقات الذكاء الاصطناعي
  • DuckDuckGo: محرك بحث يركز على الخصوصية، ولا يتطلب مفتاح API
  • Brave Search: محرك بحث يركز على الخصوصية مع ميزات متقدمة
  • Arxiv: متخصص في البحث عن الأوراق العلمية للدراسات الأكاديمية

مثال على التكوين:

# اختر واحدًا: tavily, duckduckgo, brave_search, arxiv
SEARCH_API=tavily

تكامل تحويل النص إلى كلام

يتضمن DeerFlow وظيفة تحويل النص إلى كلام (TTS)، مما يسمح لك بتحويل تقارير البحث إلى كلام. تستخدم هذه الوظيفة واجهة برمجة تطبيقات volcengine TTS لإنشاء صوت عالي الجودة، وتدعم السرعة والحجم والنبرة المخصصة.

مثال على استدعاء API

curl --location 'http://localhost:8000/api/tts' \
--header 'Content-Type: application/json' \
--data '{
"text": "هذا اختبار لوظيفة تحويل النص إلى كلام.",
"speed_ratio": 1.0,
"volume_ratio": 1.0,
"pitch_ratio": 1.0
}' \
--output speech.mp3

التطوير والتصحيح

تشغيل الاختبارات

# تشغيل جميع الاختبارات
make test

# تشغيل ملف اختبار معين
pytest tests/integration/test_workflow.py

# تشغيل اختبار التغطية
make coverage

# تشغيل فحص التعليمات البرمجية
make lint

# تنسيق التعليمات البرمجية
make format

تصحيح LangGraph Studio

يستخدم DeerFlow LangGraph كهيكل لسير العمل الخاص به. يمكنك استخدام LangGraph Studio لتصحيح وتصور سير العمل في الوقت الفعلي.

# تثبيت مدير حزم uv (إذا لم يكن موجودًا)
curl -LsSf https://astral.sh/uv/install.sh | sh

# تثبيت التبعيات وتشغيل خادم LangGraph
uvx --refresh --from "langgraph-cli[inmem]" --with-editable . --python 3.12 langgraph dev --allow-blocking

بعد بدء تشغيل الخادم، يمكنك الوصول إلى:

أمثلة على الاستخدام

معلمات سطر الأوامر

# تشغيل استعلام معين
uv run main.py "ما هي العوامل التي تؤثر على اعتماد الذكاء الاصطناعي في الرعاية الصحية؟"

# التشغيل بمعلمات تخطيط مخصصة
uv run main.py --max_plan_iterations 3 "كيف يؤثر الحوسبة الكمومية على علم التشفير؟"

# التشغيل في الوضع التفاعلي
uv run main.py --interactive

# عرض جميع الخيارات المتاحة
uv run main.py --help

حلقة التفاعل بين الإنسان والآلة

يتضمن DeerFlow آلية تفاعل بين الإنسان والآلة، مما يسمح لك بمراجعة خطة البحث وتحريرها والموافقة عليها قبل التنفيذ:

  1. مراجعة الخطة: عند تمكين التفاعل بين الإنسان والآلة، سيعرض النظام خطة البحث التي تم إنشاؤها لمراجعتها قبل التنفيذ
  2. تقديم الملاحظات: يمكنك:
    • قبول الخطة بالرد بـ [ACCEPTED]
    • تحرير الخطة بتقديم ملاحظات (على سبيل المثال: [EDIT PLAN] أضف المزيد من الخطوات حول التنفيذ التقني)
  3. القبول التلقائي: يمكنك تمكين القبول التلقائي لتخطي عملية المراجعة

تقارير نموذجية

يتضمن المشروع العديد من التقارير النموذجية التي تعرض وظائف DeerFlow:

  • تقرير تحليل OpenAI Sora
  • تقرير بروتوكول الوكيل إلى الوكيل من Google
  • تحليل شامل لـ MCP (بروتوكول سياق النموذج)
  • تحليل تقلبات أسعار البيتكوين
  • استكشاف عميق لنماذج اللغة الكبيرة
  • أفضل الممارسات للبحث العميق في Claude
  • العوامل المؤثرة في اعتماد الذكاء الاصطناعي في الرعاية الصحية
  • تأثير الحوسبة الكمومية على علم التشفير
  • أبرز أداء كريستيانو رونالدو

شكر وتقدير

يعتمد DeerFlow على العمل المتميز للمجتمع مفتوح المصدر، مع تقدير خاص لـ:

  • LangChain: يوفر تفاعلات LLM ممتازة وإطار عمل السلسلة
  • LangGraph: نهج مبتكر في تنسيق الوكلاء المتعددين

تجسد هذه المشاريع القوة التحويلية للتعاون مفتوح المصدر، ونحن فخورون ببناء DeerFlow على أساسها.

Star History Chart