التثبيت
llama-index-core 0.14.23 إلى 0.15. 0.14.23 هو الإصدار حيث بدأ تدفق سير العمل بنقل أحداث الوكيل المكتوبة بشكل صريح التي يقرأها هذا المحول. تحته، تختفي أسماء النموذج وهيكل الوكيل معاً.
الضبط
async with وكذلك with وينتج أحداثاً متطابقة.
instrument() تربط معالج حدث ومعالج امتداد لموزع LlamaIndex العام. معاً يجعلان حلقة الوكيل مرئية، وليس فقط استدعاءات نموذجه.
عدد الرموز
FunctionAgent يستدعي astream_chat، وllama-index-llms-openai لا يرسل stream_options={"include_usage": True} عند البث. المزود بالتالي لا يرسل أبداً مقطع الاستخدام، ولا شيء لأي أداة ضبط لقراءته.
هذا سلوك LlamaIndex الأساسي. قم بالاشتراك في نموذجك:
استدعاءات البث غير المتزامن (
llm.chat, llm.achat) تقرر الاستخدام بدون تكوين. فقط مسار البث، وهو المسار الافتراضي للوكيل، يحتاج إلى هذا.
ما يتم تسجيله
agent_id هو FunctionAgent.name عندما تحدده، واسم فئة سير العمل وإلا. تحت AgentWorkflow، كل وكيل يأخذ دوره يحصل على امتداده الخاص المتداخل تحت سير العمل، لذا تُقرأ المسلمة كوكيلين بدلاً من واحد.
الناتج من الاسترجاع مختصر بدلاً من أن يُرمى. يعيد المسترجع المستندات، وتخزينها في الحمل سيضع مجموعة النصوص الخاصة بك في مخزن الأحداث مرة واحدة لكل استعلام. يتم الاحتفاظ بالعدد، نطاق النقاط، والمقاطع المختصرة بدلاً من ذلك.
مثال
init_run، setup_agent، run_agent_step، parse_agent_output، call_tool، وaggregate_tool_results. إنها حلقة الإطار نفسه، لذا فهي hooks بدلاً من وكلاء، مما يحافظ على معنى agent_id.
سمِّ امتدادك
agent_id هو FunctionAgent.name عندما تحدده، واسم فئة سير العمل وإلا.
AgentWorkflow، هذا الاسم هو أيضاً ما يتم تسجيل كل مسلمة تحته:
agent_id يخبرك أي وكيل قام بالعمل وparent_id يخبرك أي سير عمل انتمى إليه. يفتح الوكيل الذي يسلم التحكم لاحقاً دوره الثاني بدلاً من إعادة فتح الأول.
لف التشغيل لتجاوزه، أو لتجميع عدة وكلاء تحت أب واحد:
agent_id ذو كاردينالية منخفضة. إنها الجانب الأساسي على كل سطح لوحة معلومات، لذا استخدم دوراً أو اسم سير عمل، لا تستخدم UUID أو سلسلة لكل تشغيل.
تحكم في الجلسة
هذا المحول لا يأخذ خيارsession_id. تأتي الجلسة من النطاق المحيط، وإلا uuid4().hex مُولدة لكل تشغيل سير عمل:
الخيارات
الإنسان في الحلقة
يتم الالتقاط عند حدوث الانتظار داخل أداة:ctx.wait_for_event في خطوة سير عمل عادية لا يتم التقاطها. يمسك وقت التشغيل بالقطرة قبل وصولها للموزع، لذا تخرج الخطوة وتعاد لاحقاً بدون إشارة لمفتاح الإيقاف عليها. نمط FunctionAgent، الذي توثقه LlamaIndex، ينتظر داخل أداة ويتم التقاطه بالكامل.
مشاكل شائعة
كل عدد رموز قيمته null
كل عدد رموز قيمته null
أضف
additional_kwargs={"stream_options": {"include_usage": True}} إلى نموذجك. انظر عدد الرموز.الاستخدام مملوء لكن أعمدة الرموز فارغة
الاستخدام مملوء لكن أعمدة الرموز فارغة
LlamaIndex لا يملك حقل استخدام قياسي. يحاول المحول عدة أشكال معروفة، والتكامل الذي يسمي العدادات الخاصة به بشيء جديد لن يطابق أي منها.يشحن القاموس الخام دائماً، لذا تحقق من
usage في الحمل لترى ما سماه مزودك.usage مملوء بجانب أعمدة رموز فارغة مقصود — يفوق عدداً خاطئاً واثقاً.المخطط الزمني ممتلئ بـ setup_agent و parse_agent_output
المخطط الزمني ممتلئ بـ setup_agent و parse_agent_output
هذه حلقة FunctionAgent، مجموعة واحدة لكل تكرار. صفِّ حسب اسم hook على لوحة المعلومات. توقيتات الخطوة هذه عادة ما تكون السبب لاستخدام هذا المحول بدلاً من محول نموذج فقط.
لا شيء مسجل
لا شيء مسجل
تحقق بهذا الترتيب:
instrument() تم تشغيله قبل التشغيل؛ هناك async with failproofai_sdk.session(): حول await؛ llama-index-core هو 0.14.23 أو أحدث؛ FAILPROOFAI_SDK_STRICT=1 مضبوط، لذا يرفع hook متدهور بدلاً من أن يبتلع.التالي
كيف يعمل
الأزواج والمعرفات ودورة حياة الجلسة والتسليم.
اقرأ تتبعاً
اتبع السببية عبر الجلسة التي استقطتها للتو.
أطر عمل أخرى
LangGraph، CrewAI، Pydantic AI، والوكلاء المخصصين.

