Configure your deployments using a deployment.yaml file for reproducible, version-controlled infrastructure.
While you can configure deployments using command-line flags, we strongly recommend using a deployment.yaml file for all
production workloads. This allows you to manage your infrastructure as code, ensuring consistency and enabling
a GitOps workflow.To use a configuration file, pass its path using the --config-file flag:
The following example shows all available parameters for a deployment.yaml file, with detailed inline documentation. You
can use this as a reference and a starting point for your own configurations.The config file should be a YAML file with the following structure. All keys below are optional. If not provided, the default values will be used.
# -- Hardware Configuration --# (String) A unique name for your deployment. If not provided, the base name of the current directory will be used.# Default: null# can only be 15 characters long. If longer, it will be truncated to first 15 characters.name: my-model# (Integer) The number of GPUs to allocate to each replica.# Default: 0gpus: 1# (String) The specific GPU model.# Options: 'V100', 'A10G', 'T4', 'L4', 'L40S', 'A100', 'H100'# Default: nullgpu_type: l4# (Float) CPU cores to allocate, in millicores (e.g., 1000 = 1 vCPU).# Default: 100.0cpu: 2000# (Float) RAM to allocate, in megabytes (MB).# Default: 200.0memory: 8192# -- Scaling Configuration --# (Integer) Minimum number of replicas to keep running. Can be 0 for scale-to-zero.# Default: 0min_scale: 0# (Integer) Maximum number of replicas to scale out to under load.# Default: 3max_scale: 5# (Integer) The number of concurrent requests a single replica can handle# before the autoscaler adds a new one.# Note: The deployment will start scaling up at 70% of the concurrency value# keeping 30% buffer for extra requests while new pod is getting ready for serving.# Default: 100concurrency: 50# (List of Objects) A list of volumes to mount to the container.# See the Volumes guide for more details.# Default: []volumes: - name: my-volume type: efs mount_path: /mnt/my-efs-volume# -- Application & Networking --# (Integer) The port your container exposes for traffic.# Default: 80port: 8000# (String) A custom domain to use for the endpoint. Requires CNAME configuration.# Default: nulldomain_name: my-model.mydomain.com# (Object) Health check to verify your application is ready to serve traffic.# This is crucial for robust, zero-downtime deployments.# Default: nullreadiness: httpGet: path: /healthz port: 8000# -- Environment & Secrets --# (String) The target environment for the deployment.# Default: "default"env: production# (List of Strings) A list of secret names to mount as environment variables.# See the Secrets guide for more details.# Default: []secret: - my-api-keys - hugging-face-token# (Boolean) Set to true when deploying from a CI/CD pipeline like GitHub Actions.# Default: falsegithub_actions: false
You can also use cli flags along with the config file. The options in config.yaml take more precedence than cli flags.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Tensorfuse","description":"Deploy and scale AI models in your AWS account. Guides to serverless GPU inference, vLLM, model serving, benchmarking, and finetuning with Tensorfuse.","colors":{"primary":"#EC5528","light":"#EC5528","dark":"#EC5528"},"logo":{"light":"https://mintcdn.com/tensorfuse-docs/dmj8dBJTiBMtkrNL/logo/logoFullwidth.png?fit=max\u0026auto=format\u0026n=dmj8dBJTiBMtkrNL\u0026q=85\u0026s=055e86590676b786ef5d267c6c430d76","dark":"https://mintcdn.com/tensorfuse-docs/dmj8dBJTiBMtkrNL/logo/logo_dark_mode.png?fit=max\u0026auto=format\u0026n=dmj8dBJTiBMtkrNL\u0026q=85\u0026s=5562a2c658f07e30317caae365ebe466"},"favicon":"https://mintcdn.com/tensorfuse-docs/dmj8dBJTiBMtkrNL/tf_logo.svg?fit=max\u0026auto=format\u0026n=dmj8dBJTiBMtkrNL\u0026q=85\u0026s=85803d36945990b7a2c8a2ca577b673c","appearance":{"default":"dark","strict":true},"background":{"color":{"dark":"#1D1D1D"}},"navbar":{"links":[{"href":"https://join.slack.com/t/tensorfusecommunity/shared_invite/zt-30r6ik3dz-Rf7nS76vWKOu6DoKh5Cs5w","label":"Community"}],"primary":{"type":"button","label":"Get Started","href":"https://app.tensorfuse.io/"}},"footer":{"socials":{"twitter":"https://twitter.com/tensorfuse","github":"https://github.com/tensorfuse","linkedin":"https://www.linkedin.com/company/tensorfuse"}},"seo":{"metatags":{"canonical":"https://tensorfuse.io/docs","og:site_name":"Tensorfuse Documentation","twitter:card":"summary_large_image","twitter:site":"@tensorfuse"}},"integrations":{"intercom":{"appId":"y9yz9hjf"},"mixpanel":{"projectToken":"754ffdc145ee654685ea74ac0fb18084"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"tensorfuse-docs","hasAudioNarration":false,"actualSubdomain":"tensorfuse-docs","customDomains":["tensorfuse.io"],"gitSource":{"type":"github","owner":"samagra14","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6adbe5ab1578ba4c8e43bd3c","clientVersion":"0.0.4124","searchFilterCounts":[{"language":"default","tag":"Documentation","count":41},{"language":"default","tag":"Reference","count":27},{"language":"default","tag":"CLI Reference","count":24},{"language":"default","tag":"Examples","count":21},{"language":"default","tag":"Blog","count":15},{"language":"default","tag":"Large Language Models","count":11},{"language":"default","tag":"Inference How-to Guides","count":8},{"language":"default","tag":"Other posts","count":7},{"language":"default","tag":"Operations","count":7},{"language":"default","tag":"Image and Video Models","count":6}]},"assistantConfig":{},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","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":"rbac-expansion","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":"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":"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":"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},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","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}],"googleFontsInlined":false},"customCss":[{"filePath":"custom.css","content":""}],"page":{"pagePath":"concepts/configuration","slug":"/concepts/configuration","pageMetadata":{"title":"Deployment Configuration","description":"Configure your deployments using a deployment.yaml file for reproducible, version-controlled infrastructure.","href":"/concepts/configuration"},"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: \"Configure your deployments using a deployment.yaml file for reproducible, version-controlled infrastructure.\"\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={code:`code`,p:`p`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{CodeBlock,Heading}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`While you can configure deployments using command-line flags, we strongly recommend using a `,_jsx(_components.code,{children:`deployment.yaml`}),` file for all\nproduction workloads. This allows you to manage your infrastructure as code, ensuring consistency and enabling\na GitOps workflow.`]}),`\n`,_jsxs(_components.p,{children:[`To use a configuration file, pass its path using the `,_jsx(_components.code,{children:`--config-file`}),` flag:`]}),`\n`,_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`tensorkube deploy --config-file \u003cpath-to-config-file>`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(Heading,{level:`2`,id:`configuration-reference`,children:`Configuration Reference`}),`\n`,_jsx(_components.p,{children:`The following example shows all available parameters for a deployment.yaml file, with detailed inline documentation. You\ncan use this as a reference and a starting point for your own configurations.`}),`\n`,_jsx(_components.p,{children:`The config file should be a YAML file with the following structure. All keys below are optional. If not provided, the default values will be used.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`85`,language:`yaml`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`yaml`,children:_jsxs(_components.code,{language:`yaml`,numberOfLines:`85`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# -- Hardware Configuration --`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (String) A unique name for your deployment. If not provided, the base name of the current directory will be used.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: null`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# can only be 15 characters long. If longer, it will be truncated to first 15 characters.`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`name`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`my-model`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (Integer) The number of GPUs to allocate to each replica.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: 0`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`gpus`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (String) The specific GPU model.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Options: 'V100', 'A10G', 'T4', 'L4', 'L40S', 'A100', 'H100'`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: null`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`gpu_type`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`l4`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (Float) CPU cores to allocate, in millicores (e.g., 1000 = 1 vCPU).`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: 100.0`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`cpu`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2000`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (Float) RAM to allocate, in megabytes (MB).`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: 200.0`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`memory`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`8192`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# -- Scaling Configuration --`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (Integer) Minimum number of replicas to keep running. Can be 0 for scale-to-zero.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: 0`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`min_scale`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (Integer) Maximum number of replicas to scale out to under load.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: 3`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`max_scale`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`5`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (Integer) The number of concurrent requests a single replica can handle`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# before the autoscaler adds a new one.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Note: The deployment will start scaling up at 70% of the concurrency value`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# keeping 30% buffer for extra requests while new pod is getting ready for serving.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: 100`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`concurrency`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`50`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (List of Objects) A list of volumes to mount to the container.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# See the Volumes guide for more details.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: []`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`volumes`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` - `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`name`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`my-volume`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` type`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`efs`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` mount_path`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`/mnt/my-efs-volume`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# -- Application \u0026 Networking --`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (Integer) The port your container exposes for traffic.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: 80`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`port`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`8000`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (String) A custom domain to use for the endpoint. Requires CNAME configuration.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: null`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`domain_name`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`my-model.mydomain.com`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (Object) Health check to verify your application is ready to serve traffic.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# This is crucial for robust, zero-downtime deployments.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: null`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`readiness`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` httpGet`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` path`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`/healthz`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` port`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`8000`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# -- Environment \u0026 Secrets --`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (String) The target environment for the deployment.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: \"default\"`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`env`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`production`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (List of Strings) A list of secret names to mount as environment variables.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# See the Secrets guide for more details.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: []`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`secret`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` - `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`my-api-keys`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` - `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`hugging-face-token`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (Boolean) Set to true when deploying from a CI/CD pipeline like GitHub Actions.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Default: false`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`github_actions`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`You can also use cli flags along with the config file. The options in config.yaml take more precedence than cli flags.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`tensorkube`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` deploy`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --config-file`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` \u003c`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`path-to-config-fil`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`e`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --gpus`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 2`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --cpu`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 200.0`})]}),`\n`]})})})]})}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":"Deployment Configuration","description":"Configure your deployments using a deployment.yaml file for reproducible, version-controlled infrastructure.","href":"/concepts/configuration"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Configuration Reference","slug":"configuration-reference","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/tensorfuse-docs/c3dc9745059fca0c/warmly.js"],"subdomain":"tensorfuse-docs","siteName":"Tensorfuse","title":"Deployment Configuration - Tensorfuse","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2025-11-03T19:43:50.958Z","originalFileLocation":"concepts/configuration.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"dark\";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=\"dark\"}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=\"Configure your deployments using a deployment.yaml file for reproducible, version-controlled infrastructure.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Tensorfuse\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/tensorfuse-docs/gleo0vHV9BrLVCDe/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/tensorfuse-docs/gleo0vHV9BrLVCDe/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/tensorfuse-docs/gleo0vHV9BrLVCDe/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/tensorfuse-docs/gleo0vHV9BrLVCDe/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/tensorfuse-docs/gleo0vHV9BrLVCDe/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/tensorfuse-docs/gleo0vHV9BrLVCDe/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/tensorfuse-docs/gleo0vHV9BrLVCDe/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/tensorfuse-docs/gleo0vHV9BrLVCDe/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/tensorfuse-docs/gleo0vHV9BrLVCDe/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Deployment Configuration - Tensorfuse\">\u003cmeta data-mint-head property=\"og:description\" content=\"Configure your deployments using a deployment.yaml file for reproducible, version-controlled infrastructure.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Tensorfuse Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://tensorfuse.io/docs/concepts/configuration\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://tensorfuse-docs.mintlify.site/docs/_mintlify/api/og/v2?division=Operations\u0026amp;title=Deployment+Configuration\u0026amp;description=Configure+your+deployments+using+a+deployment.yaml+file+for+reproducible%2C+version-controlled+infrastructure.\u0026amp;theme=0d48f78dad171e209aaf92bf\u0026amp;signature=c515979a9147a8b0b10f4155e836ae3a50948d7e4961b28448c4e6f81529472e\">\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=\"Deployment Configuration - Tensorfuse\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Configure your deployments using a deployment.yaml file for reproducible, version-controlled infrastructure.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://tensorfuse-docs.mintlify.site/docs/_mintlify/api/og/v2?division=Operations\u0026amp;title=Deployment+Configuration\u0026amp;description=Configure+your+deployments+using+a+deployment.yaml+file+for+reproducible%2C+version-controlled+infrastructure.\u0026amp;theme=0d48f78dad171e209aaf92bf\u0026amp;signature=c515979a9147a8b0b10f4155e836ae3a50948d7e4961b28448c4e6f81529472e\">\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=\"/docs/mintlify-assets/_mintlify/favicons/tensorfuse-docs/gleo0vHV9BrLVCDe/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Tensorfuse\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#EC5528\">\u003clink data-mint-head rel=\"canonical\" href=\"https://tensorfuse.io/docs/concepts/configuration\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/concepts/configuration.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://tensorfuse.io/#organization\",\"name\":\"Tensorfuse\",\"url\":\"https://tensorfuse.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/tensorfuse-docs/dmj8dBJTiBMtkrNL/logo/logoFullwidth.png?fit=max\u0026auto=format\u0026n=dmj8dBJTiBMtkrNL\u0026q=85\u0026s=055e86590676b786ef5d267c6c430d76\"}},{\"@type\":\"WebSite\",\"@id\":\"https://tensorfuse.io/docs#website\",\"name\":\"Tensorfuse\",\"url\":\"https://tensorfuse.io/docs\",\"publisher\":{\"@id\":\"https://tensorfuse.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://tensorfuse.io/docs/concepts/configuration#webpage\",\"url\":\"https://tensorfuse.io/docs/concepts/configuration\",\"name\":\"Deployment Configuration\",\"description\":\"Configure your deployments using a deployment.yaml file for reproducible, version-controlled infrastructure.\",\"dateModified\":\"2025-11-03T19:43:50.958Z\",\"isPartOf\":{\"@id\":\"https://tensorfuse.io/docs#website\"},\"breadcrumb\":{\"@id\":\"https://tensorfuse.io/docs/concepts/configuration#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://tensorfuse.io/docs/concepts/configuration#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Tensorfuse\",\"item\":\"https://tensorfuse.io/docs\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Deployment Configuration\",\"item\":\"https://tensorfuse.io/docs/concepts/configuration\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://tensorfuse.io/docs/concepts/configuration#article\",\"headline\":\"Deployment Configuration\",\"name\":\"Deployment Configuration\",\"description\":\"Configure your deployments using a deployment.yaml file for reproducible, version-controlled infrastructure.\",\"url\":\"https://tensorfuse.io/docs/concepts/configuration\",\"mainEntityOfPage\":{\"@id\":\"https://tensorfuse.io/docs/concepts/configuration#webpage\"},\"dateModified\":\"2025-11-03T19:43:50.958Z\",\"publisher\":{\"@id\":\"https://tensorfuse.io/#organization\"},\"isPartOf\":{\"@id\":\"https://tensorfuse.io/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Tensorfuse\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Tensorfuse\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/docs/concepts/configuration.md","siteName":"Tensorfuse","nav":{"global":null,"tabs":[{"tab":"Documentation","groups":[{"group":"Get Started","pages":[{"title":"Serverless GPU inference on AWS with Tensorfuse","sidebarTitle":"Introduction","mode":"wide","href":"/concepts/introduction"},{"title":"Getting Started","href":"/concepts/getting_started_tensorkube"}]},{"group":"LLM Inference","pages":[{"title":"Run serverless LLM inference on AWS","sidebarTitle":"Inference on AWS","href":"/guides/inference/overview"},{"title":"Choose an open model for self-hosted inference","sidebarTitle":"Choose an open model","href":"/guides/inference/open-models"},{"title":"vLLM vs SGLang: choose an LLM inference engine","sidebarTitle":"vLLM vs SGLang","href":"/guides/inference/vllm-vs-sglang"},{"title":"Benchmark LLM inference latency, throughput, and cost","sidebarTitle":"Benchmark latency and cost","href":"/guides/inference/benchmarking"},{"title":"How to enable and measure vLLM prefix caching","sidebarTitle":"Prefix caching and KV cache","href":"/guides/inference/prefix-caching"},{"title":"When does speculative decoding speed up LLM inference?","sidebarTitle":"Speculative decoding","href":"/guides/inference/speculative-decoding"}]},{"group":"Inference How-to Guides","pages":[{"title":"How to reduce LLM inference cost: a practical workflow","sidebarTitle":"Reduce inference cost","href":"/guides/inference/how-to/reduce-cost"},{"title":"How to run a 4-bit quantized LLM with vLLM","sidebarTitle":"Run a quantized LLM","href":"/guides/inference/how-to/quantization-vllm"},{"title":"How to run vLLM on AMD GPUs with ROCm","sidebarTitle":"Run vLLM on AMD GPUs","href":"/guides/inference/how-to/amd-vllm"},{"title":"How to serve LLMs on AWS Inferentia and Trainium with vLLM","sidebarTitle":"Serve LLMs with AWS Neuron","href":"/guides/inference/how-to/aws-neuron-vllm"},{"title":"How to run LLM inference on Google TPUs with vLLM","sidebarTitle":"Serve an LLM on Google TPU","href":"/guides/inference/how-to/google-tpu-vllm"},{"title":"How to run a local LLM on Apple silicon with MLX","sidebarTitle":"Run an LLM on Apple silicon","href":"/guides/inference/how-to/apple-silicon-mlx"},{"title":"How to run LLM inference on a CPU with llama.cpp","sidebarTitle":"Run an LLM on a CPU","href":"/guides/inference/how-to/cpu-llama-cpp"},{"title":"How to compare Groq, Cerebras, and SambaNova inference APIs","sidebarTitle":"Compare specialized inference APIs","href":"/guides/inference/how-to/compare-inference-apis"}]},{"group":"Inference Hardware","pages":[{"title":"NVIDIA alternatives for LLM inference","sidebarTitle":"Choose inference hardware","href":"/guides/inference/hardware/overview"},{"title":"AMD GPU inference: understand ROCm and vLLM","sidebarTitle":"AMD GPUs and ROCm","href":"/guides/inference/hardware/amd-rocm"},{"title":"AWS Inferentia vs Trainium for LLM inference","sidebarTitle":"AWS Inferentia and Trainium","href":"/guides/inference/hardware/aws-neuron"},{"title":"TPU vs GPU for LLM inference: what changes?","sidebarTitle":"Google TPUs","href":"/guides/inference/hardware/google-tpu"},{"title":"Groq vs Cerebras vs SambaNova: inference architectures","sidebarTitle":"Groq, Cerebras, and SambaNova","href":"/guides/inference/hardware/specialized-accelerators"},{"title":"LLM inference on CPUs and Apple silicon","sidebarTitle":"CPUs and Apple silicon","href":"/guides/inference/hardware/cpu-apple-silicon"}]},{"group":"Concepts","pages":[{"title":"Deployments","href":"/concepts/deployments"},{"title":"Job Queues","href":"/concepts/job_queues"},{"title":"Fine-tune LoRA adapters with the Tensorfuse SDK","sidebarTitle":"Finetuning","href":"/concepts/finetuning"},{"title":"Dev Containers","href":"/concepts/devcontainers"},{"title":"Volumes","description":"Use volumes in your tensorkube deployments","href":"/concepts/volumes"}]},{"group":"Operations","pages":[{"title":"Deployment Configuration","href":"/concepts/configuration"},{"title":"Secrets","description":"Use secrets in your deployments for sensitive information","href":"/concepts/secrets"},{"title":"Environments","href":"/concepts/environments"},{"title":"Custom domains with TLS","sidebarTitle":"Custom Domains","href":"/concepts/custom_domains_with_tls"},{"title":"Debugging Tensorfuse Deployments and Jobs with logs","sidebarTitle":"Logs","href":"/concepts/observability/debugging_with_logs"},{"title":"Using Tensorkube with Github Actions","sidebarTitle":"GitHub Actions","href":"/concepts/github_actions"},{"title":"Adding Other Members","href":"/concepts/adding_members"}]},{"group":"Troubleshooting","pages":[{"title":"Troubleshooting","href":"/concepts/troubleshooting"},{"title":"Handling Node Failures","href":"/concepts/node_failures"}]},{"group":"Enterprise Setup","pages":[{"title":"Sub-accounts","href":"/enterprise/sub_account_setup"}]},{"group":"Architecture","pages":[{"title":"How Tensorfuse cluster configuration works","sidebarTitle":"Configure","href":"/concepts/architecture/configure"},{"title":"How Tensorfuse builds deployment images","sidebarTitle":"Build","href":"/concepts/architecture/build"},{"title":"How Tensorfuse serves inference requests","sidebarTitle":"Serve","href":"/concepts/architecture/serve"},{"title":"How Tensorfuse queued jobs run","sidebarTitle":"Jobs","href":"/concepts/architecture/jobs"}]}]},{"tab":"Examples","pages":[{"title":"Examples","href":"/guides/modality/text/openai_oss"}]},{"tab":"Reference","pages":[{"title":"Reference","href":"/reference/cli_reference/tensorkube_account"}]},{"tab":"Blog","pages":[{"title":"Blog","href":"/blogs/blog"}]}]},"basePath":"","title":"Deployment Configuration - Tensorfuse","buildId":"dpl_FGqRJUoJWfds4SqdfFGJ2v1vVNSs","deploymentId":"dpl_FGqRJUoJWfds4SqdfFGJ2v1vVNSs","dynamics":[],"chunks":[]}