الانتقال إلى المحتوى

الأدلة الإرشادية

التشغيلات المُدارة

ينفّذ التشغيل المُدار مجموعتك على عمّال Oloproof بدلًا من جهازك، وتتابعه من صفحة المهام أو من الطرفية. لا تحتاج إلا إلى oloproof login؛ فلا اتصال بقاعدة بيانات ولا مشغّل خاص بك.

ما الذي سيشغّله العامل

يستدعي العامل نظامك عبر HTTP. صرّح به باستخدام http: في oloproof.yaml (الإعداد):

system:
  name: support-bot
  version: v3
  http:
    url: https://support-bot.example.com/answer
    output_path: answer

يرفض العامل:

  • نظام callable: أو rag:، قبل إدراج المهمة في الطابور. فهذا هو كودك، وعمّال Oloproof لا يشغّلون كود العملاء؛ شغّله على جهازك (oloproof run) وادفع التشغيل، أو على مشغّل تديره بنفسك.
  • ملف إجابات recorded:. يبقى على جهازك؛ شغّله محليًا باستخدام oloproof run.
  • عنوانًا ليس على الإنترنت العام: localhost، أو اسمًا من مقطع واحد، أو عنوانًا خاصًا أو محليًا للرابط أو عنوان بيانات وصفية سحابية. يُفحص كل استدعاء لحظة إجرائه، فتنتهي هذه الحالة بخطأ بدلًا من الوصول إليه؛ لا يستطيع العامل الوصول إلا إلى ما يستطيع أي شخص على الإنترنت الوصول إليه.
  • حالات الهجوم المولّدة، ما لم يصرّح oloproof.yaml بـ adversarial: {sandboxed: true} (توليد الهجمات). لا يغطي --allow-adversarial إلا التشغيل المحلي.

شغّل واحدًا

oloproof login
oloproof run --cloud --max-runtime 900

يرسل run --cloud حالات مجموعتك إلى مساحة العمل (لا يستطيع التشغيل المُدار تنفيذ حالات ليست لديه)، ثم يُدرج المهمة في الطابور ويطبع مكان متابعتها. المجموعة التي تحتفظ بها مساحة العمل كاملة لا تُرسل مرة أخرى.

يتحقق العامل من كل حالة مقابل بصمتها قبل أن يحتفظ بالمجموعة، ويرفض أي حالة لا تطابقها. لذلك يحسب run --cloud بصمات الحالات بشكل عادي، كما يفعل العامل، حتى في مشروع يربط بصماته بمفتاح لحجب المحتوى (egress:، النتائج والتنفيذ): فالحالات تُرسل كاملة على أي حال، وربطها بمفتاح لن يخفي شيئًا. لذا فمجموعة التشغيل المُدار مجموعة مختلفة عن تلك التي يسجلها تشغيل محلي للمشروع نفسه. والمشروع الذي تحتفظ مساحة عمله بالفعل بأدلة ذات بصمات بمفتاح (من push) يُرفض: شغّله بـ oloproof run وادفع التشغيل.

--max-runtime هو الموعد النهائي للمهمة بالثواني، حتى يوم واحد، أو حد خطتك إن كان أقل. وbudget: في oloproof.yaml مُلزِم على العامل كما هو محليًا.

من يحق له تشغيله: Owner أو Admin أو Member في مساحة العمل. ولا يحق ذلك لـ Reviewer.

تابعه

تعرض صفحة المهام في المشروع حالات كل مهمة فور وصولها: كم منها شُغّل وحُكم عليه، وعدد النجاح والإخفاق لكل فحص، وأحدث الحالات. هذا العدد حصيلة حتى الآن وليس نتيجة. تُتخذ القرارات بعد تخزين التشغيل كاملًا، ثم تعرضها صفحته.

في الطرفية:

oloproof job JOB_ID --follow

يطبع الأعداد نفسها كل بضع ثوانٍ، ثم بوابة التشغيل، وينتهي برمز خروج البوابة، فيستطيع خط المعالجة انتظار تشغيل مُدار كما ينتظر تشغيلًا محليًا (CI). من دون --follow يقدّم job تقريرًا مرة واحدة؛ والمهمة التي ما زالت تعمل تنتهي بالرمز 2، لأنها ليست قرارًا بعد. يوقف --cancel المهمة المنتظرة في الطابور فورًا والمهمة الجارية قبل استدعائها التالي، مع الإبقاء على الحالات التي اكتملت.

مفاتيح للمُحكِّم

يحتاج المُحكِّم أو النظام الذي يستدعي مزوّد نماذج إلى مفتاحه على العامل. خزّنه مرة واحدة:

export OPENAI_API_KEY=...
oloproof credentials set OPENAI_API_KEY
oloproof credentials list

يُقرأ المفتاح من البيئة أو من الإدخال القياسي، ولا يُقرأ أبدًا من سطر الأوامر. يشفّره العامل، ولا يقرؤه إلا عامل يشغّل مهام مساحة العمل هذه؛ لا يستطيع أحد قراءته مجددًا، ولا يعرض credentials list إلا الأسماء. بعدها يجده api_key_env: OPENAI_API_KEY في المُقيِّم. لا تقرأ المهمة المُدارة أي متغير بيئة آخر. لا يحق تخزين مفتاح إلا لـ Owner أو Admin.

ما لا يمكن أن يخبرك به هذا

  • هل يتصرف نظامك من شبكة Oloproof كما يتصرف من شبكتك. يستدعي العامل نقطة النهاية من الإنترنت العام؛ وحدود المعدّل والمناطق وقوائم السماح التي تعامله بشكل مختلف تغيّر ما يقيسه.
  • أي شيء عن كود لم يشغّله العامل. يقيس التشغيل المُدار نقطة النهاية التي سمّيتها، لا الكود الذي خلفها.

وكل حد آخر في ما لا يمكن لتقييم أن يخبرك به ينطبق هنا أيضًا.