Skip to content

एनोटेशन स्कीम

परिभाषित करें कि एनोटेटर आपके डेटा को क्या और कैसे लेबल करेंगे।

एनोटेशन स्कीम आपके एनोटेटरों के लिए लेबलिंग कार्यों को परिभाषित करती हैं। Potato 30 से अधिक एनोटेशन प्रकारों का समर्थन करता है जिन्हें जटिल एनोटेशन कार्य बनाने के लिए संयोजित किया जा सकता है।

एनोटेशन स्कीम की संरचना — चार फ़ील्ड हर विजेट को परिभाषित करते हैं; स्कीम जोड़कर प्रति आइटम कई प्रश्न पूछेंएनोटेशन स्कीम की संरचना

बुनियादी संरचना

प्रत्येक स्कीम annotation_schemes सरणी में परिभाषित की जाती है:

yaml
annotation_schemes:
  - annotation_type: radio
    name: sentiment
    description: "What is the sentiment?"
    labels:
      - Positive
      - Negative
      - Neutral

आवश्यक फील्ड

फील्डविवरण
annotation_typeएनोटेशन का प्रकार (radio, multiselect, likert, span, text, number, slider, multirate)
nameआंतरिक पहचानकर्ता (कोई स्पेस नहीं, आउटपुट में उपयोग)
descriptionएनोटेटरों को दिखाए जाने वाले निर्देश

समर्थित एनोटेशन प्रकार

1. Radio (एकल विकल्प)

सूची से बिल्कुल एक विकल्प चुनें:

yaml
- annotation_type: radio
  name: sentiment
  description: "What is the sentiment of this text?"
  labels:
    - Positive
    - Negative
    - Neutral
 
  # Optional features
  sequential_key_binding:
    Positive: "1"
    Negative: "2"
    Neutral: "3"
 
  # Or use sequential binding (1, 2, 3... automatically)
  sequential_key_binding: true
 
  # Horizontal layout instead of vertical
  horizontal: true

2. Likert स्केल

लेबल किए गए एंडपॉइंट के साथ रेटिंग स्केल:

yaml
- annotation_type: likert
  name: agreement
  description: "How much do you agree with this statement?"
  size: 5  # Number of scale points
  min_label: "Strongly Disagree"
  max_label: "Strongly Agree"
 
  # Optional mid-point label
 
  # Show numeric values

3. Multiselect (बहु विकल्प)

सूची से एकाधिक विकल्प चुनें:

yaml
- annotation_type: multiselect
  name: topics
  description: "Select all relevant topics"
  labels:
    - Politics
    - Technology
    - Sports
    - Entertainment
    - Science
 
  # Selection constraints
 
  # Allow free text response
  has_free_response: true

4. स्पैन एनोटेशन

पाठ खंडों को हाइलाइट और लेबल करें:

yaml
- annotation_type: span
  name: entities
  description: "Highlight named entities in the text"
  labels:
    - PERSON
    - ORGANIZATION
    - LOCATION
    - DATE
 
  # Visual customization
 
  # Allow overlapping spans
  allow_discontinuous: false
 
  # Keyboard shortcuts for labels
  sequential_key_binding: true

5. Slider

निरंतर संख्यात्मक रेंज:

yaml
- annotation_type: slider
  name: confidence
  description: "How confident are you in your answer?"
  min_value: 0
  max_value: 100
  step: 1
 
  # Endpoint labels
 
  # Show current value

6. पाठ इनपुट

स्वतंत्र-रूप पाठ प्रतिक्रियाएं:

yaml
- annotation_type: text
  name: explanation
  description: "Explain your reasoning"
 
  # Multi-line input
  rows: 4
 
  # Character limits
 
  # Placeholder text
  placeholder: "Enter your explanation here..."
 
  # Disable paste (for transcription tasks)

7. संख्या इनपुट

बाधाओं के साथ संख्यात्मक इनपुट:

yaml
- annotation_type: number
  name: count
  description: "How many entities are mentioned?"
  min: 0
  max: 100
  step: 1

8. Multirate (मैट्रिक्स रेटिंग)

एक ही स्केल पर एकाधिक आइटम रेट करें:

yaml
- annotation_type: multirate
  name: quality_aspects
  description: "Rate each aspect of the response"
 
  # Randomize item order
 
  # Layout options

सामान्य विकल्प

कीबोर्ड शॉर्टकट

कीबोर्ड बाइंडिंग के साथ एनोटेशन तेज़ करें:

yaml
# Manual shortcuts
keyboard_shortcuts:
  Positive: "1"
  Negative: "2"
  Neutral: "3"
 
# Or automatic sequential binding
sequential_key_binding: true  # Assigns 1, 2, 3...

टूलटिप

लेबलों के लिए होवर संकेत प्रदान करें:

yaml
tooltips:
  Positive: "Expresses happiness, approval, or satisfaction"
  Negative: "Expresses sadness, anger, or disappointment"
  Neutral: "No clear emotional content"

लेबल रंग

दृश्य अंतर के लिए कस्टम रंग:

yaml
label_colors:
  PERSON: "#3b82f6"
  LOCATION: "#10b981"
  ORGANIZATION: "#f59e0b"

आवश्यक फील्ड

सबमिशन से पहले एक स्कीम को आवश्यक बनाएं:

yaml
- annotation_type: radio
  name: sentiment
  label_requirement:
    required: true
  labels:
    - Positive
    - Negative

एकाधिक स्कीम

प्रति इंस्टेंस एकाधिक एनोटेशन प्रकार संयोजित करें:

yaml
annotation_schemes:
  # Primary classification
  - annotation_type: radio
    name: sentiment
    description: "Overall sentiment"
    labels:
      - Positive
      - Negative
      - Neutral
    label_requirement:
      required: true
    sequential_key_binding: true
 
  # Confidence rating
  - annotation_type: likert
    name: confidence
    description: "How confident are you?"
    size: 5
    min_label: "Guessing"
    max_label: "Certain"
 
  # Topic tags
  - annotation_type: multiselect
    name: topics
    description: "Select all relevant topics"
    labels:
      - Politics
      - Technology
      - Sports
      - Entertainment
    has_free_response: true
 
  # Notes
  - annotation_type: text
    name: notes
    description: "Any additional observations?"
    rows: 4
    label_requirement:
      required: false

उन्नत सुविधाएं

Pairwise Comparison

दो आइटम की तुलना करें:

yaml
- annotation_type: pairwise
  name: preference
  description: "Which response is better?"
  labels:
    - label: "Response A"
      value: "A"
    - label: "Response B"
      value: "B"
    - label: "Equal"
      value: "tie"
 
  # Allow tie selection
  allow_tie: true

Best-Worst Scaling

सर्वोत्तम और सबसे खराब चुनकर आइटम रैंक करें:

yaml
- annotation_type: bws
  name: ranking
  description: "Select the best and worst items"
  # Items come from the data file

स्पेस-कुशल एकल चयन:

yaml
- annotation_type: select
  name: category
  description: "Select a category"
  labels:
    - Category A
    - Category B
    - Category C
    - Category D
    - Category E
 
  # Default selection

डेटा प्रारूप संदर्भ

इनपुट

एनोटेशन स्कीम आपके डेटा प्रारूप के साथ काम करती हैं:

json
{
  "id": "doc_1",
  "text": "This is the text to annotate."
}

आउटपुट

एनोटेशन स्कीम नामों को कुंजी के रूप में सहेजे जाते हैं:

json
{
  "id": "doc_1",
  "annotations": {
    "sentiment": "Positive",
    "confidence": 4,
    "topics": ["Technology", "Science"],
    "entities": [
      {"start": 0, "end": 4, "label": "ORGANIZATION", "text": "This"}
    ],
    "notes": "Clear positive sentiment about technology."
  }
}

सर्वोत्तम अभ्यास

1. स्पष्ट लेबल

स्पष्ट, विशिष्ट लेबल उपयोग करें:

yaml
# Good
labels:
  - Strongly Positive
  - Somewhat Positive
  - Neutral
  - Somewhat Negative
  - Strongly Negative
 
# Avoid
labels:
  - Good
  - OK
  - Fine
  - Acceptable

2. सहायक टूलटिप

सूक्ष्म लेबलों के लिए टूलटिप जोड़ें:

yaml
tooltips:
  Sarcasm: "The text says the opposite of what it means"
  Irony: "A mismatch between expectation and reality"

3. कीबोर्ड शॉर्टकट

उच्च-मात्रा कार्यों के लिए शॉर्टकट सक्षम करें:

yaml
sequential_key_binding: true

4. तार्किक क्रम

लेबलों को क्रमिक रूप से व्यवस्थित करें:

  • सबसे सामान्य पहले
  • वर्णानुक्रम में
  • तीव्रता से (कम से अधिक)

5. विकल्प सीमित करें

बहुत अधिक विकल्प एनोटेशन धीमा करते हैं:

  • Radio: 2-7 विकल्प
  • Multiselect: 5-15 विकल्प
  • Likert: 5-7 बिंदु

6. पहले परीक्षण करें

तैनाती से पहले स्वयं कई उदाहरण एनोटेट करें ताकि पकड़ सकें:

  • अस्पष्ट लेबल
  • गुम श्रेणियाँ
  • अस्पष्ट निर्देश