import type { EnvVar } from "../internals/envfile.js"; import type { SizingResult } from "./sizing.js"; /** * The local-inference env block from the blueprint's "Local Inference Engine * Configuration Profiles". The four static keys are emitted verbatim; the one * computed key (`OLLAMA_NUM_PARALLEL`) carries the sizing engine's parallel * count — Ollama's documented variable for that exact metric. * * Order is fixed so the managed block regenerates byte-identically on re-run. */ /** Static keys whose values come straight from the blueprint (not host-derived). */ export declare const STATIC_OLLAMA_ENV: readonly EnvVar[]; /** The scope name used for the aih-managed env region in the shell profile. */ export declare const HARDWARE_SCOPE = "hardware"; /** * Build the ordered env vars for the inference engine: the four static blueprint * keys followed by the computed `OLLAMA_NUM_PARALLEL`. `llamacpp` shares the same * tuning surface, so the block is identical regardless of engine today; the * parameter is kept for forward compatibility and intent. */ export declare function inferenceEnv(sizing: SizingResult): EnvVar[]; /** * Human-readable summary of the profiled host and the derived budget. Emitted as * a `doc` action: the memory ceiling and thread pool are per-request runtime * options in Ollama (not server env vars), so they are surfaced as guidance * rather than invented environment keys. */ export declare function profileDoc(profile: { totalRamGb: number; cpuCores: number; gpuName: string; vramGb: number; backend: string; }, sizing: SizingResult, modelSizeGb: number): string;