> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/roboflow/roboflow-hi/datasets/adding-data/image-metadata.md).

# Image Metadata

मेटाडेटा आपको Roboflow workspace में छवियों के साथ कस्टम key-value जोड़े संलग्न करने देता है। मेटाडेटा का उपयोग अपनी छवियों के साथ संरचित जानकारी संग्रहीत करने के लिए करें — जैसे capture conditions, device identifiers, quality scores, या कोई domain-specific attributes — और फिर उन attributes के आधार पर अपने डेटा को खोजें, फ़िल्टर करें और व्यवस्थित करें।

## अवलोकन

हर image में metadata entries की कोई भी संख्या हो सकती है। एक entry एक है **कुंजी** (एक नाम जैसे `camera_id`) जिसे एक **मान** (एक स्ट्रिंग, संख्या, या बूलियन).

| मान का प्रकार | उदाहरण                                      |
| ------------- | ------------------------------------------- |
| स्ट्रिंग      | `location: "warehouse-3"`, `shift: "night"` |
| संख्या        | `temperature: 72.5`, `quality_score: 95`    |
| बूलियन        | `reviewed: true`, `is_night: false`         |

### उपयोग के मामले

* **संदर्भ कैप्चर करें** — कैमरा ID, GPS निर्देशांक, मौसम, प्रकाश स्थितियाँ रिकॉर्ड करें
* **गुणवत्ता ट्रैकिंग** — confidence scores, review status, annotator IDs संलग्न करें
* **डेटा स्लाइसिंग** — लक्षित training sets बनाने के लिए अपने dataset को किसी भी attribute के आधार पर फ़िल्टर करें
* **बाहरी सिस्टम लिंकिंग** — छवियों को अपने internal tools से जोड़ने वाले identifiers संग्रहीत करें

## मेटाडेटा जोड़ना

आप web UI, Python SDK, REST API, या स्वचालित रूप से via [S3 Bucket Mirror](/roboflow/roboflow-hi/datasets/adding-data/datasources.md).

### वेब एप्लिकेशन

{% stepper %}
{% step %}

#### एक image खोलें

अपने project में कोई भी image खोलें।
{% endstep %}

{% step %}

#### कुंजी और मान दर्ज करें

metadata अनुभाग में, एक **कुंजी** पहले इनपुट में और एक **मान** दूसरे इनपुट में दर्ज करें.
{% endstep %}

{% step %}

#### Add

दबाएँ **Enter** सहेजने के लिए Enter दबाएँ या Add पर क्लिक करें
{% endstep %}
{% endstepper %}

मानों को उनके प्रकार के अनुसार स्वचालित रूप से पार्स किया जाता है:

| दर्ज किया गया मान | के रूप में संग्रहीत       |
| ----------------- | ------------------------- |
| `front`           | `"front"` (स्ट्रिंग)      |
| `95`              | `95` (संख्या)             |
| `3.14`            | `3.14` (संख्या)           |
| `true` / `false`  | `true` / `false` (बूलियन) |

<figure><img src="/files/20c2e467343d15272c18e021bf283815f4f4520b" alt=""><figcaption><p>Annotation Tool का मेटाडेटा संपादक</p></figcaption></figure>

### Python SDK

एक `metadata` dictionary जब image अपलोड कर रहे हों:

```python
import roboflow

rf = roboflow.Roboflow(api_key="YOUR_API_KEY")
project = rf.workspace("your-workspace").project("your-project")

project.upload(
    image_path="image.jpg",
    metadata={
        "camera_id": "cam001",
        "location": "warehouse-3",
        "temperature": 72.5,
        "is_night": False
    }
)
```

### CLI

का उपयोग करें `roboflow image metadata` मौजूदा images पर metadata और tags अपडेट करने के लिए कमांड:

```bash
# एक image पर metadata सेट करें
roboflow image metadata <image_id> -m '{"camera_id": "cam001", "location": "warehouse-3"}'

# एक image में tags जोड़ें
roboflow image metadata <image_id> --tags "reviewed,v2"

# metadata keys हटाएँ
roboflow image metadata <image_id> --remove-metadata "old_key,deprecated_field"

# tags हटाएँ
roboflow image metadata <image_id> --remove-tags "draft"

# संयोजन: एक कॉल में metadata सेट करें, tags जोड़ें, और tags हटाएँ
roboflow image metadata <image_id> -m '{"quality_score": 95}' --tags "reviewed" --remove-tags "pending"

# कई images का batch update (async)
roboflow image metadata img1,img2,img3 -m '{"batch": "june-2026"}' --tags "processed" --poll
```

एकल image ID सिंक्रोनस रूप से अपडेट होती है। कॉमा से अलग किए गए कई IDs (1,000 तक) batch async endpoint का उपयोग करते हैं। Add `--poll` बैच के समाप्त होने तक प्रतीक्षा करने के लिए; इसके बिना कमांड एक `taskId` जो आप बाद में `roboflow asynctasks get <task-id>`.

| फ़्लैग                 | विवरण                                           |
| ---------------------- | ----------------------------------------------- |
| `-m`, `--metadata`     | सेट करने के लिए key-value जोड़ों की JSON string |
| `--remove-metadata`    | हटाने के लिए कॉमा से अलग किए गए metadata keys   |
| `--tags`               | जोड़ने के लिए कॉमा से अलग किए गए tags           |
| `--remove-tags`        | हटाने के लिए कॉमा से अलग किए गए tags            |
| `--poll` / `--no-poll` | बैच पूर्णता की प्रतीक्षा करें (केवल batch mode) |
| `--timeout`            | सेकंड में polling timeout (default: 1800)       |

### REST API

#### अपलोड के दौरान metadata जोड़ें

एक `metadata` फ़ील्ड (JSON-stringified) शामिल करें जब image अपलोड कर रहे हों multipart form data में:

```bash
curl -X POST "https://api.roboflow.com/dataset/your-dataset/upload?api_key=YOUR_API_KEY" \\
  -F "name=image.jpg" \\
  -F "split=train" \\
  -F "file=@image.jpg" \\
  -F 'metadata={"camera_id":"cam001","temperature":72.5}'
```

### S3 Bucket Mirror

जब [Datasources](/roboflow/roboflow-hi/datasets/adding-data/datasources.md) का उपयोग करके S3 bucket से images sync करते समय, metadata प्रत्येक image के साथ रखी गई JSON sidecar files के माध्यम से import किया जाता है। देखें [Datasources](/roboflow/roboflow-hi/datasets/adding-data/datasources.md) sidecar file format, constraints, और update strategies के लिए।

## metadata द्वारा खोज

metadata को [Asset Library](/roboflow/roboflow-hi/workspaces/asset-library.md)में indexed और searchable किया जाता है। metadata values के आधार पर images फ़िल्टर करने के लिए search bar का उपयोग करें:

```
metadata.camera_id:"cam001"
metadata.quality_score>80
metadata.reviewed:true
```

आप metadata filters को अन्य search filters के साथ जोड़ सकते हैं:

```
metadata.location:"warehouse-3" AND class:forklift
```

Asset Library आपके workspace में मौजूद चीज़ों के आधार पर metadata keys और values के लिए autocomplete भी प्रदान करती है।

## कुंजी नामकरण नियम

metadata keys को इन नियमों का पालन करना चाहिए:

| नियम         | विवरण                                                                |
| ------------ | -------------------------------------------------------------------- |
| अनुमत वर्ण   | अक्षर (`a-z`, `A-Z`), संख्याएँ (`0-9`), अंडरस्कोर (`_`), डॉट्स (`.`) |
| पहला वर्ण    | एक अक्षर, संख्या, या अंडरस्कोर होना चाहिए                            |
| निषिद्ध वर्ण | फॉरवर्ड स्लैश (`/`) की अनुमति नहीं है                                |

मान्य keys: `camera_id`, `capture.temperature`, `_internal_ref`, `v2_score`

अमान्य keys: `camera/id` (शामिल है `/`), `.starts_with_dot` (से शुरू होता है `.`), `रिक्त स्थान हैं` (रिक्त स्थान शामिल हैं)

## Metadata बनाम Tags

metadata और [tags](/roboflow/roboflow-hi/datasets/manage-datasets/add-tags-to-images.md) दोनों आपको images व्यवस्थित करने में मदद करते हैं, लेकिन उनके उद्देश्य अलग-अलग हैं:

|                        | टैग्स                                | मेटाडेटा                                   |
| ---------------------- | ------------------------------------ | ------------------------------------------ |
| **संरचना**             | सरल लेबल                             | कुंजी-मूल्य जोड़े                          |
| **मान**                | कोई मान नहीं, केवल एक नाम            | स्ट्रिंग, संख्या, या बूलियन                |
| **इसके लिए सर्वोत्तम** | वर्गीकरण, कार्यप्रवाह स्थिति         | संरचित गुण, माप                            |
| **उदाहरण**             | `reviewed`, `v2`, `needs-annotation` | `temperature: 72.5`, `camera_id: "cam001"` |

आप एक ही image पर दोनों का उपयोग कर सकते हैं। उदाहरण के लिए, एक image को `reviewed` के रूप में tag करें और साथ ही `reviewer: "alice"` और `confidence: 0.95` को metadata के रूप में संग्रहीत करें।


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.roboflow.com/roboflow/roboflow-hi/datasets/adding-data/image-metadata.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
