Skip to content

واجهة سطر أوامر المعاينة

استخدم واجهة سطر أوامر المعاينة في Potato للتحقق من ملفات YAML، وفحص مخططات التعليق، وعرض معاينة ثابتة لواجهتك دون تشغيل الخادم الكامل.

تتحقق واجهة سطر أوامر المعاينة من إعدادات التعليق وتعرض كيف ستُصيَّر المخططات دون تشغيل الخادم الكامل. هذا مفيد للنمذجة السريعة وتصحيح الأخطاء والتحقق ضمن خطوط CI/CD.

نظرة عامة

توفّر واجهة سطر أوامر المعاينة:

  • التحقق من الإعدادات: افحص الأخطاء والتحذيرات قبل النشر
  • معاينة المخططات: شاهد كيف ستُصيَّر مخططات التعليق بصيغة HTML
  • كشف تعارض ارتباطات المفاتيح: حدّد اختصارات لوحة المفاتيح المتعارضة
  • صيغ مخرجات متعددة: ملخص أو HTML أو JSON أو مقتطفات تخطيط فقط

الاستخدام الأساسي

bash
# Default summary output
python -m potato.preview_cli config.yaml
 
# Or using the module directly
python -m potato.preview_cli path/to/your/config.yaml

صيغ المخرجات

الملخص (الافتراضي)

يعرض ملخصًا نصيًّا للإعدادات:

bash
python -m potato.preview_cli config.yaml

المخرجات:

text
============================================================
ANNOTATION TASK PREVIEW
============================================================
Task Name: Sentiment Annotation
Task Directory: ./my_task

Validation: PASSED

ANNOTATION SCHEMAS (2 total):
----------------------------------------
  [radio] sentiment
          Select the sentiment of the text...
          Labels: 3
          Keybindings: 3

  [multiselect] topics
          Select all relevant topics...
          Labels: 5
          Keybindings: 0

============================================================

مخرجات HTML

ولّد معاينة صفحة HTML كاملة:

bash
python -m potato.preview_cli config.yaml --format html > preview.html

افتح preview.html في متصفح لترى كيف ستبدو مخططات التعليق لديك.

مخرجات JSON

ولّد مخرجات JSON مهيكلة للمعالجة البرمجية:

bash
python -m potato.preview_cli config.yaml --format json

HTML للتخطيط فقط

ولّد مقتطف HTML لمخطط التعليق وحده:

bash
python -m potato.preview_cli config.yaml --layout-only > task_layout.html

هذا مفيد للتضمين في قوالب مخصصة أو لاختبار تصيير المخطط بمعزل عن غيره.

خيارات سطر الأوامر

الخيارالمختصرالوصف
--format-fصيغة المخرجات: summary أو html أو json
--layout-only-lإخراج مقتطف HTML لتخطيط المهمة فقط
--verbose-vتفعيل المخرجات المفصّلة/التصحيحية

التحقق من الإعدادات

تتحقق واجهة سطر أوامر المعاينة من إعداداتك وتبلّغ عن المشكلات:

الأخطاء (حاجبة)

text
ERROR: Missing required field 'annotation_task_name'
ERROR: Must have either 'data_files' or 'data_directory'

التحذيرات (غير حاجبة)

text
WARNING: No annotation schemes found in configuration
WARNING: Key '1' used by both 'schema1:Label1' and 'schema2:Label2'

رموز الخروج

  • 0: الإعدادات صالحة
  • 1: الإعدادات تحتوي على أخطاء

استخدم رموز الخروج في خطوط CI/CD:

bash
python -m potato.preview_cli config.yaml || echo "Config validation failed"

حالات الاستخدام

النمذجة السريعة

كرّر بسرعة على تصاميم المخططات:

bash
# Edit config, then preview immediately
python -m potato.preview_cli config.yaml --format html > preview.html && open preview.html

التكامل مع CI/CD

تحقق من الإعدادات ضمن خط النشر لديك:

yaml
# .github/workflows/validate.yml
- name: Validate Potato Config
  run: python -m potato.preview_cli configs/production.yaml

تطوير القوالب

ولّد مقتطفات التخطيط لدمجها في قوالب مخصصة:

bash
python -m potato.preview_cli config.yaml --layout-only > templates/includes/schemas.html

مرجع الواجهة البرمجية

يمكن أيضًا استخدام دوال واجهة سطر أوامر المعاينة برمجيًّا:

python
from potato.preview_cli import (
    load_config,
    validate_config,
    get_annotation_schemes,
    detect_keybinding_conflicts,
    generate_preview_html,
)
 
# Load and validate
config = load_config("config.yaml")
issues = validate_config(config)
 
# Extract schemes and check for conflicts
schemes = get_annotation_schemes(config)
conflicts = detect_keybinding_conflicts(schemes)
 
# Generate output
html = generate_preview_html(schemes)

معالجة المشكلات

خطأ "Module not found"

تأكد من تثبيت Potato:

bash
pip install potato-annotation

أخطاء تصيير المخطط

إذا فشل تصيير مخطط، فستتضمن المخرجات رسالة خطأ. تحقق من اكتمال إعداد مخططك.

قراءات إضافية

للاطلاع على تفاصيل التنفيذ، انظر التوثيق المصدري.