إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
Microsoft.Agents.AI.LocalCodeActتشغيل Python التي تم إنشاؤها في عملية تابعة في بيئة العامل. يوفر نمط موفر CodeAct دون الحاجة إلى وقت تشغيل ضيف Hyperlight.
يستخدم هذا التكامل نمط CodeAct ويعتمد على بيئة المضيف للعزل.
تحذير
CodeAct المحلي ليس بيئة الاختبار المعزولة للأمان. قم بتشغيله فقط حيث توفر حاوية خارجية أو جهاز ظاهري أو بيئة استضافة مدارة عزل العملية ونظام الملفات والشبكة وبيانات الاعتماد.
تثبيت الحزمة
dotnet add package Microsoft.Agents.AI.LocalCodeAct --prerelease
تتطلب الحزمة مسارا صريحا Python قابلا للتنفيذ.
تكوين الموفر
تسجيل أدوات المضيف من خلال LocalCodeActProviderOptions. يمكن للتعليمات البرمجية التي تم إنشاؤها استدعاء تلك الأدوات فقط من خلال await call_tool(...). تطبيق حدود التنفيذ على وقت تشغيل العملية الفرعية المرتبطة والإخراج الملتقط.
new Dictionary<string, object> { ["id"] = 3, ["name"] = "Charlie", ["role"] = "admin" },
],
["products"] =
[
new Dictionary<string, object> { ["id"] = 101, ["name"] = "Widget", ["price"] = 9.99 },
new Dictionary<string, object> { ["id"] = 102, ["name"] = "Gadget", ["price"] = 19.99 },
],
};
return data.TryGetValue(table, out var rows) ? rows : [];
}
// ── LocalCodeAct provider with sandbox-only host tools ───────────────────────
var codeActOptions = new LocalCodeActProviderOptions
{
Tools =
[
AIFunctionFactory.Create(Compute, name: "compute"),
AIFunctionFactory.Create(FetchData, name: "fetch_data"),
],
ExecutionLimits = new ProcessExecutionLimits { TimeoutSeconds = 5 },
};
var codeAct = new LocalCodeActProvider(pythonExecutable, codeActOptions);
// ── Build the hosted agent ───────────────────────────────────────────────────
// WARNING: DefaultAzureCredential is convenient for development but requires careful
// consideration in production. Consider a specific credential (for example
// ManagedIdentityCredential) to avoid latency, unintended credential probing, and
// fallback security risks.
AIAgent agent = new AIProjectClient(new Uri(endpoint), new DefaultAzureCredential())
عناصر تحكم دفاعية متعمقة
توفر CodeAct المحلية:
- التحقق من صحة AST مع عمليات الاستيراد والمضمنات المسموح بها والمحظرة القابلة للتكوين.
- تنفيذ عملية فرعية Python مباشرة دون استدعاء shell.
- حدود الوقت والإخراج والنتيجة وحجم الملف الملتقط.
- تسجيل صريح لأداة المضيف.
- تحميل الملف للقراءة فقط والقراءة والكتابة.
- دليل عمل قابل للتكوين وبيئة معالجة فرعية.
تقلل عناصر التحكم هذه من المخاطر ولكنها لا توفر الاحتواء. حافظ على تمكين التحقق من الصحة، ومرر قاموس بيئة مقيد، وكشف أدوات المضيف الضيقة، وتشغيل العملية داخل بيئة الاختبار المعزولة الخارجية القوية.
اختر وقت تشغيل CodeAct
| Runtime | اختره عندما |
|---|---|
| ضوء تشعبي | تحتاج إلى بيئة الاختبار المعزولة مع نظام الملفات وعناصر التحكم في الشبكة. |
| Local CodeAct | عامل .NET الخاص بك يعمل بالفعل داخل بيئة الاختبار المعزولة خارجيا. |
| Monty | تحتاج إلى مترجم مقيد عبر النظام الأساسي لوكلاء Python. |