Quantization Engine: Precision Reduction for Inference
QuantizationEngine reduces model weights to FP16, BF16, FP8, INT8, or INT4. This page specifies the decision tree, flowchart, and quality gates.
QuantizationEngine compresses model weights and activations to lower precision formats for faster inference and smaller memory footprints. This page specifies the supported methods, the selection decision tree, and the validation flow that prevents quality regression.
Group-wise or block-wise; GPTQ/AWQ style (Engineering assumption)
FP8 and INT4 support depend on hardware availability and backend implementation. The engine falls back to the nearest supported precision if the target backend cannot execute the chosen format.
The engine selects a quantization method based on target hardware, latency requirements, memory constraints, and quality tolerance. The decision tree below shows the selection logic.
Pre-quant and post-quant benchmarks run on the same dataset split to ensure comparability. The engine computes perplexity, accuracy, and task-specific metrics. A regression gate compares post-quant results against pre-quant baselines and against the thresholds defined in OQ-006.
Gate
Metric
Action on Failure
Integrity Check
SHA-256 hash match, layer count, tensor shape
Reject and retry with same config
Perplexity Regression
Perplexity delta > OQ-006 threshold
Reject and retry with higher precision
Accuracy Regression
Accuracy delta > OQ-006 threshold
Reject and retry with higher precision
Threshold values in OQ-006 are placeholders pending experimental calibration. Do not deploy quantized models in production until thresholds are finalized.
On rejection, the engine retries with the next higher precision in the hierarchy: INT4 → INT8 → FP8 → BF16 → FP16. After three retries, the job fails and the model remains in its original precision. The retry count and final state are logged to ExperimentTracker.
QuantizationEngine is invoked by DeploymentManager before staging and by Offline Deployment when building secure transfer packages. It reads from ArtifactStore and writes quantized artifacts back to the same store with a new version tag.
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"EMEP","colors":{"primary":"#7C3AED","light":"#A78BFA","dark":"#5B21B6"},"appearance":{"strict":false},"background":{"decoration":"gradient","color":{"light":"#fafdfd","dark":"#0f1214"}},"seo":{"indexing":"all"},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"interaction":{"drilldown":true},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"ping-47788c6e","hasAudioNarration":false,"actualSubdomain":"ping-47788c6e","customDomains":["doc.blueapi.ir"],"gitSource":{"type":"github","owner":"sarmadaf24","repo":"evolutionarymodellplatform","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6a9d914c7dbaaddea3035369","collectionId":"c7cc67f8-369f-45fc-a29a-15a691f103b0","liveDeploymentHistoryId":"6a9d914c7dbaaddea3035369","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6a9d914c7dbaaddea3035369","clientVersion":"0.0.4043","searchFilterCounts":[{"language":"default","tag":"Interfaces \u0026 Governance","count":32},{"language":"default","tag":"Deployment \u0026 Ops","count":24},{"language":"default","tag":"Evolution \u0026 Evaluation","count":24},{"language":"default","tag":"Model Pipeline","count":20},{"language":"default","tag":"Platform","count":14},{"language":"default","tag":"Architecture","count":11},{"language":"default","tag":"Phases","count":10},{"language":"default","tag":"Testing","count":9},{"language":"default","tag":"Tracking \u0026 Reproducibility","count":9},{"language":"default","tag":"Evolution Engine","count":8}],"searchSettings":{"maxResults":7}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"deployment/quantization","slug":"/deployment/quantization","pageMetadata":{"title":"Quantization Engine: Precision Reduction for Inference","sidebarTitle":"Quantization","description":"QuantizationEngine reduces model weights to FP16, BF16, FP8, INT8, or INT4. This page specifies the decision tree, flowchart, and quality gates.","href":"/deployment/quantization"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"QuantizationEngine reduces model weights to FP16, BF16, FP8, INT8, or INT4. This page specifies the decision tree, flowchart, and quality gates.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,p:`p`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Heading,Mermaid,Note,Table,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Mermaid)_missingMdxReference(`Mermaid`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`QuantizationEngine compresses model weights and activations to lower precision formats for faster inference and smaller memory footprints. This page specifies the supported methods, the selection decision tree, and the validation flow that prevents quality regression.`}),`\n`,_jsx(Heading,{level:`2`,id:`supported-methods`,children:`Supported Methods`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Method`}),_jsx(_components.th,{children:`Precision`}),_jsx(_components.th,{children:`Use Case`}),_jsx(_components.th,{children:`Notes`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`FP16`}),_jsx(_components.td,{children:`16-bit float`}),_jsx(_components.td,{children:`General GPU inference`}),_jsx(_components.td,{children:`Widely supported, minimal range loss`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`BF16`}),_jsx(_components.td,{children:`16-bit bfloat`}),_jsx(_components.td,{children:`Ampere+ GPUs`}),_jsx(_components.td,{children:`Wider dynamic range than FP16`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`FP8`}),_jsx(_components.td,{children:`8-bit float`}),_jsx(_components.td,{children:`Hopper+ GPUs, throughput`}),_jsx(_components.td,{children:`NVIDIA transformer engine support`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`INT8`}),_jsx(_components.td,{children:`8-bit integer`}),_jsx(_components.td,{children:`Edge, CPU, latency-sensitive`}),_jsx(_components.td,{children:`Requires calibration; static or dynamic scaling`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`INT4`}),_jsx(_components.td,{children:`4-bit integer`}),_jsx(_components.td,{children:`Maximum compression, memory-bound`}),_jsx(_components.td,{children:`Group-wise or block-wise; GPTQ/AWQ style (Engineering assumption)`})]})]})]}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`FP8 and INT4 support depend on hardware availability and backend implementation. The engine falls back to the nearest supported precision if the target backend cannot execute the chosen format.`})}),`\n`,_jsx(Heading,{level:`2`,id:`decision-tree`,children:`Decision Tree`}),`\n`,_jsx(_components.p,{children:`The engine selects a quantization method based on target hardware, latency requirements, memory constraints, and quality tolerance. The decision tree below shows the selection logic.`}),`\n`,_jsx(Mermaid,{chart:`flowchart TD\n START([START]) --> INPUT[INPUT: Model, Target Hardware, Latency Budget, Memory Budget]\n INPUT --> CHECK_FP8{Target supports FP8?}\n CHECK_FP8 -->|YES| CHECK_LATENCY{Latency critical?}\n CHECK_FP8 -->|NO| CHECK_BF16{Target supports BF16?}\n CHECK_LATENCY -->|YES| SELECT_FP8[SELECT FP8]\n CHECK_LATENCY -->|NO| CHECK_BF16\n CHECK_BF16 -->|YES| CHECK_MEMORY{Memory \u003c 50% of FP16?}\n CHECK_BF16 -->|NO| SELECT_FP16[SELECT FP16]\n CHECK_MEMORY -->|YES| SELECT_INT8[SELECT INT8]\n CHECK_MEMORY -->|NO| SELECT_BF16[SELECT BF16]\n SELECT_FP8 --> OUTPUT\n SELECT_FP16 --> OUTPUT\n SELECT_BF16 --> OUTPUT\n SELECT_INT8 --> CHECK_INT4{Memory \u003c 25% of FP16?}\n CHECK_INT4 -->|YES| SELECT_INT4[SELECT INT4]\n CHECK_INT4 -->|NO| OUTPUT\n SELECT_INT4 --> OUTPUT\n OUTPUT[OUTPUT: Selected Method + Config] --> END([END])`}),`\n`,_jsx(Heading,{level:`2`,id:`quantization-flowchart`,children:`Quantization Flowchart`}),`\n`,_jsx(_components.p,{children:`Every quantization job follows the same pipeline. The flowchart below shows the full lifecycle from model input to acceptance or rejection.`}),`\n`,_jsx(Mermaid,{chart:`flowchart TD\n START([START]) --> INPUT[INPUT: Model, Method, Config, Thresholds]\n INPUT --> PREBENCH[Pre-quant Benchmark]\n PREBENCH --> SELECT[Method Selection]\n SELECT --> QUANT[Quantize Weights + Activations]\n QUANT --> INTEGRITY[Integrity Check: Hash + Structure Validation]\n INTEGRITY -->|FAIL| REJECT1[Reject / Retry]\n INTEGRITY -->|PASS| POSTBENCH[Post-quant Benchmark]\n POSTBENCH --> REGRESS{Quality Regression?}\n REGRESS -->|YES| REJECT2[Reject / Retry]\n REGRESS -->|NO| ACCEPT[Accept: Store Quantized Artifact]\n REJECT1 --> END_FAIL([END: FAIL])\n REJECT2 --> END_FAIL\n ACCEPT --> END_PASS([END: PASS])`}),`\n`,_jsx(Heading,{level:`2`,id:`quality-gates`,children:`Quality Gates`}),`\n`,_jsx(_components.p,{children:`Pre-quant and post-quant benchmarks run on the same dataset split to ensure comparability. The engine computes perplexity, accuracy, and task-specific metrics. A regression gate compares post-quant results against pre-quant baselines and against the thresholds defined in OQ-006.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Gate`}),_jsx(_components.th,{children:`Metric`}),_jsx(_components.th,{children:`Action on Failure`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Integrity Check`}),_jsx(_components.td,{children:`SHA-256 hash match, layer count, tensor shape`}),_jsx(_components.td,{children:`Reject and retry with same config`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Perplexity Regression`}),_jsx(_components.td,{children:`Perplexity delta > OQ-006 threshold`}),_jsx(_components.td,{children:`Reject and retry with higher precision`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Accuracy Regression`}),_jsx(_components.td,{children:`Accuracy delta > OQ-006 threshold`}),_jsx(_components.td,{children:`Reject and retry with higher precision`})]})]})]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Threshold values in OQ-006 are placeholders pending experimental calibration. Do not deploy quantized models in production until thresholds are finalized.`})}),`\n`,_jsx(Heading,{level:`2`,id:`retry-policy`,children:`Retry Policy`}),`\n`,_jsxs(_components.p,{children:[`On rejection, the engine retries with the next higher precision in the hierarchy: INT4 → INT8 → FP8 → BF16 → FP16. After three retries, the job fails and the model remains in its original precision. The retry count and final state are logged to `,_jsx(_components.a,{href:`/tracking/experiment-tracking`,children:`ExperimentTracker`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`integration`,children:`Integration`}),`\n`,_jsxs(_components.p,{children:[`QuantizationEngine is invoked by `,_jsx(_components.a,{href:`/deployment/deployment-specification`,children:`DeploymentManager`}),` before staging and by `,_jsx(_components.a,{href:`/deployment/offline-deployment`,children:`Offline Deployment`}),` when building secure transfer packages. It reads from `,_jsx(_components.a,{href:`/tracking/artifact-registry`,children:`ArtifactStore`}),` and writes quantized artifacts back to the same store with a new version tag.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Quantization Engine: Precision Reduction for Inference","sidebarTitle":"Quantization","description":"QuantizationEngine reduces model weights to FP16, BF16, FP8, INT8, or INT4. This page specifies the decision tree, flowchart, and quality gates.","href":"/deployment/quantization"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Supported Methods","slug":"supported-methods","depth":2,"children":[]},{"title":"Decision Tree","slug":"decision-tree","depth":2,"children":[]},{"title":"Quantization Flowchart","slug":"quantization-flowchart","depth":2,"children":[]},{"title":"Quality Gates","slug":"quality-gates","depth":2,"children":[]},{"title":"Retry Policy","slug":"retry-policy","depth":2,"children":[]},{"title":"Integration","slug":"integration","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"ping-47788c6e","siteName":"EMEP","title":"Quantization Engine: Precision Reduction for Inference - EMEP","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-06T12:16:47.536Z","originalFileLocation":"deployment/quantization.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"QuantizationEngine reduces model weights to FP16, BF16, FP8, INT8, or INT4. This page specifies the decision tree, flowchart, and quality gates.\">\u003cmeta data-mint-head name=\"application-name\" content=\"EMEP\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/ping-47788c6e/_generated/favicon/apple-touch-icon.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/ping-47788c6e/_generated/favicon/favicon-32x32.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/ping-47788c6e/_generated/favicon/favicon-16x16.png?v=3\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/ping-47788c6e/_generated/favicon/favicon.ico?v=3\">\u003cmeta data-mint-head property=\"og:title\" content=\"Quantization Engine: Precision Reduction for Inference - EMEP\">\u003cmeta data-mint-head property=\"og:description\" content=\"QuantizationEngine reduces model weights to FP16, BF16, FP8, INT8, or INT4. This page specifies the decision tree, flowchart, and quality gates.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"EMEP\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://doc.blueapi.ir/deployment/quantization\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://ping-47788c6e.mintlify.app/_mintlify/api/og/v2?division=Quantization+%26+Inference\u0026amp;title=Quantization+Engine%3A+Precision+Reduction+for+Inference\u0026amp;description=QuantizationEngine+reduces+model+weights+to+FP16%2C+BF16%2C+FP8%2C+INT8%2C+or+INT4.+This+page+specifies+the+decision+tree%2C+flowchart%2C+and+quality+gates.\u0026amp;theme=074c708ff2f145909468e7e3\u0026amp;signature=864168331ab4b5e4d3795ca09ee29d053becb966e0c9f3e83287b3959704c299\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Quantization Engine: Precision Reduction for Inference - EMEP\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"QuantizationEngine reduces model weights to FP16, BF16, FP8, INT8, or INT4. This page specifies the decision tree, flowchart, and quality gates.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://ping-47788c6e.mintlify.app/_mintlify/api/og/v2?division=Quantization+%26+Inference\u0026amp;title=Quantization+Engine%3A+Precision+Reduction+for+Inference\u0026amp;description=QuantizationEngine+reduces+model+weights+to+FP16%2C+BF16%2C+FP8%2C+INT8%2C+or+INT4.+This+page+specifies+the+decision+tree%2C+flowchart%2C+and+quality+gates.\u0026amp;theme=074c708ff2f145909468e7e3\u0026amp;signature=864168331ab4b5e4d3795ca09ee29d053becb966e0c9f3e83287b3959704c299\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/ping-47788c6e/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"EMEP\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#7C3AED\">\u003clink data-mint-head rel=\"canonical\" href=\"https://doc.blueapi.ir/deployment/quantization\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/deployment/quantization.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://doc.blueapi.ir/#organization\",\"name\":\"EMEP\",\"url\":\"https://doc.blueapi.ir\"},{\"@type\":\"WebSite\",\"@id\":\"https://doc.blueapi.ir#website\",\"name\":\"EMEP\",\"url\":\"https://doc.blueapi.ir\",\"publisher\":{\"@id\":\"https://doc.blueapi.ir/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://doc.blueapi.ir/deployment/quantization#webpage\",\"url\":\"https://doc.blueapi.ir/deployment/quantization\",\"name\":\"Quantization Engine: Precision Reduction for Inference\",\"description\":\"QuantizationEngine reduces model weights to FP16, BF16, FP8, INT8, or INT4. This page specifies the decision tree, flowchart, and quality gates.\",\"dateModified\":\"2026-09-06T12:16:47.536Z\",\"isPartOf\":{\"@id\":\"https://doc.blueapi.ir#website\"},\"breadcrumb\":{\"@id\":\"https://doc.blueapi.ir/deployment/quantization#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://doc.blueapi.ir/deployment/quantization#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"EMEP\",\"item\":\"https://doc.blueapi.ir\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Quantization Engine: Precision Reduction for Inference\",\"item\":\"https://doc.blueapi.ir/deployment/quantization\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://doc.blueapi.ir/deployment/quantization#article\",\"headline\":\"Quantization Engine: Precision Reduction for Inference\",\"name\":\"Quantization Engine: Precision Reduction for Inference\",\"description\":\"QuantizationEngine reduces model weights to FP16, BF16, FP8, INT8, or INT4. This page specifies the decision tree, flowchart, and quality gates.\",\"url\":\"https://doc.blueapi.ir/deployment/quantization\",\"mainEntityOfPage\":{\"@id\":\"https://doc.blueapi.ir/deployment/quantization#webpage\"},\"dateModified\":\"2026-09-06T12:16:47.536Z\",\"publisher\":{\"@id\":\"https://doc.blueapi.ir/#organization\"},\"isPartOf\":{\"@id\":\"https://doc.blueapi.ir#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"EMEP\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"EMEP","nav":{"global":null,"tabs":[{"tab":"Platform","pages":[{"title":"Platform","href":""}]},{"tab":"Architecture","pages":[{"title":"Architecture","href":"/architecture/system-architecture"}]},{"tab":"Model Pipeline","pages":[{"title":"Model Pipeline","href":"/compatibility/model-compatibility"}]},{"tab":"Evolution \u0026 Evaluation","pages":[{"title":"Evolution \u0026 Evaluation","href":"/evolution/evolution-engine"}]},{"tab":"Deployment \u0026 Ops","groups":[{"group":"Quantization \u0026 Inference","pages":[{"title":"Quantization Engine: Precision Reduction for Inference","sidebarTitle":"Quantization","href":"/deployment/quantization"},{"title":"Inference Backend: Serving Engine Selection","sidebarTitle":"Inference","description":"InferenceBackend specifies PyTorch, vLLM, TGI, llama.cpp, and ONNX Runtime. Backend selection, batching, KV cache, and speculative decoding are covered.","href":"/deployment/inference"},{"title":"Deployment Manager: Environment and Strategy Specification","sidebarTitle":"Deployment Manager","href":"/deployment/deployment-specification"},{"title":"Offline Deployment: Air-Gapped Transfer Protocol","sidebarTitle":"Offline Deployment","href":"/deployment/offline-deployment"},{"title":"Performance Validation: Latency and Throughput Gates","sidebarTitle":"Performance Validation","href":"/deployment/performance-validation"}]},{"group":"Enterprise Offline","pages":[{"title":"Enterprise Model: Versioning and Lineage Specification","sidebarTitle":"Enterprise Model","href":"/enterprise/enterprise-model"},{"title":"Offline Operations: Air-Gapped Environment Runbook","sidebarTitle":"Offline Operations","href":"/enterprise/offline-operations"},{"title":"Model Update Protocol: Controlled Upgrade Pipeline","sidebarTitle":"Model Update","href":"/enterprise/model-update-protocol"},{"title":"Model Rollback: Regression Recovery Protocol","sidebarTitle":"Model Rollback","href":"/enterprise/model-rollback"},{"title":"Secure Model Packaging: Signed Release Manifest","sidebarTitle":"Secure Packaging","href":"/enterprise/secure-model-packaging"}]},{"group":"Optional RAG","pages":[{"title":"Optional RAG Architecture: Downstream Retrieval Pipeline","sidebarTitle":"RAG Architecture","href":"/rag/optional-rag-architecture"}]},{"group":"Security \u0026 Supply Chain","pages":[{"title":"Model Supply Chain Security","sidebarTitle":"Supply Chain","href":"/security/model-supply-chain"},{"title":"License Compliance Matrix and Rules","sidebarTitle":"License Compliance","href":"/security/license-compliance"},{"title":"Security Requirements Specification","sidebarTitle":"Security Requirements","href":"/security/security-requirements"},{"title":"Artifact Signing and Key Hierarchy","sidebarTitle":"Artifact Signing","href":"/security/artifact-signing"},{"title":"Dependency Safety and SBOM Management","sidebarTitle":"Dependency Safety","href":"/security/dependency-safety"},{"title":"Air-Gapped and Offline Security Posture","sidebarTitle":"Offline Security","href":"/security/offline-security"}]},{"group":"Operations","pages":[{"title":"Operations Runbook: Startup, Shutdown, and Tasks","sidebarTitle":"Runbook","href":"/operations/runbook"},{"title":"Disaster Recovery Plan and Procedures","sidebarTitle":"Disaster Recovery","href":"/operations/disaster-recovery"},{"title":"Backup Strategy and Restore Procedures","sidebarTitle":"Backup Strategy","href":"/operations/backup-strategy"},{"title":"Monitoring Pipeline and Metrics Catalog","sidebarTitle":"Monitoring","href":"/operations/monitoring"},{"title":"Alert Catalog and Escalation Procedures","sidebarTitle":"Alerting","href":"/operations/alerting"},{"title":"GPU Health Monitoring and Remediation","sidebarTitle":"GPU Health","href":"/operations/gpu-health"},{"title":"Storage Operations: Cleanup, Retention, and Tiering","sidebarTitle":"Storage Operations","href":"/operations/storage-operations"}]}]},{"tab":"Interfaces \u0026 Governance","pages":[{"title":"Interfaces \u0026 Governance","href":"/interfaces/api-specification"}]}]},"basePath":"","title":"Quantization Engine: Precision Reduction for Inference - EMEP","buildId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","deploymentId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","dynamics":[],"chunks":[]}