> ## Documentation Index
> Fetch the complete documentation index at: https://phaseo.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Phaseo Gateway base URL: https://api.phaseo.app/v1. Send `Authorization: Bearer $PHASEO_API_KEY` with every request.
> Model IDs look like `provider/model`, for example `openai/gpt-6-astra`. Do not guess IDs: list them with `GET /v1/models` or check https://phaseo.app/models. `phaseo/free` routes to an available free model and needs no wallet balance.
> For new text integrations prefer `POST /v1/responses`. `POST /v1/chat/completions` (OpenAI format) and `POST /v1/messages` (Anthropic format) suit existing code.
> The full API contract is https://phaseo.app/docs/openapi/v1/openapi.yaml. Official SDKs: `@phaseo/sdk` (TypeScript) and `phaseo` (Python), plus Go, C#, PHP, Ruby and Rust.
> Search these docs over MCP at https://phaseo.app/docs/mcp, and install Phaseo skills with `npx skills add https://phaseo.app/docs`. If a page is wrong or out of date, report it with the MCP `submit_feedback` tool.
> Manage Phaseo accounts with the `phaseo` CLI (`npm install -g @phaseo/cli`, then `phaseo login` or `phaseo login --device-code`), the `/v1` Management API or the MCP server at `https://mcp.phaseo.app/mcp?access=manage`. Do not send users to the dashboard for account tasks. A person is still needed for sign-up, approving a sign-in, paying the first top-up on the checkout link that `phaseo credits add` returns when no card is saved, confirming each saved-card top-up from the emailed link, and account security (password, MFA, passkeys). Create API keys with `phaseo keys create --name <name> --json`; never guess one. Credit top-ups need `phaseo login --scopes billing:write` first. Task map: https://phaseo.app/docs/v1/developers/manage-from-an-agent.md.

# क्वांटाइज़ेशन

> प्रिसिज़न फ़ॉर्मैट और क्वांटाइज़ेशन तरीका चुनें, और सिर्फ़ उन प्रदाताओं पर रूट करें जो वही सर्व करते हैं जिसे आपने टेस्ट किया।

अनुरोध को सिर्फ़ उन प्रदाताओं पर रूट करने के लिए `provider.quantizations` भेजें जो मॉडल को उसी प्रिसिज़न पर सर्व करते हैं जिसे आपने टेस्ट किया है:

```json theme={null}
{
  "model": "meta/llama-3.3-70b-instruct",
  "messages": [{ "role": "user", "content": "Hello" }],
  "provider": {
    "quantizations": ["FP8"]
  }
}
```

## क्वांटाइज़ेशन क्या बदलता है

क्वांटाइज़ेशन मॉडल के वेट को छोटे संख्या प्रकार में सेव करता है। तब वही मॉडल कम मेमोरी लेता है और तेज़ी से सर्व होता है, लेकिन आउटपुट गुणवत्ता पर कुछ असर पड़ता है। क्वांटाइज़ किए गए मॉडल को दो चीज़ें बताती हैं: **फ़ॉर्मैट** (संख्या प्रकार, जैसे `FP8` या `INT4`) और **तरीका** (वेट को उसमें कैसे बदला गया, जैसे `AWQ` या `GPTQ`)।

बिट आधे करने पर वेट की ज़रूरी मेमोरी भी आधी हो जाती है। 70B-पैरामीटर वाले मॉडल के लिए सिर्फ़ वेट लगभग इतनी जगह लेते हैं:

| फ़ॉर्मैट | प्रति वेट बिट | 70B मॉडल के वेट |
| - | - | - |
| `FP32` | 32 | \~280 GB |
| `BF16`, `FP16` | 16 | \~140 GB |
| `FP8`, `INT8` | 8 | \~70 GB |
| `FP4`, `INT4` | 4 | \~35 GB |

ये आँकड़े सीधा गणित हैं (पैरामीटर × प्रति वेट बाइट) और इनमें एक्टिवेशन और KV कैश शामिल नहीं हैं, जिनके लिए भी प्रदाताओं को मेमोरी चाहिए।

## प्रिसिज़न फ़ॉर्मैट की तुलना करें

प्रिसिज़न फ़ॉर्मैट वह संख्या प्रकार है जिसमें प्रदाता मॉडल के वेट सेव करता है। कम प्रिसिज़न कम मेमोरी लेता है और तेज़ी से सर्व होता है, लेकिन आउटपुट गुणवत्ता पर जोखिम बढ़ता है।

| फ़ॉर्मैट | आम उपयोग | मुख्य फ़ायदा | मुख्य जोखिम |
| - | - | - | - |
| `FP32` | बेसलाइन/पूर्ण प्रिसिज़न | अधिकतम संख्यात्मक स्थिरता | सबसे ज़्यादा मेमोरी और कंप्यूट लागत |
| `BF16` | ट्रेनिंग + उच्च गुणवत्ता इन्फ़रेंस | FP32 की तुलना में बेहतर दक्षता के साथ मज़बूत गुणवत्ता | फिर भी 8-बिट/4-बिट से भारी |
| `FP16` | आम इन्फ़रेंस/ट्रेनिंग पाथ | अच्छी गति और मेमोरी में कमी | BF16 से कम डायनैमिक रेंज |
| `FP8` | थ्रूपुट-केंद्रित इन्फ़रेंस/ट्रेनिंग | गति/मेमोरी में बड़ा लाभ | कठिन प्रॉम्प्ट पर गुणवत्ता में साफ़ गिरावट |
| `FP4` | आक्रामक दक्षता मोड | बहुत ज़्यादा घनत्व और कम लागत | आउटपुट बिगड़ने का ज़्यादा जोखिम |
| `INT8` | व्यापक रूप से समर्थित इन्फ़रेंस क्वांटाइज़ेशन | मध्यम गुणवत्ता असर के साथ मज़बूत दक्षता | कुछ मॉडल के लिए कैलिब्रेशन/संवेदनशीलता की समस्याएँ |
| `INT4` | लागत-संवेदनशील डिप्लॉयमेंट | बहुत कम मेमोरी और ज़्यादा थ्रूपुट | गुणवत्ता और मज़बूती में बड़े समझौते |

### BF16 या FP16

दोनों 16-बिट हैं। `BF16` बड़ी एक्सपोनेंट रेंज रखता है, इसलिए ज़्यादा स्थिर है; `FP16` आम और तेज़ है, लेकिन कुछ वर्कलोड पर कम स्थिर है। जब कोई प्रदाता `BF16` देता है, तो गुणवत्ता-महत्वपूर्ण ट्रैफ़िक के लिए वह ज़्यादा सुरक्षित विकल्प है।

### FP8 और FP4

`FP8` दक्षता में बड़ा लाभ देता है और ज़्यादातर कामों के लिए उपयोगी गुणवत्ता बनाए रखता है। `FP4` इससे आगे जाता है, लेकिन गुणवत्ता ज़्यादा बार गिरती है, खासकर बारीक रीज़निंग, लंबे कॉन्टेक्स्ट और सख्त संरचित आउटपुट पर।

### INT8 और INT4

इंटीजर फ़ॉर्मैट इन्फ़रेंस थ्रूपुट और मेमोरी के लिए बने हैं। ये गुणवत्ता कितनी अच्छी तरह बनाए रखते हैं, यह [क्वांटाइज़ेशन तरीके](#compare-quantization-methods), कैलिब्रेशन डेटा और मॉडल आर्किटेक्चर पर निर्भर करता है। `INT8` को `INT4` की तुलना में सुरक्षित रूप से डिप्लॉय करना आसान है।

### मॉडल का लेबल पढ़ें

प्रदाता वेरिएंट को `bf16`, `fp16`, `fp8`, `int8`, `q4`, `4bit`, `8bit` आदि नाम देते हैं। यह नामकरण मानक नहीं है: `4bit` का मतलब `FP4` भी हो सकता है और `INT4` भी। सटीक वेरिएंट के लिए प्रदाता का दस्तावेज़ देखें।

## क्वांटाइज़ेशन तरीकों की तुलना करें

`INT4` जैसा फ़ॉर्मैट प्रिसिज़न लक्ष्य है; `AWQ` या `GPTQ` जैसा तरीका यह है कि वेट को उसमें कैसे बदला गया। `AWQ INT4` और `GPTQ INT4` एक ही लक्ष्य तक अलग-अलग तरीकों से पहुँचते हैं, इसलिए उनका व्यवहार बहुत अलग हो सकता है। तरीका इस पर असर डालता है कि कितनी सटीकता बचती है, कौन-से रनटाइम मॉडल सर्व कर सकते हैं, मेमोरी लेआउट और सर्विंग गति, और क्या कैलिब्रेशन डेटा की ज़रूरत पड़ी।

| तरीका परिवार | आम उद्देश्य | टिप्पणियाँ |
| - | - | - |
| `AWQ` | एक्टिवेशन-संवेदनशील मुख्य वेट को बचाना | व्यावहारिक इन्फ़रेंस में गुणवत्ता/दक्षता संतुलन के लिए आम |
| `GPTQ` | त्रुटि को न्यूनतम करते हुए ट्रेनिंग के बाद क्वांटाइज़ेशन | कॉम्पैक्ट लोकल इन्फ़रेंस वेरिएंट के लिए लोकप्रिय |
| `GGUF` | llama.cpp इकोसिस्टम में इस्तेमाल होने वाला पैकेजिंग फ़ॉर्मैट | अक्सर अलग-अलग क्वांटाइज़ेशन स्तरों (`Q4`, `Q5` आदि) के साथ जोड़ा जाता है |
| `EXL2` | ExLlama इकोसिस्टम में आक्रामक कम-बिट वेरिएंट | आर्किटेक्चर/रनटाइम सीमाओं के साथ ज़्यादा थ्रूपुट पर ध्यान |

अपने वर्कलोड के लिए तरीकों की तुलना करने के लिए:

1. पहले रनटाइम चुनें: वह जिसे आप भरोसे से डिप्लॉय कर सकते हैं।
2. सिर्फ़ वे तरीका परिवार रखें जिन्हें वह रनटाइम सपोर्ट करता है।
3. एक ही प्रिसिज़न लक्ष्य पर कई तरीकों को बेंचमार्क करें।
4. सिर्फ़ औसत बेंचमार्क स्कोर नहीं, विफलता के तरीके भी ट्रैक करें: संरचित आउटपुट की शुद्धता, लंबे कॉन्टेक्स्ट में सटीकता, टूल कॉल की विश्वसनीयता, सुरक्षा और मॉडरेशन व्यवहार, और लोड के दौरान टेल लेटेंसी।

## एक प्रिसिज़न पर रूट करें

`provider.quantizations` फ़िल्टर सिर्फ़ प्रदाता का नाम नहीं, बल्कि मॉडल के लिए हर प्रदाता का ऑफ़र जाँचता है:

* **मिलान में अक्षरों का छोटा-बड़ा होना, खाली जगह, `-` और `_` अनदेखे होते हैं।** स्पष्ट उपनाम भी मेल खाते हैं: `BF16` के लिए `bfloat16`, `FP16` के लिए `float16`, `FP8` के लिए `float8`। `4bit` जैसे लेबल को `FP4` या `INT4` नहीं माना जाता।
* **बिना क्वांटाइज़ेशन मेटाडेटा वाले ऑफ़र कभी मेल नहीं खाते।**
* **किसी दूसरे प्रिसिज़न पर फ़ॉलबैक नहीं होता।** अगर कोई ऑफ़र मेल नहीं खाता, तो अनुरोध `400 unsupported_model_or_endpoint`, कारण `quantization_not_available`, के साथ विफल होता है। त्रुटि उपलब्ध प्रिसिज़न की सूची देती है और `routing_diagnostics.quantization` के तहत बताती है कि कौन-से प्रदाता हटाए गए और क्यों।
* `provider.quantizations` के विकल्प के रूप में `routing.quantizations` भी स्वीकार किया जाता है।

## प्रिसिज़न चुनें

| वर्कलोड | इससे शुरू करें |
| - | - |
| गुणवत्ता-महत्वपूर्ण रीज़निंग | `BF16` / `FP16` |
| संतुलित लागत और गुणवत्ता | `FP8` / `INT8` |
| ज़्यादा थ्रूपुट, लागत-संवेदनशील | वैलिडेशन के बाद `INT4` / `FP4` |

आपको हर चीज़ के लिए एक ही प्रिसिज़न की ज़रूरत नहीं है। ग्राहक सहायता और महत्वपूर्ण फ़ैसलों के लिए ज़्यादा प्रिसिज़न रखें, और बड़ी मात्रा वाले वर्गीकरण या सारांश के लिए कम प्रिसिज़न स्वीकार करें।

**1. सफलता के मानदंड तय करें**

गुणवत्ता की सीमाएँ (कार्य सटीकता, पास दर, संरचित आउटपुट की वैधता), लेटेंसी और लागत लक्ष्य, और वे विफलता के तरीके तय करें जिन्हें आप स्वीकार नहीं करेंगे।

**2. ज़्यादा प्रिसिज़न वाली बेसलाइन मापें**

`BF16` या `FP16` से शुरू करें। आउटपुट गुणवत्ता, मीडियन और टेल लेटेंसी, और टोकन लागत दर्ज करें। हर कम प्रिसिज़न की तुलना इसी से होगी।

**3. एक बार में एक स्तर नीचे जाएँ**

इसके बाद `FP8` या `INT8` आज़माएँ। `FP4` या `INT4` पर तभी जाएँ जब आपको अतिरिक्त लागत या थ्रूपुट बचत चाहिए। जब तक आपके पास सबूत न हो कि सबसे छोटा वेरिएंट आपके वर्कलोड के लिए काम करता है, सीधे उस पर न जाएँ।

**4. प्रोडक्शन जैसे प्रॉम्प्ट से टेस्ट करें**

लंबे प्रॉम्प्ट, कई चरणों वाली रीज़निंग, टूल कॉलिंग, और सपोर्ट टिकट से लिए गए एज केस शामिल करें।

**5. रोल आउट करें और नज़र रखते रहें**

जब कोई ऑफ़र मेल न खाए, उसके लिए अपने क्लाइंट में एक फ़ॉलबैक मॉडल या प्रिसिज़न रखें, रोल आउट के बाद गुणवत्ता की निगरानी करें, और जब प्रदाता का रनटाइम या मॉडल संशोधन बदले तो दोबारा टेस्ट करें। प्रिसिज़न चुनने के बाद उसके ऊपर [इन्फ़रेंस पैरामीटर](https://phaseo.app/docs/hi/v1/guides/inference-parameters.md) ट्यून करें।


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.