
skyvern v1.0.47
أتمتة سير العمل المستندة إلى المتصفح باستخدام الذكاء الاصطناعي
🐉 أتمتة سير العمل في المتصفح باستخدام نماذج اللغة الكبيرة (LLMs) والرؤية الحاسوبية 🐉
Skyvern يقوم بأتمتة سير العمل في المتصفح باستخدام نماذج اللغة الكبيرة (LLMs) والرؤية الحاسوبية. يوفر حزمة أدوات تطوير (SDK) متوافقة مع Playwright تضيف وظائف الذكاء الاصطناعي فوق Playwright، بالإضافة إلى منشئ سير عمل بدون كود لمساعدة المستخدمين التقنيين وغير التقنيين على أتمتة سير العمل اليدوي على أي موقع ويب، مما يحل محل حلول الأتمتة الهشة أو غير الموثوقة.
تطلبت الأساليب التقليدية لأتمتة المتصفح كتابة نصوص برمجية مخصصة للمواقع الإلكترونية، وغالبًا ما اعتمدت على تحليل DOM والتفاعلات القائمة على XPath والتي كانت تتعطل كلما تغيرت تخطيطات المواقع.
بدلاً من الاعتماد فقط على تفاعلات XPath المحددة برمجيًا، يعتمد Skyvern على نماذج اللغة الكبيرة للرؤية (Vision LLMs) لتعلم والتفاعل مع المواقع الإلكترونية.
كيف يعمل
استلهم Skyvern من تصميم الوكيل المستقل القائم على المهام الذي روّج له BabyAGI و AutoGPT -- مع ميزة إضافية رئيسية: نمنح Skyvern القدرة على التفاعل مع المواقع الإلكترونية باستخدام مكتبات أتمتة المتصفح مثل Playwright.
يستخدم Skyvern سربًا من الوكلاء لفهم موقع إلكتروني، وتخطيط وتنفيذ إجراءاته:
لهذا النهج عدة مزايا:
- يمكن لـ Skyvern العمل على مواقع إلكترونية لم يرها من قبل، حيث إنه قادر على ربط العناصر المرئية بالإجراءات اللازمة لإكمال سير العمل، دون أي كود مخصص
- Skyvern مقاوم للتغييرات في تخطيط المواقع، حيث لا توجد مسارات XPath محددة مسبقًا أو محددات أخرى يبحث عنها نظامنا أثناء محاولة التنقل
- Skyvern قادر على أخذ سير عمل واحد وتطبيقه على عدد كبير من المواقع الإلكترونية، حيث إنه قادر على التفكير في التفاعلات اللازمة لإكمال سير العمل يمكن العثور على تقرير فني مفصل هنا.
عرض توضيحي
https://github.com/user-attachments/assets/5cab4668-e8e2-4982-8551-aab05ff73a7f
بداية سريعة
سحابة Skyvern
سحابة Skyvern هي نسخة سحابية مُدارة من Skyvern تسمح لك بتشغيل Skyvern دون القلق بشأن البنية التحتية. تسمح لك بتشغيل عدة نسخ من Skyvern بالتوازي وتأتي مع آليات كشف مكافحة البوت، وشبكة بروكسي، وحلالات CAPTCHA.
إذا كنت ترغب في تجربتها، انتقل إلى app.skyvern.com وأنشئ حسابًا.
تشغيل محليًا (واجهة المستخدم + الخادم)
اختر طريقة الإعداد المفضلة لديك:
قاعدة البيانات الافتراضية:
skyvern quickstartوskyvern run serverتستخدمان افتراضيًا قاعدة بيانات SQLite في~/.skyvern/data.dbبحيث يعمل مسار pip دون الحاجة إلى Postgres أو Docker. لاستخدام Postgres بدلاً من ذلك، مرر--postgresلحاوية محلية أو--database-stringلقاعدة بيانات موجودة. يستخدم Docker Compes دائمًا خدمة Postgres المرفقة.
الخيار أ: تثبيت pip (موصى به للإعداد المحلي المُدار بواسطة Python)
التبعيات المطلوبة:
بالإضافة إلى ذلك، لنظام Windows:
- Rust
- VS Code مع أدوات تطوير C++ وWindows SDK
1. تثبيت Skyvern```bash
pip install "skyvern[all]"
#### 2. تشغيل Skyvern```bash
skyvern quickstart
يستخدم خيار pip السريع SQLite بشكل افتراضي. لتشغيل حاوية Postgres محلية، قم بتشغيل skyvern quickstart --postgres.
الخيار ب: Docker Compose
استخدم هذا الخيار إذا كنت تريد أن يكون كل شيء في حاويات (Postgres، API، UI) ولا تريد تثبيت Python/Node محليًا.
- قم بتثبيت Docker Desktop
- استنساخ المستودع: ```bash
git clone https://github.com/skyvern-ai/skyvern.git && cd skyvern
- قم بتكوين مزود LLM الخاص بك في ملف
.env(سيؤدي الأمرquickstart --docker-composeأدناه إلى إنشائه من ملف.env.exampleفي حال كان مفقودًا): ```bash cp .env.example .env # if not already creatededit .env to add your LLM API key
- شغّل كل شيء: ```bash
docker compose up -d
- افتح http://localhost:8080
استكشاف الأخطاء وإصلاحها
(sqlite3.OperationalError) table organizations already exists — لقد واجهت خطأً معروفًا في pip install skyvern==1.0.31. الحل:```bash
rm ~/.skyvern/data.db # remove the leftover SQLite file
pip install --upgrade skyvern # 1.0.32+ contains the fix
skyvern quickstart
إذا كنت لا تزال على الإصدار 1.0.31 ولا يمكنك الترقية، فقم بالتثبيت عبر uv بدلاً من ذلك:```bash
uv pip install skyvern
pip install skyvern يفشل مع خطأ ResolutionImpossible (litellm / fastmcp) — لقد واجهت تعارضًا في حل التبعيات في الإصدار 1.0.31. إما الترقية إلى 1.0.32+ أو استخدم uv: uv pip install skyvern.
SDK
Skyvern هو امتداد لـ Playwright يضيف أتمتة المتصفح المدعومة بالذكاء الاصطناعي. يمنحك القوة الكاملة لـ Playwright مع قدرات إضافية للذكاء الاصطناعي—استخدم التعليمات باللغة الطبيعية للتفاعل مع العناصر، واستخراج البيانات، وأتمتة سير العمل المعقدة متعددة الخطوات.
التثبيت:
- Python SDK / cloud API:
pip install skyvern - خادم محلي + واجهة مستخدم محزمة:
pip install "skyvern[all]"ثم قم بتشغيلskyvern quickstart - خادم محلي + واجهة مستخدم محزمة مع Postgres:
pip install "skyvern[all]"ثم قم بتشغيلskyvern quickstart --postgres - واجهة مستخدم محزمة لواجهة برمجة تطبيقات موجودة:
pip install "skyvern[ui]"ثم قم بتشغيلskyvern run ui --api-url <api-url> --api-key <api-key> - TypeScript:
npm install @skyvern/client
أوامر الصفحة المدعومة بالذكاء الاصطناعي
يضيف Skyvern أربعة أوامر أساسية للذكاء الاصطناعي مباشرة على كائن الصفحة:
| الأمر | الوصف |
|---|---|
page.act(prompt) | تنفيذ إجراءات باستخدام اللغة الطبيعية (مثال: "انقر على زر تسجيل الدخول") |
page.extract(prompt, schema) | استخراج بيانات منظمة من الصفحة مع مخطط JSON اختياري |
page.validate(prompt) | التحقق من حالة الصفحة، يعيد قيمة bool (مثال: "تحقق مما إذا كان المستخدم مسجلاً للدخول") |
page.prompt(prompt, schema) | إرسال تعليمات عشوائية إلى LLM مع مخطط استجابة اختياري |
بالإضافة إلى ذلك، يوفر page.agent أوامر سير عمل عالية المستوى: