نظرة عامة
تقرأURLReadTool المحتوى الموجود في عنوان URL وتعيده كنص. يتم استخراج النص من ملفات PDF وDOCX وXLSX، ويُختزل HTML إلى النص المرئي، وتُفك ترميزات الأنواع النصية (نص عادي، Markdown، JSON، XML، YAML، CSV) كما هي. وتعمل مع الروابط الموقّعة مسبقًا للتخزين السحابي (S3 وR2 وGoogle Drive وOneDrive وSharePoint) حتى عندما يصنّف الخادم الملف على أنه application/octet-stream.
لا تقوم الأداة بالمصادقة، لذا يجب أن يمنح الرابط نفسه صلاحية الوصول.
التثبيت
مثال على الاستخدام
Code
المعاملات
يوفرها الوكيل أثناء التشغيل:url: عنوان URL المراد قراءته.start_line: (اختياري) السطر الذي تبدأ منه القراءة (يبدأ العد من 1). القيمة الافتراضية1.line_count: (اختياري) عدد الأسطر المراد إرجاعها. إذا حُذف، يُرجع كل شيء بدءًا منstart_line.
max_bytes: (اختياري) أكبر حجم لجسم الاستجابة مسموح به. القيمة الافتراضية 5 MiB.timeout: (اختياري) مهلة كل طلب بالثواني. القيمة الافتراضية30.headers: (اختياري) ترويسات طلب إضافية.encoding: (اختياري) فرض ترميز نصي بدلاً من الترميز الذي يعلنه الخادم.
أمان الشبكة
لأن عنوان URL يختاره عادةً نموذج لغوي (LLM) أثناء التشغيل، تُفحص الطلبات للحماية من SSRF:- يتم حل اسم كل مضيف، ويُرفض الطلب إذا كان أي عنوان تم حله خاصًا أو حلقة محلية (loopback) أو link-local أو محجوزًا بطريقة أخرى. ويشمل ذلك نقاط نهاية البيانات الوصفية السحابية والخدمات الداخلية.
- لا تُتَّبع عمليات إعادة التوجيه تلقائيًا. يُفحص كل انتقال من جديد، وتُسقط بيانات الاعتماد عند الانتقال بين أصول مختلفة.
السماح بمضيف داخلي
تقدم بعض بيئات النشر الملفات من مضيف يُحل إلى عنوان خاص، مثل منصة مستضافة ذاتيًا خلف موازن تحميل داخلي. للسماح به، أدرج اسم المضيف بدقة فيCREWAI_TOOLS_ALLOWED_PRIVATE_HOSTS:
https://files.internal.example.com/report.pdf:
- الإدخالات مفصولة بفواصل. يمكن أن يكون كل إدخال اسم مضيف مجردًا أو
host:portأو عنوان URL كاملًا. يُستخدم اسم المضيف فقط، ويُطابق بدقة ودون مراعاة حالة الأحرف. أحرف البدل مثل*.example.comغير مدعومة. - لا يُسمح بعناوين IP عبر هذه القائمة مطلقًا.
- قد يُحل المضيف المدرج إلى أي عنوان خاص، لذا أدرج فقط أسماء المضيفين التي تتحكم في DNS الخاص بها وتثق به.
- لا تزال عمليات إعادة التوجيه تُفحص، لذا يجب إدراج أي مضيف داخلي آخر يُعاد التوجيه إليه.
- ينطبق الإعداد على كل أدوات crewai-tools التي تجري طلبات آمنة، وليس
URLReadToolفقط. - لا يزال التحقق من شهادات TLS قائمًا. يجب أن ترتبط شهادة المضيف الذي يستخدم جهة إصدار شهادات خاصة بسلسلة تنتهي بجهة تثق بها الأداة.
CREWAI_TOOLS_ALLOW_UNSAFE_PATHS=true الذي يعطّل حماية المسارات وSSRF على مستوى العملية بأكملها ويجب تجنبه. تُتجاهل قائمة السماح عندما يكون CREWAI_TOOLS_FORCE_SAFE_PATHS=true معينًا، لأن هذا القفل موجود لمنع أي عملية نشر من تخفيف هذه الفحوصات. لاستخدام القائمة، اترك CREWAI_TOOLS_FORCE_SAFE_PATHS غير معين، وعيّن CREWAI_TOOLS_ALLOWED_PRIVATE_HOSTS، وأزل CREWAI_TOOLS_ALLOW_UNSAFE_PATHS لأن هذا المتغير يعود إلى العمل عند إزالة القفل. افعل ذلك فقط على العمال الذين تديرهم، وليس على العمال المشتركين أو متعددي المستأجرين.