> 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/reference/hi/inference/inference-sdk/model-management.md).

# Model Management

## Model weights download

जब self-hosted Inference Server का उपयोग करते हैं, तो inference चलाने से पहले weights डाउनलोड और cache करने के लिए आप models को pre-load कर सकते हैं:

```python
from inference_sdk import InferenceHTTPClient

client = InferenceHTTPClient(
    api_url="http://localhost:9001",
    api_key="YOUR_ROBOFLOW_API_KEY"
)

# मॉडल को pre-load करें (weights को सर्वर cache में डाउनलोड करता है)
client.load_model(model_id="rfdetr-base")
```

वैकल्पिक रूप से, पहली inference चलाने पर डाउनलोड अपने आप शुरू हो जाएगा।

Workflows के लिए, आपको Workflow में उपयोग होने वाले सभी models को भी pre-load करना चाहिए और उसकी definition को cache करने के लिए Workflow को एक बार चलाना चाहिए।

आप सत्यापित कर सकते हैं कि सर्वर पर कौन-से models loaded हैं:

```python
loaded_models = client.list_loaded_models()
print(f"लोड किए गए models: {loaded_models}")
```

के बारे में और पढ़ें [weights caching, persistent storage, और Docker configuration](/reference/hi/inference/inference-python/offline-weights.md).

## Inference Server को नियंत्रित करने के तरीके

### सर्वर जानकारी प्राप्त करना

```python
from inference_sdk import InferenceHTTPClient

# ROBOFLOW_API_KEY को अपने Roboflow API Key से बदलें
CLIENT = InferenceHTTPClient(
    api_url="http://localhost:9001",
    api_key="ROBOFLOW_API_KEY"
)
CLIENT.get_server_info()
```

### लोड किए गए models की सूची

```python
from inference_sdk import InferenceHTTPClient

# ROBOFLOW_API_KEY को अपने Roboflow API Key से बदलें
CLIENT = InferenceHTTPClient(
    api_url="http://localhost:9001",
    api_key="ROBOFLOW_API_KEY"
)
CLIENT.list_loaded_models()
```

Async समकक्ष: `list_loaded_models_async()`

### किसी विशिष्ट model का विवरण प्राप्त करना

```python
from inference_sdk import InferenceHTTPClient

# ROBOFLOW_API_KEY को अपने Roboflow API Key से बदलें
CLIENT = InferenceHTTPClient(
    api_url="http://localhost:9001",
    api_key="ROBOFLOW_API_KEY"
)
CLIENT.get_model_description(model_id="some/1", allow_loading=True)
```

यदि `allow_loading` को सेट किया गया है `True`, तो यदि model पहले से loaded नहीं है, तो side effect के रूप में उसे load किया जाता है। डिफ़ॉल्ट: `True`.

Async समकक्ष: `get_model_description_async()`

### किसी model को load करना

```python
from inference_sdk import InferenceHTTPClient

# ROBOFLOW_API_KEY को अपने Roboflow API Key से बदलें
CLIENT = InferenceHTTPClient(
    api_url="http://localhost:9001",
    api_key="ROBOFLOW_API_KEY"
)
CLIENT.load_model(model_id="some/1", set_as_default=True)
```

संकेतित model load किया जाता है। यदि `set_as_default` को सेट किया गया है `True`, तो सफल load के बाद model client के लिए default model के रूप में उपयोग किया जाता है। डिफ़ॉल्ट मान: `False`.

Async समकक्ष: `load_model_async()`

### किसी model को unload करना

```python
from inference_sdk import InferenceHTTPClient

# ROBOFLOW_API_KEY को अपने Roboflow API Key से बदलें
CLIENT = InferenceHTTPClient(
    api_url="http://localhost:9001",
    api_key="ROBOFLOW_API_KEY"
)
CLIENT.unload_model(model_id="some/1")
```

कभी-कभी, सर्वर साइड पर OOM से बचने के लिए, किसी model को unload करना आवश्यक होता है।

Async समकक्ष: `unload_model_async()`

### सभी models को unload करना

```python
from inference_sdk import InferenceHTTPClient

# ROBOFLOW_API_KEY को अपने Roboflow API Key से बदलें
CLIENT = InferenceHTTPClient(
    api_url="http://localhost:9001",
    api_key="ROBOFLOW_API_KEY"
)
CLIENT.unload_all_models()
```

Async समकक्ष: `unload_all_models_async()`
