tp bench lstp bench ls --category chinese # math | code | knowledge | chinese | instruction | hardware | safety
Built in: gsm8k, math, humaneval, mmlu, ceval, ifeval, plus the RTL packs. Anything
published as a benchmark pack appears here too.Run several across different categories. Post-training reliably improves one axis and quietly
damages another, and that only becomes visible if you measure more than the one you were
optimising.
lm-eval or evalscope, which covers Chinese benchmarks better. The benchmark declares its own default
--limit
Cap samples per benchmark. Smoke tests only
--repeat
Run the evaluation N times to measure its own variance. An evaluation gate needs this before it can call a regression
--profile
Resources, exactly as for training
--extra-args
Passed straight through to the runner
A --limit score is not comparable with a full one, and nothing downstream marks it as
truncated. Use it to check the pipeline works, then run without it.
Both runners produce the same score contract, so the same benchmark is comparable whichever ran
it.
Running it by hand is fine once. Making it happen on every run is what stops a regression
reaching production. An evaluation gate in the experiment config goes further: a run that falls
below a threshold is marked as failing its gate. See the eval: block in your method’s
template.
create returns a run id, and submit reports the score file against it. --train-run is what
lets the evaluation gate and the model version treat these scores as authoritative; without it
they are recorded but not.They enter the same matrix, labelled as externally produced.
Then open the Benchmarks page. A row for your run with a score in each requested column means it
worked. An empty column means that suite failed, and the job log names which.Scores are ingested idempotently: re-reporting the same run and benchmark updates the row rather
than adding a second one.
Each metric carries a declared direction, so the comparison knows which way is better without
guessing. Where a benchmark reports more than one metric, the gap between them is often the
useful part: GSM8K’s strict and flexible matches diverging means the model can do the arithmetic
but is not formatting the answer as asked.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"TunePlane","description":"TunePlane — one control plane for the whole LLM post-training lifecycle: environments, training, evaluation, serving and deployment, across any framework and any backend.","colors":{"primary":"#141618","light":"#9FA0A0","dark":"#141618"},"logo":{"light":"https://mintcdn.com/starforge/InJS8EvGlZCp2PSg/logo/mark.svg?fit=max\u0026auto=format\u0026n=InJS8EvGlZCp2PSg\u0026q=85\u0026s=69ca4ec035a742e44ccf911a2810084b","dark":"https://mintcdn.com/starforge/InJS8EvGlZCp2PSg/logo/mark-dark.svg?fit=max\u0026auto=format\u0026n=InJS8EvGlZCp2PSg\u0026q=85\u0026s=7bd0637054faca9fb70498ea06266b93","href":"/"},"favicon":{"light":"https://mintcdn.com/starforge/InJS8EvGlZCp2PSg/favicon.svg?fit=max\u0026auto=format\u0026n=InJS8EvGlZCp2PSg\u0026q=85\u0026s=2d2102320e91dd6d1b4e2f1060a9e6c5","dark":"https://mintcdn.com/starforge/InJS8EvGlZCp2PSg/favicon-dark.svg?fit=max\u0026auto=format\u0026n=InJS8EvGlZCp2PSg\u0026q=85\u0026s=dec3f593045edf947cc2c36384fe376e"},"appearance":{"default":"system"},"footer":{"socials":{"github":"https://github.com/tuneplane/tuneplane"}},"search":{"prompt":"Search docs…"},"fonts":{"family":"Plus Jakarta Sans"},"icons":{"library":"lucide"},"styling":{"eyebrows":"breadcrumbs","codeblocks":{"theme":{"light":"github-light","dark":"github-dark-dimmed"}},"latex":false},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"navigation":{"languages":[{"language":"en","default":true,"navbar":{"links":[{"href":"/","label":"Console"},{"href":"/en/quickstart","label":"Quickstart"}],"primary":{"type":"github","label":"GitHub","href":"https://github.com/tuneplane/tuneplane"}},"href":"en"},{"language":"zh-Hans","navbar":{"links":[{"href":"/","label":"控制台"},{"href":"/zh-Hans/quickstart","label":"快速开始"}],"primary":{"type":"github","label":"GitHub","href":"https://github.com/tuneplane/tuneplane"}},"href":"zh-Hans"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"starforge","hasAudioNarration":false,"actualSubdomain":"starforge","customDomains":["docs.tuneplane.ai"],"gitSource":{"type":"github","owner":"tuneplane","repo":"tuneplane","deployBranch":"main","contentDirectory":"mintlify","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6abb8c03dac088f3f7e513f5","collectionId":"14ef6ac9-130e-4ea7-878d-4a3d9f6d0dcd","liveDeploymentHistoryId":"6abb8c03dac088f3f7e513f5","schemaVersion":"v3"},"entitlements":{},"buildId":"6abb8c03dac088f3f7e513f5","clientVersion":"0.0.3952","searchFilterCounts":[{"language":"default","tag":"API 参考","count":456},{"language":"default","tag":"接口","count":456},{"language":"default","tag":"jobs","count":58},{"language":"en","tag":"Guides","count":49},{"language":"zh-Hans","tag":"指南","count":49},{"language":"zh-Hans","tag":"Web 控制台","count":33},{"language":"default","tag":"admin","count":32},{"language":"default","tag":"auth","count":32},{"language":"en","tag":"Web Console","count":31},{"language":"zh-Hans","tag":"CLI 参考","count":30},{"language":"en","tag":"CLI Reference","count":29},{"language":"en","tag":"Deployment \u0026 Ops","count":25},{"language":"zh-Hans","tag":"部署运维","count":25},{"language":"default","tag":"share","count":25},{"language":"default","tag":"datasets","count":22},{"language":"en","tag":"Train a model","count":19},{"language":"zh-Hans","tag":"训练模型","count":19},{"language":"default","tag":"volumes","count":17},{"language":"default","tag":"model-deployments","count":16},{"language":"default","tag":"plugins","count":15},{"language":"en","tag":"Frameworks","count":9},{"language":"zh-Hans","tag":"训练框架","count":9},{"language":"en","tag":"Get started","count":8},{"language":"en","tag":"Administration","count":8},{"language":"en","tag":"Resources","count":8},{"language":"en","tag":"Evaluation","count":8},{"language":"zh-Hans","tag":"开始","count":8},{"language":"zh-Hans","tag":"管理","count":8},{"language":"zh-Hans","tag":"资源","count":8},{"language":"zh-Hans","tag":"评测","count":8}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"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":"editor-v7-file-tree","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":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"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":"editor-agent-model-picker","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":"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}],"isAtlas":false,"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"#navbar img.nav-logo,a[href=\"/\"]>img.nav-logo,header img.nav-logo{height:2.25rem!important;width:auto!important;max-height:none!important}#navbar a[href^=\"https://github.com/\"] span,header a[href^=\"https://github.com/\"] span,html[data-current-path=\"/\"] #header{display:none}card{transition:border-color .18s ease,background-color .18s ease}tile{overflow:hidden}"}],"page":{"pagePath":"en/guides/benchmarks","slug":"/en/guides/benchmarks","pageMetadata":{"title":"Run a benchmark","sidebarTitle":"Benchmarks","description":"Score a finished run against GSM8K, MMLU, C-Eval and the rest, on one comparable dashboard.","icon":"gauge","href":"/en/guides/benchmarks"},"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: \"Score a finished run against GSM8K, MMLU, C-Eval and the rest, on one comparable dashboard.\"\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`,code:`code`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Frame,Heading,OptimizedImage,Table,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light github-dark-dimmed`,style:{backgroundColor:`#fff`,\"--shiki-dark-bg\":`#22272e`,color:`#24292e`,\"--shiki-dark\":`#adbac7`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#6F42C1`,\"--shiki-dark\":`#F69D50`},children:`tp`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` new`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` my-bench`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#6CB6FF`},children:` --method`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` evalkit/benchmark`}),_jsx(_components.span,{style:{color:`#6A737D`,\"--shiki-dark\":`#768390`},children:` # once per project`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#6F42C1`,\"--shiki-dark\":`#F69D50`},children:`tp`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` bench`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` run`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` my-bench`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#6CB6FF`},children:` -m`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` run:run-4f2a91`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#6CB6FF`},children:` --suites`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` gsm8k,mmlu`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Scores land on the console’s Benchmarks page, in the same matrix as every other run, comparable\nacross runs, methods and base models.`}),`\n`,_jsx(Frame,{caption:`The benchmark matrix: runs down, benchmarks across, best score highlighted.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/starforge/GatXR2rI5-_Vm4_H/images/console/benchmarks.png?fit=max\u0026auto=format\u0026n=GatXR2rI5-_Vm4_H\u0026q=85\u0026s=4c566bdcc2e13ced6378a9d975671356`,alt:`TunePlane benchmarks page`,\"data-og-width\":`2160`,width:`2160`,\"data-og-height\":`1350`,height:`1350`,\"data-path\":`images/console/benchmarks.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/starforge/GatXR2rI5-_Vm4_H/images/console/benchmarks.png?w=280\u0026fit=max\u0026auto=format\u0026n=GatXR2rI5-_Vm4_H\u0026q=85\u0026s=9a7e3a4d34117e142438ed0cddf24e99 280w, https://mintcdn.com/starforge/GatXR2rI5-_Vm4_H/images/console/benchmarks.png?w=560\u0026fit=max\u0026auto=format\u0026n=GatXR2rI5-_Vm4_H\u0026q=85\u0026s=4014ae02eff7e2f386c992c5fbf717a9 560w, https://mintcdn.com/starforge/GatXR2rI5-_Vm4_H/images/console/benchmarks.png?w=840\u0026fit=max\u0026auto=format\u0026n=GatXR2rI5-_Vm4_H\u0026q=85\u0026s=6780f16fa70171fab2c7cc15b833b9af 840w, https://mintcdn.com/starforge/GatXR2rI5-_Vm4_H/images/console/benchmarks.png?w=1100\u0026fit=max\u0026auto=format\u0026n=GatXR2rI5-_Vm4_H\u0026q=85\u0026s=ae803ea7c4a026f50ac7aa1578576b55 1100w, https://mintcdn.com/starforge/GatXR2rI5-_Vm4_H/images/console/benchmarks.png?w=1650\u0026fit=max\u0026auto=format\u0026n=GatXR2rI5-_Vm4_H\u0026q=85\u0026s=4243b1d7df9c4ea2c2510a15164d417c 1650w, https://mintcdn.com/starforge/GatXR2rI5-_Vm4_H/images/console/benchmarks.png?w=2500\u0026fit=max\u0026auto=format\u0026n=GatXR2rI5-_Vm4_H\u0026q=85\u0026s=842511996c565362fe095333d64ddff7 2500w`})}),`\n`,_jsx(Heading,{level:`2`,id:`what-you-can-score`,children:`What you can score`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsxs(_components.th,{children:[_jsx(_components.code,{children:`-m`}),` accepts`]}),_jsx(_components.th,{children:`Example`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`A run`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`run:run-4f2a91`}),`, which resolves that run’s exported weights`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`A hub model`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`Qwen/Qwen2.5-7B`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`A path on shared storage`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`/mnt/shared/models/qwen-support-v3`})})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Scoring a run needs it to have been exported. `,_jsx(_components.code,{children:`--then export`}),` at submission saves you\nremembering.`]}),`\n`,_jsx(Heading,{level:`2`,id:`pick-benchmarks`,children:`Pick benchmarks`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light github-dark-dimmed`,style:{backgroundColor:`#fff`,\"--shiki-dark-bg\":`#22272e`,color:`#24292e`,\"--shiki-dark\":`#adbac7`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#6F42C1`,\"--shiki-dark\":`#F69D50`},children:`tp`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` bench`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` ls`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#6F42C1`,\"--shiki-dark\":`#F69D50`},children:`tp`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` bench`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` ls`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#6CB6FF`},children:` --category`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` chinese`}),_jsx(_components.span,{style:{color:`#6A737D`,\"--shiki-dark\":`#768390`},children:` # math | code | knowledge | chinese | instruction | hardware | safety`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Built in: `,_jsx(_components.code,{children:`gsm8k`}),`, `,_jsx(_components.code,{children:`math`}),`, `,_jsx(_components.code,{children:`humaneval`}),`, `,_jsx(_components.code,{children:`mmlu`}),`, `,_jsx(_components.code,{children:`ceval`}),`, `,_jsx(_components.code,{children:`ifeval`}),`, plus the RTL packs. Anything\npublished as a `,_jsx(_components.a,{href:`/en/extend/benchmark-packs`,children:`benchmark pack`}),` appears here too.`]}),`\n`,_jsx(_components.p,{children:`Run several across different categories. Post-training reliably improves one axis and quietly\ndamages another, and that only becomes visible if you measure more than the one you were\noptimising.`}),`\n`,_jsx(Heading,{level:`2`,id:`options-worth-knowing`,children:`Options worth knowing`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Flag`}),_jsx(_components.th,{children:`Use it for`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`--suites`})}),_jsx(_components.td,{children:`Comma-separated benchmark names`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`--runner`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`lm-eval`}),` or `,_jsx(_components.code,{children:`evalscope`}),`, which covers Chinese benchmarks better. The benchmark declares its own default`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`--limit`})}),_jsx(_components.td,{children:`Cap samples per benchmark. Smoke tests only`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`--repeat`})}),_jsx(_components.td,{children:`Run the evaluation N times to measure its own variance. An evaluation gate needs this before it can call a regression`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`--profile`})}),_jsx(_components.td,{children:`Resources, exactly as for training`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`--extra-args`})}),_jsx(_components.td,{children:`Passed straight through to the runner`})]})]})]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`A `,_jsx(_components.code,{children:`--limit`}),` score is not comparable with a full one, and nothing downstream marks it as\ntruncated. Use it to check the pipeline works, then run without it.`]})}),`\n`,_jsx(_components.p,{children:`Both runners produce the same score contract, so the same benchmark is comparable whichever ran\nit.`}),`\n`,_jsx(Heading,{level:`2`,id:`score-every-run-automatically`,children:`Score every run automatically`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light github-dark-dimmed`,style:{backgroundColor:`#fff`,\"--shiki-dark-bg\":`#22272e`,color:`#24292e`,\"--shiki-dark\":`#adbac7`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#6F42C1`,\"--shiki-dark\":`#F69D50`},children:`tp`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` submit`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` my-grpo`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#6CB6FF`},children:` --profile`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` h200:8`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#6CB6FF`},children:` --then`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` eval`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Running it by hand is fine once. Making it happen on every run is what stops a regression\nreaching production. An evaluation gate in the experiment config goes further: a run that falls\nbelow a threshold is marked as failing its gate. See the `,_jsx(_components.code,{children:`eval:`}),` block in your method’s\ntemplate.`]}),`\n`,_jsx(Heading,{level:`2`,id:`report-scores-from-a-harness-that-cannot-run-here`,children:`Report scores from a harness that cannot run here`}),`\n`,_jsx(_components.p,{children:`A licensed tool, or a physical test rig:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light github-dark-dimmed`,style:{backgroundColor:`#fff`,\"--shiki-dark-bg\":`#22272e`,color:`#24292e`,\"--shiki-dark\":`#adbac7`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#6F42C1`,\"--shiki-dark\":`#F69D50`},children:`tp`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` bench`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` external`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` create`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#6CB6FF`},children:` -m`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` run:run-4f2a91`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#6CB6FF`},children:` --harness`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` cvdp`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#6CB6FF`},children:` --train-run`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` run-4f2a91`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#6F42C1`,\"--shiki-dark\":`#F69D50`},children:`tp`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` bench`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` external`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` submit`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` run-9c3e10`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#6CB6FF`},children:` --file`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` scores.json`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`create`}),` returns a run id, and `,_jsx(_components.code,{children:`submit`}),` reports the score file against it. `,_jsx(_components.code,{children:`--train-run`}),` is what\nlets the evaluation gate and the model version treat these scores as authoritative; without it\nthey are recorded but not.`]}),`\n`,_jsx(_components.p,{children:`They enter the same matrix, labelled as externally produced.`}),`\n`,_jsx(Heading,{level:`2`,id:`check-it-worked`,children:`Check it worked`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light github-dark-dimmed`,style:{backgroundColor:`#fff`,\"--shiki-dark-bg\":`#22272e`,color:`#24292e`,\"--shiki-dark\":`#adbac7`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#6F42C1`,\"--shiki-dark\":`#F69D50`},children:`tp`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` job`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` ls`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#6F42C1`,\"--shiki-dark\":`#F69D50`},children:`tp`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` job`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#96D0FF`},children:` logs`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Then open the Benchmarks page. A row for your run with a score in each requested column means it\nworked. An empty column means that suite failed, and the job log names which.`}),`\n`,_jsx(_components.p,{children:`Scores are ingested idempotently: re-reporting the same run and benchmark updates the row rather\nthan adding a second one.`}),`\n`,_jsx(Heading,{level:`2`,id:`reading-the-matrix`,children:`Reading the matrix`}),`\n`,_jsx(_components.p,{children:`Each metric carries a declared direction, so the comparison knows which way is better without\nguessing. Where a benchmark reports more than one metric, the gap between them is often the\nuseful part: GSM8K’s strict and flexible matches diverging means the model can do the arithmetic\nbut is not formatting the answer as asked.`}),`\n`,_jsx(Heading,{level:`2`,id:`next`,children:`Next`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.a,{href:`/en/extend/benchmark-packs`,children:`Write a benchmark pack`}),` to declare your own evaluation set ·\n`,_jsx(_components.a,{href:`/en/guides/rubrics`,children:`Rubrics`}),` to score what no rule can decide ·\n`,_jsx(_components.a,{href:`/en/console/review`,children:`Comparing runs`})]})]})}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":{"codeStyling":{"theme":{"light":"github-light","dark":"github-dark-dimmed"}},"config":{},"pageMetadata":{"title":"Run a benchmark","sidebarTitle":"Benchmarks","description":"Score a finished run against GSM8K, MMLU, C-Eval and the rest, on one comparable dashboard.","icon":"gauge","href":"/en/guides/benchmarks"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"What you can score","slug":"what-you-can-score","depth":2,"children":[]},{"title":"Pick benchmarks","slug":"pick-benchmarks","depth":2,"children":[]},{"title":"Options worth knowing","slug":"options-worth-knowing","depth":2,"children":[]},{"title":"Score every run automatically","slug":"score-every-run-automatically","depth":2,"children":[]},{"title":"Report scores from a harness that cannot run here","slug":"report-scores-from-a-harness-that-cannot-run-here","depth":2,"children":[]},{"title":"Check it worked","slug":"check-it-worked","depth":2,"children":[]},{"title":"Reading the matrix","slug":"reading-the-matrix","depth":2,"children":[]},{"title":"Next","slug":"next","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"starforge","siteName":"TunePlane","title":"Run a benchmark - TunePlane","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/en/guides/benchmarks","matchLevel":0},"zh-Hans":{"href":"/zh-Hans/guides/benchmarks","matchLevel":1}}},"lastModified":"2026-09-12T13:35:15.142Z","originalFileLocation":"en/guides/benchmarks.mdx","locale":"en"},"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=\"Score a finished run against GSM8K, MMLU, C-Eval and the rest, on one comparable dashboard.\">\u003cmeta data-mint-head name=\"application-name\" content=\"TunePlane\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/starforge/GckS4U1wjz1fZvKG/_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=\"/mintlify-assets/_mintlify/favicons/starforge/GckS4U1wjz1fZvKG/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/starforge/GckS4U1wjz1fZvKG/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/starforge/GckS4U1wjz1fZvKG/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/starforge/GckS4U1wjz1fZvKG/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/starforge/GckS4U1wjz1fZvKG/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/starforge/GckS4U1wjz1fZvKG/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/starforge/GckS4U1wjz1fZvKG/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/starforge/GckS4U1wjz1fZvKG/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Run a benchmark - TunePlane\">\u003cmeta data-mint-head property=\"og:description\" content=\"Score a finished run against GSM8K, MMLU, C-Eval and the rest, on one comparable dashboard.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"TunePlane\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.tuneplane.ai/en/guides/benchmarks\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://starforge.mintlify.app/_mintlify/api/og/v2?division=Evaluation\u0026amp;title=Run+a+benchmark\u0026amp;description=Score+a+finished+run+against+GSM8K%2C+MMLU%2C+C-Eval+and+the+rest%2C+on+one+comparable+dashboard.\u0026amp;theme=d594fc747a584e2e90492cf7\u0026amp;signature=ed1aadd1b9259b64102675b992fbda38b77a3981ff6f458c9c9729a956cabd0e\">\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=\"Run a benchmark - TunePlane\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Score a finished run against GSM8K, MMLU, C-Eval and the rest, on one comparable dashboard.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://starforge.mintlify.app/_mintlify/api/og/v2?division=Evaluation\u0026amp;title=Run+a+benchmark\u0026amp;description=Score+a+finished+run+against+GSM8K%2C+MMLU%2C+C-Eval+and+the+rest%2C+on+one+comparable+dashboard.\u0026amp;theme=d594fc747a584e2e90492cf7\u0026amp;signature=ed1aadd1b9259b64102675b992fbda38b77a3981ff6f458c9c9729a956cabd0e\">\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=\"/mintlify-assets/_mintlify/favicons/starforge/GckS4U1wjz1fZvKG/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"TunePlane\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#141618\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.tuneplane.ai/en/guides/benchmarks\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/en/guides/benchmarks.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.tuneplane.ai/en/guides/benchmarks\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-Hans\" href=\"https://docs.tuneplane.ai/zh-Hans/guides/benchmarks\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.tuneplane.ai/en/guides/benchmarks\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.tuneplane.ai/#organization\",\"name\":\"TunePlane\",\"url\":\"https://docs.tuneplane.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/starforge/InJS8EvGlZCp2PSg/logo/mark.svg?fit=max\u0026auto=format\u0026n=InJS8EvGlZCp2PSg\u0026q=85\u0026s=69ca4ec035a742e44ccf911a2810084b\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.tuneplane.ai#website\",\"name\":\"TunePlane\",\"url\":\"https://docs.tuneplane.ai\",\"publisher\":{\"@id\":\"https://docs.tuneplane.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.tuneplane.ai/en/guides/benchmarks#webpage\",\"url\":\"https://docs.tuneplane.ai/en/guides/benchmarks\",\"name\":\"Run a benchmark\",\"description\":\"Score a finished run against GSM8K, MMLU, C-Eval and the rest, on one comparable dashboard.\",\"dateModified\":\"2026-09-12T13:35:15.142Z\",\"isPartOf\":{\"@id\":\"https://docs.tuneplane.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.tuneplane.ai/en/guides/benchmarks#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.tuneplane.ai/en/guides/benchmarks#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"TunePlane\",\"item\":\"https://docs.tuneplane.ai\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Run a benchmark\",\"item\":\"https://docs.tuneplane.ai/en/guides/benchmarks\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.tuneplane.ai/en/guides/benchmarks#article\",\"headline\":\"Run a benchmark\",\"name\":\"Run a benchmark\",\"description\":\"Score a finished run against GSM8K, MMLU, C-Eval and the rest, on one comparable dashboard.\",\"url\":\"https://docs.tuneplane.ai/en/guides/benchmarks\",\"mainEntityOfPage\":{\"@id\":\"https://docs.tuneplane.ai/en/guides/benchmarks#webpage\"},\"dateModified\":\"2026-09-12T13:35:15.142Z\",\"publisher\":{\"@id\":\"https://docs.tuneplane.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.tuneplane.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"TunePlane\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"TunePlane","nav":{"global":null,"languages":[{"language":"en","default":true,"navbar":{"links":[{"href":"/","label":"Console"},{"href":"/en/quickstart","label":"Quickstart"}],"primary":{"type":"github","label":"GitHub","href":"https://github.com/tuneplane/tuneplane"}},"tabs":[{"tab":"Guides","icon":"book-open","groups":[{"group":"Get started","icon":"rocket","pages":[{"title":"TunePlane","sidebarTitle":"What is TunePlane","icon":"house","mode":"wide","href":"/en"},{"title":"Quickstart","icon":"rocket","href":"/en/quickstart"}]},{"group":"Core concepts","icon":"book-open","expanded":false,"pages":[{"title":"How TunePlane fits together","sidebarTitle":"Architecture","icon":"layers","href":"/en/concepts/architecture"},{"title":"Glossary","icon":"book-a","href":"/en/concepts/glossary"},{"title":"How you ask for GPUs","sidebarTitle":"Resource model","icon":"cpu","href":"/en/concepts/resources"},{"title":"Job states","icon":"git-commit-horizontal","href":"/en/concepts/job-lifecycle"}]},{"group":"Train a model","icon":"flask-conical","expanded":false,"pages":[{"group":"Run a job","expanded":false,"pages":[{"title":"Start from an engineering solution","sidebarTitle":"Solutions","icon":"layers","href":"/en/guides/solutions"},{"title":"Create and tune an experiment","sidebarTitle":"Experiments","icon":"flask-conical","href":"/en/guides/experiments"},{"title":"Write the experiment config","sidebarTitle":"config.yaml","icon":"file-sliders","href":"/en/guides/config"},{"title":"Submit a training job","sidebarTitle":"Submit","icon":"send","href":"/en/guides/submit"},{"title":"Run a hyperparameter sweep","sidebarTitle":"Sweeps","icon":"grid-3x3","href":"/en/guides/sweep"},{"title":"Chain runs into a pipeline","sidebarTitle":"Pipelines","icon":"git-branch","href":"/en/guides/pipelines"}]},{"group":"Frameworks","expanded":false,"pages":[{"title":"Choose a method","sidebarTitle":"Method catalogue","icon":"library","href":"/en/guides/methods"},{"title":"Train with NeMo-RL","sidebarTitle":"NeMo-RL","icon":"cpu","href":"/en/guides/nemo-rl"},{"title":"Train with verl","sidebarTitle":"verl","icon":"boxes","href":"/en/guides/verl"},{"title":"Train with TRL","sidebarTitle":"TRL","icon":"sparkles","href":"/en/guides/trl"},{"title":"Train with OpenRLHF","sidebarTitle":"OpenRLHF","icon":"flame","href":"/en/guides/openrlhf"},{"title":"Train with ms-swift","sidebarTitle":"ms-swift","icon":"layers","href":"/en/guides/ms-swift"},{"title":"Train an image classifier","sidebarTitle":"PyTorch","icon":"flame","href":"/en/guides/pytorch"},{"title":"Bring your own trainer","sidebarTitle":"Custom training","icon":"wrench","href":"/en/guides/custom-training"},{"title":"Build a training image","sidebarTitle":"Custom images","icon":"box","href":"/en/guides/custom-images"}]},{"group":"Data","expanded":false,"pages":[{"title":"Publish and use a dataset","sidebarTitle":"Datasets","icon":"database","href":"/en/guides/datasets"},{"title":"Data shapes and design-lineage splits","sidebarTitle":"Data shapes and splits","icon":"shapes","href":"/en/guides/data-formats"},{"title":"Mount a governed folder","sidebarTitle":"Volumes","icon":"folder-lock","href":"/en/guides/volumes"},{"title":"Collect preference annotations","sidebarTitle":"Annotation","description":"Pair two runs' answers, have people judge them in Argilla, and pull the result back as DPO training data.","icon":"users","href":"/en/guides/annotation"}]}]},{"group":"Evaluate and serve","icon":"gauge","pages":[{"group":"Evaluation","expanded":false,"pages":[{"title":"Run a benchmark","sidebarTitle":"Benchmarks","icon":"gauge","href":"/en/guides/benchmarks"},{"title":"Score with a rubric","sidebarTitle":"Rubrics","description":"One written standard that supplies both the training reward and the benchmark score.","icon":"ruler","href":"/en/guides/rubrics"},{"title":"Score hardware and RTL work","sidebarTitle":"RTL benchmarks","icon":"cpu","href":"/en/guides/rtl-benchmarks"}]},{"group":"Serving","expanded":false,"pages":[{"title":"Register and promote a model","sidebarTitle":"Model registry","icon":"package","href":"/en/guides/model-registry"},{"title":"Deploy a model version","sidebarTitle":"Deployments","icon":"boxes","href":"/en/guides/deployments"},{"title":"Chat with a checkpoint","sidebarTitle":"Playground","icon":"message-square","href":"/en/guides/playground"},{"title":"Turn production traffic into training data","sidebarTitle":"Reflow","icon":"recycle","href":"/en/guides/reflow"}]}]},{"group":"Agent environments","icon":"joystick","expanded":false,"pages":[{"title":"Train against an agent environment","sidebarTitle":"Using environments","icon":"bot","href":"/en/guides/agent-envs"},{"title":"Agent environments","sidebarTitle":"Environments","icon":"joystick","href":"/en/extend/environments"},{"title":"Verifiers","icon":"scale","href":"/en/extend/verifiers"}]},{"group":"Extend the platform","icon":"puzzle","expanded":false,"pages":[{"title":"Extension points","sidebarTitle":"Overview","icon":"puzzle","href":"/en/extend/overview"},{"title":"Plugin packages","sidebarTitle":"Plugin packages","icon":"package","href":"/en/extend/plugins"},{"title":"Algorithm plugins","sidebarTitle":"Algorithm plugins","icon":"code","href":"/en/extend/algorithm-plugins"},{"title":"Recipe packs","sidebarTitle":"Recipe packs","icon":"book-marked","href":"/en/extend/recipe-packs"},{"title":"Benchmark packs","sidebarTitle":"Benchmark packs","icon":"gauge","href":"/en/extend/benchmark-packs"},{"title":"Rubrics","icon":"ruler","href":"/en/extend/rubrics"}]},{"group":"Collaborate","icon":"users","expanded":false,"pages":[{"title":"Share a run with someone","sidebarTitle":"Sharing","icon":"share-2","href":"/en/guides/sharing"},{"title":"Work in a team","sidebarTitle":"Teams","icon":"users-round","href":"/en/guides/teams"}]},{"group":"Integrations","icon":"link","expanded":false,"pages":[{"title":"Connect an AI assistant over MCP","sidebarTitle":"MCP","icon":"plug","href":"/en/integrations/mcp"},{"title":"Link your Hugging Face account","sidebarTitle":"Hugging Face","icon":"box","href":"/en/integrations/huggingface"}]},{"group":"Reference","icon":"file-text","expanded":false,"pages":[{"title":"JobSpec","icon":"file-json","href":"/en/reference/jobspec"},{"title":"Job environment variables","sidebarTitle":"Job environment","icon":"variable","href":"/en/reference/job-env"}]},{"group":"Help","icon":"life-buoy","expanded":false,"pages":[{"title":"Troubleshooting","icon":"life-buoy","href":"/en/troubleshooting"},{"title":"FAQ","icon":"circle-help","href":"/en/faq"}]}]},{"tab":"API Reference","icon":"plug","pages":[{"title":"API Reference","href":"/en/api-reference/introduction"}]},{"tab":"CLI Reference","icon":"terminal","pages":[{"title":"CLI Reference","href":"/en/cli/overview"}]},{"tab":"Web Console","icon":"layout-dashboard","pages":[{"title":"Web Console","href":"/en/console/overview"}]},{"tab":"Deployment \u0026 Ops","icon":"server","pages":[{"title":"Deployment \u0026 Ops","href":"/en/ops/overview"}]}]},{"language":"zh-Hans","navbar":{"links":[{"href":"/","label":"控制台"},{"href":"/zh-Hans/quickstart","label":"快速开始"}],"primary":{"type":"github","label":"GitHub","href":"https://github.com/tuneplane/tuneplane"}},"pages":[{"title":"zh-Hans","href":"/zh-Hans/guides/benchmarks"}]}]},"title":"Run a benchmark - TunePlane","buildId":"dpl_7GUK3ixdQTF3BSNUQYJm8ibGxQWw","deploymentId":"dpl_7GUK3ixdQTF3BSNUQYJm8ibGxQWw","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-BUwlkhKf.js","DynamicMarkdown-CCag2O17.js","zoom-image-lightbox-BVI9Chd9.js","PlusIcon-dPxQtROk.js","lightbox-handle-r17bVUz3.js"]}