تكامل التعهيد الجماعي
التكامل مع Prolific وMTurk ومنصات التعهيد الجماعي الأخرى.
تكامل التعهيد الجماعي
يتكامل Potato بسلاسة مع منصات التعهيد الجماعي مثل Prolific وAmazon Mechanical Turk لمهام التعليق التوضيحي واسعة النطاق.
تكامل Prolific
الإعداد الأساسي
yaml
crowdsourcing:
platform: prolific
enabled: true
completion_code: "POTATO2024" # Code shown on completionمعاملات URL
يمرر Prolific معلومات المشاركين عبر معاملات URL:
yaml
crowdsourcing:
platform: prolific
url_params:
- PROLIFIC_PID # Participant ID
- STUDY_ID # Study ID
- SESSION_ID # Session IDيصل العمال عبر:
text
https://your-server.com/?PROLIFIC_PID=xxx&STUDY_ID=xxx&SESSION_ID=xxx
إعداد Prolific
في إعدادات دراسة Prolific الخاصة بك:
- عيّن Study URL إلى خادم Potato الخاص بك
- أضف معاملات URL:
?PROLIFIC_PID={{%PROLIFIC_PID%}}&STUDY_ID={{%STUDY_ID%}}&SESSION_ID={{%SESSION_ID%}} - عيّن Completion code ليطابق إعداداتك
التحقق
التحقق من مشاركي Prolific:
yaml
crowdsourcing:
platform: prolific
validate_participant: true
completion_code: "POTATO2024"تكامل Amazon MTurk
الإعداد الأساسي
yaml
crowdsourcing:
platform: mturk
enabled: trueإعداد HIT
أنشئ External Question HIT يشير إلى خادمك:
xml
<?xml version="1.0" encoding="UTF-8"?>
<ExternalQuestion xmlns="http://mechanicalturk.amazonaws.com/AWSMechanicalTurkDataSchemas/2006-07-14/ExternalQuestion.xsd">
<ExternalURL>https://your-server.com/?workerId=${workerId}&assignmentId=${assignmentId}&hitId=${hitId}</ExternalURL>
<FrameHeight>800</FrameHeight>
</ExternalQuestion>معاملات URL
yaml
crowdsourcing:
platform: mturk
url_params:
- workerId
- assignmentId
- hitIdاختبار Sandbox
اختبر باستخدام MTurk Sandbox أولاً:
yaml
crowdsourcing:
platform: mturk
sandbox: true # Use sandbox environmentإدارة العمال
تتبع العمال
yaml
crowdsourcing:
track_workers: true
worker_id_field: worker_idتحديد عدد المثيلات لكل عامل
yaml
instances_per_annotator: 50منع العمال العائدين
منع العمال من إعادة تنفيذ المهمة:
yaml
crowdsourcing:
prevent_retakes: trueمراقبة الجودة
فحوصات الانتباه
إدراج أسئلة اختبارية:
yaml
attention_checks:
enabled: true
frequency: 10 # Every 10 instances
fail_threshold: 2
action: warn # or 'block'أسئلة المعيار الذهبي
json
{
"id": "gold_1",
"text": "The sky is typically blue during a clear day.",
"gold_label": "True",
"is_gold": true
}yaml
quality_control:
gold_questions: true
gold_percentage: 10 # 10% of instances
min_gold_accuracy: 70حدود الوقت
yaml
crowdsourcing:
min_time_per_instance: 5 # seconds
max_time_total: 3600 # 1 hourرفض العمل منخفض الجودة
yaml
quality_control:
auto_reject:
enabled: true
conditions:
- gold_accuracy_below: 50
- completion_time_under: 300 # secondsمعالجة الإكمال
عرض رمز الإكمال
yaml
completion:
show_code: true
code: "POTATO2024"
message: "Thank you! Your completion code is: {code}"إعادة التوجيه عند الإكمال
yaml
completion:
redirect: true
redirect_url: "https://prolific.co/submissions/complete?cc={code}"صفحة إكمال مخصصة
yaml
completion:
custom_template: templates/completion.htmlمستويات الدفع
بناءً على الجودة
yaml
payment:
tiers:
- name: bonus
condition:
gold_accuracy_above: 90
amount: 0.50
- name: standard
condition:
gold_accuracy_above: 70
amount: 0.00
- name: reject
condition:
gold_accuracy_below: 50مثال كامل: دراسة Prolific
yaml
task_name: "Sentiment Analysis Study"
# Crowdsourcing settings
crowdsourcing:
platform: prolific
enabled: true
completion_code: "SENT2024"
url_params:
- PROLIFIC_PID
- STUDY_ID
- SESSION_ID
prevent_retakes: true
# Open access for crowdworkers
allow_all_users: true
# Task assignment
instances_per_annotator: 50
annotation_per_instance: 3
# Quality control
attention_checks:
enabled: true
frequency: 10
fail_threshold: 2
quality_control:
gold_questions: true
gold_percentage: 5
min_gold_accuracy: 70
# Data
data_files:
- path: data/main.json
text_field: text
# Annotation scheme
annotation_schemes:
- annotation_type: radio
name: sentiment
description: "What is the sentiment?"
labels:
- Positive
- Negative
- Neutral
keyboard_shortcuts:
Positive: "1"
Negative: "2"
Neutral: "3"
# Completion
completion:
show_code: true
code: "SENT2024"
message: |
## Thank you for participating!
Your completion code is: **{code}**
Please return to Prolific and enter this code to receive payment.مثال كامل: MTurk HIT
yaml
task_name: "Image Classification HIT"
crowdsourcing:
platform: mturk
enabled: true
url_params:
- workerId
- assignmentId
- hitId
allow_all_users: true
instances_per_annotator: 20
# Time constraints
crowdsourcing:
min_time_per_instance: 3
max_time_total: 1800
# MTurk form submission
completion:
mturk_submit: true
submit_url: "https://www.mturk.com/mturk/externalSubmit"
annotation_schemes:
- annotation_type: radio
name: category
description: "What is shown in this image?"
labels:
- Cat
- Dog
- Bird
- Otherمراقبة العمال
لوحة تحكم المسؤول
yaml
admin_users:
- researcher@university.edu
admin_dashboard:
enabled: true
show_worker_stats: trueاعرض على /admin لرؤية:
- معدلات إكمال العمال
- متوسط الوقت لكل مثيل
- درجات دقة المعيار الذهبي
- نتائج فحوصات الانتباه
تصدير بيانات العمال
bash
potato export-workers config.yaml --output workers.csvأفضل الممارسات
- اختبر بشكل شامل - قم بتشغيل تجربة أولية مع مجموعة صغيرة أولاً
- حدد أجراً عادلاً - احسب الوقت المقدر وادفع بإنصاف
- تعليمات واضحة - قم بتضمين أمثلة وحالات حدية
- استخدم فحوصات الانتباه - اكتشف النقر العشوائي
- قم بتضمين أسئلة ذهبية - تحقق من الفهم
- راقب في الوقت الفعلي - راقب المشكلات مبكراً
- خطط للرفض - حدد معايير جودة واضحة مسبقاً
- تواصل بشأن المشكلات - اتصل بالعمال حول المشاكل
- كرر بناءً على الملاحظات - حسّن بناءً على تعليقات العمال
- صدّر البيانات بانتظام - لا تنتظر حتى النهاية
قراءة إضافية
- تكامل MTurk - دليل إعداد MTurk المفصل
- تسجيل الدخول بدون كلمة مرور - المصادقة المستندة إلى URL
- مراقبة الجودة - فحوصات الانتباه والمعايير الذهبية
لمزيد من تفاصيل التنفيذ، راجع التوثيق المصدري.