Skip to main content
هذه الصفحة للكود المبني على حلقة الـ agent في Vercel AI SDK: generateText({ tools }) أو streamText({ tools }) مع حد للخطوات، أو new ToolLoopAgent({ ... }). تقدر تحتفظ بالـ models والـ tools وواجهة useChat الأمامية كما هي. ثلاثة adapters تنقلها بدون إعادة كتابة: وما تحصل عليه بالمقابل هو ما يضيفه createAgent() فوق حلقة الـ model: approvals متينة تصمد بعد إعادة التشغيل، و sessions في الذاكرة أو ملفات أو SQLite، واستئناف بعد الانهيار، وميزانيات، وقواعد صلاحيات، و sub-agents و handoffs، وخوادم MCP، والتتبّع، والتقييمات (evals).

المقابلات

الـ Models: fromAiSdk()

fromAiSdk(model) يغلّف أي LanguageModel من الـ AI SDK ليصبح الـ provider الخاص بالـ agent، فالـ model الذي ضبطته مسبقًا (المفاتيح، الـ base URL، خيارات الـ provider) يشتغل كما هو:
مع المزوّدين المدمجين، سلسلة الـ model أقصر: createAgent({ model: 'openai/gpt-4o-mini' }). راجع الـ Providers للخيارات ولإصدارات ai الرئيسية المدعومة.

الـ Tools: fromAiSdkTools()

fromAiSdkTools() يأخذ نفس الـ record الذي تمرّره إلى generateText({ tools }) أو ToolLoopAgent، ويرجع tools خاصة بـ Lousho؛ وكل مفتاح يصير اسم الـ tool:
التحويل لا يستورد ai، فالـ tool يشتغل أيًّا كان إصدار ai الذي بناه، والـ object العادي يشتغل كذلك. هذا المثال يعمل بدون شبكة:
كيف يُنقل كل جزء من tool الـ AI SDK: لا يُنقل experimental_context، ولا onInputStart / onInputDelta / onInputAvailable، ولا toModelOutput. وللـ tool الجديد، الأفضل defineTool() (الـ Tools): فهو يقبل أيضًا timeoutMs وannotations وeditsFiles و deferLoading.

useChat

الواجهة الأمامية المبنية بـ useChat تبقى تعمل: الـ route يرجع الـ run الخاص بالـ agent كـ UI message stream.
الـ approvals وأجزاء الـ tools وجهة العميل موجودة في AI SDK UI؛ وroute جاهز للـ App Router هو createRouteHandler(agent) (Next.js).

انظر أيضًا

  • المقارنة: أين تختلف Lousho عن الـ AI SDK، بما في ذلك المواضع التي تكون فيها Lousho أضعف.
  • الانتقال إلى createAgent() يخص الـ API الأقدم في Lousho نفسها، AgentBuilder / AgentExecutor، وليس الـ AI SDK.