> 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/workflows/build-a-workflow.md).

# एक Workflow बनाएँ

एक workflow blocks से मिलकर बना होता है, जो विशिष्ट कार्य करते हैं, जैसे model inference चलाना, logic करना, या external services के साथ interface करना।

उपलब्ध block की सूची पर गहराई से जानने के लिए, हमारा [block documentation](https://inference.roboflow.com/workflows/blocks/).

### अवलोकन

यह गाइड object detection model चलाने, predictions गिनने, और model results को visualize करने के लिए चार-block workflow बनाने की प्रक्रिया बताएगी। यहाँ है [अंतिम workflow template](https://app.roboflow.com/workflows/embed/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ3b3JrZmxvd0lkIjoiMmdqakJxMDV3Q01ac1hHM3hkeFAiLCJ3b3Jrc3BhY2VJZCI6ImtyT1RBYm5jRmhvUU1DZExPbGU0IiwidXNlcklkIjoiSW1GTElaU2tHYk55OXpiNFV1cWxNelBScHBRMiIsImlhdCI6MTczODE4ODk5MH0.f72WI5bdjtnwC8iqXF_XiUVarfOktIAH1egpsI0Oh4Q) साथ-साथ करने के लिए।

{% embed url="<https://app.roboflow.com/workflows/embed/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ3b3JrZmxvd0lkIjoiMmdqakJxMDV3Q01ac1hHM3hkeFAiLCJ3b3Jrc3BhY2VJZCI6ImtyT1RBYm5jRmhvUU1DZExPbGU0IiwidXNlcklkIjoiSW1GTElaU2tHYk55OXpiNFV1cWxNelBScHBRMiIsImlhdCI6MTczODE4ODk5MH0.f72WI5bdjtnwC8iqXF_XiUVarfOktIAH1egpsI0Oh4Q>" fullWidth="false" %}

<figure><img src="/files/4b60afbb39a724b20c1bafe9ebea527c26eb4772" alt="" width="563"><figcaption><p>Detect, Count, and Visualize Workflow</p></figcaption></figure>

### Block Connections

बिल्डिंग शुरू करने से पहले, यह समझना महत्वपूर्ण है कि block connections कैसे काम करते हैं।

किसी स्थान पर block जोड़ने के लिए, उसे पिछले block को input के रूप में उपयोग करना होता है। उदाहरण के लिए, ऊपर दिखाए गए workflow में, *Property Definition* block इसके बाद आता है *Object Detection* block क्योंकि यह model block को input के रूप में उपयोग करता है। The *Bounding Box Visualization* block दाईं ओर है, क्योंकि यह *Property Definition* block के output का उपयोग नहीं करता, लेकिन model output का संदर्भ देता है।

<figure><img src="/files/edcd97a8327277f1c3f4b31d50c8e250e78d03da" alt=""><figcaption><p>Model Comparison Workflow</p></figcaption></figure>

ऊपर दिए गए उदाहरण workflow में, हमारे पास चार अलग-अलग pathways हैं, क्योंकि हर branch runtime पर parallel रूप से execute होती है, और input के रूप में दूसरी branch के blocks पर निर्भर नहीं करती।

### Builder Assist

Builder Assist नियंत्रित करता है कि blocks को connect और insert करते समय workflow editor आपको कितनी सहायता देता है। आप top-right navbar में मौजूद toggle का उपयोग करके modes के बीच स्विच कर सकते हैं।

तीन modes हैं:

* **Auto** (default): जब blocks को connect या insert किया जाता है, तो compatible input और output fields अपने-आप wire हो जाते हैं। जब आप blocks हटाते या disconnect करते हैं, तो builder downstream references भी ठीक करता है।
* **Quick**: सुझाए गए connections और block recommendations दिखाता है, लेकिन उन्हें केवल तभी लागू करता है जब आप स्पष्ट रूप से स्वीकार करते हैं। यदि आप builder को आपके behalf पर बदलाव किए बिना guidance चाहते हैं, तो यह उपयोगी है।
* **Manual**: कोई सुझाव नहीं और कोई automatic wiring नहीं। हर connection आप स्वयं नियंत्रित करते हैं।

आपका चुना हुआ mode locally सहेजा जाता है, इसलिए यह sessions के बीच बना रहता है।

### Workflow बनाना

#### Object Detection Model

सबसे पहले, एक जोड़ें *Object Detection Model* block. आप एक public pre-trained model चुन सकते हैं, जैसे YOLOv8n जो [COCO](https://universe.roboflow.com/microsoft/coco), या अपने workspace में एक fine-tuned model। मैं pre-trained *yolov8n* model के साथ लोगों और वाहनों का पता लगाऊँगा।

<figure><img src="/files/c5be16d22d3021e1ab21f0ce380cb81c15f2ce60" alt="" width="344"><figcaption></figcaption></figure>

object detection block में एक आवश्यक image parameter होता है जो निर्धारित करता है कि model किस पर inference कर रहा है। कई optional parameters हैं, और मुख्य parameters का विवरण नीचे दिया गया है:

* Class Filter: उन classes की सूची जिन्हें model वापस करेगा। नोट: model हमेशा केवल वही classes लौटाएगा जिन पर उसे trained किया गया है; इससे आप अनावश्यक classes को फ़िल्टर कर सकते हैं।
* Confidence: उससे कम confidence वाले objects वापस नहीं किए जाएंगे।
* IoU threshold: अधिक threshold अधिक overlapping predictions लौटाएगा। 0.9 का मतलब है कि 90% या उससे कम overlap वाले objects लौटाए जाएंगे, जबकि 0.1 का मतलब है कि 10% से अधिक overlap वाले objects शामिल नहीं किए जाएंगे।
* Max Detections: model द्वारा लौटाए जाने वाले objects की अधिकतम संख्या
* Class Agnostic NMS: क्या overlap filtering को केवल समान class वाले objects की तुलना और exclusion करनी चाहिए, या सभी classes की

#### Property Definition

property definition block आपको अपने data से संबंधित जानकारी निकालने देता है, जैसे image size, predicted classes, या detected objects की संख्या। इस उदाहरण में, हम object detection model द्वारा पाए गए objects की संख्या गिनेंगे।

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXc507UbRnkEH6XMdrfmwVZbHcK6x6K5THwnt1RmEk8iXSojwvmiA_q6KwRXV9bJudYnW7NMTQKKb9GqGxm_P0VjbuOoGWcDsM5NoQckl9jV4YcjYQFIvYoCgvd_YnQTNJLlwdbZwA?key=yGJPQzp1abf4J7pT0mnBw8w4" alt="" width="375"><figcaption></figcaption></figure>

के लिए *Data* property के लिए, model predictions को reference करें। के लिए *Operations*, Count Items चुनें। यह configuration object detection model द्वारा की गई predictions की संख्या लौटाएगा।

#### Bounding Box Visualization

model results को visualize करने के लिए एक bounding box visualization block जोड़ें। For the *image* parameter के लिए, input image चुनें। predictions के लिए, model results चुनें। आप optional configuration properties का उपयोग करके bounding boxes का रंग और आकार वैकल्पिक रूप से बदल सकते हैं।

<figure><img src="/files/10d7fc9eba4fc897184968bf35bc8e51d1c5ea79" alt="" width="342"><figcaption></figcaption></figure>

#### Label Visualization

bounding boxes बनाने के अलावा, हम predictions के class names भी दिखाना चाहेंगे। ऐसा करने के लिए, एक जोड़ें *Label Visualization* block को bounding box visualization के बाद। एक ही image पर दोनों bounding boxes और labels बनाने के लिए, आप reference input image को as the पर सेट करना चाहेंगे *bounding\_box\_visualization* image, input image को reference करने के बजाय। इससे labels bounding boxes के ऊपर बनेंगे।

<figure><img src="/files/9bcb7bac97513ce722909a458be4f54e731c6460" alt="" width="343"><figcaption></figcaption></figure>

आप optional *Text* parameter को बदलकर display text को class name से confidence, या class name and confidence में बदल सकते हैं।

### Changes सहेजना

Workflow editor आपके बदलावों को draft के रूप में स्वतः सहेजता है। Editing करते समय आपको manually save करने की आवश्यकता नहीं है।

अपने बदलावों को live करने के लिए, Workflow को publish करें। यदि आपने Workflow deploy किया है, तो आपका published version उन सभी devices पर चलना शुरू हो जाएगा जहाँ Workflow deploy किया गया है।

अब जब आपके पास एक completed workflow है, इसे test करने का समय है।


---

# 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, and the optional `goal` query parameter:

```
GET https://docs.roboflow.com/roboflow/roboflow-hi/workflows/build-a-workflow.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
