Skip to content
5 min read · 1,012 words

@nhtio/adk/batteries/llm/transformers_js ​

transformers.js LLM adapter battery — dual-environment (Node + browser) on-device text generation.

Remarks ​

Opinionated LLM battery wrapping @huggingface/transformers (transformers.js) — on-device inference via ONNX Runtime, auto-selecting onnxruntime-node (native, plain Node) or onnxruntime-web (WASM + WebGPU). Environment-neutral: NO WebGPU gate.

transformers.js is text-in / text-out — it injects tool definitions into the chat template but does NOT return structured tool calls or reasoning. This battery parses them out of the model's text via the shared, configurable parser layer (toolCallParser / reasoningParser, both 'auto' by default), mirroring how vLLM/SGLang/Ollama do post-hoc, per-family parsing. The bundled defaults target the small ONNX models that run in transformers.js (Gemma 4 E2B/E4B, gpt-oss:20b, Qwen3-Instruct, Llama 3.2, SmolLM); a custom parser function is the escape hatch for anything else.

Re-exports the adapter class, every translation helper (each with its default* alias), the shared tool-call + reasoning parser layer (family parsers, auto drivers, resolvers, contract types), the option/wire types, the validation schema + validateOptions, and the battery-scoped exceptions.

Type Aliases ​

Type AliasDescription
MediaOutputExtractorFnExtracts generated media from a battery's raw generation result so the adapter can surface it as assistant Message.attachments. Injectable + defaulted to absent (no media output) on every LLM battery, mirroring the toolCallParser / reasoningParser / decodeMedia injection seams.
UnsupportedMediaPolicyPolicy for how a Chat-family battery handles a @nhtio/adk!Media instance whose modality the wire protocol cannot natively represent.

References ​

barePythonicToolCallParser ​

Re-exports barePythonicToolCallParser


BatteryLifecycleBattery ​

Re-exports BatteryLifecycleBattery


BatteryLifecycleCallback ​

Re-exports BatteryLifecycleCallback


BatteryLifecycleHooks ​

Re-exports BatteryLifecycleHooks


BatteryLifecyclePhase ​

Re-exports BatteryLifecyclePhase


BatteryLifecycleReport ​

Re-exports BatteryLifecycleReport


buildBundledReasoningParsers ​

Re-exports buildBundledReasoningParsers


buildTransformersJsMessages ​

Re-exports buildTransformersJsMessages


BUNDLED_REASONING_PARSERS ​

Re-exports BUNDLED_REASONING_PARSERS


BUNDLED_TOOL_CALL_PARSERS ​

Re-exports BUNDLED_TOOL_CALL_PARSERS


ChatGenerationOptions ​

Re-exports ChatGenerationOptions


ChatSampler ​

Re-exports ChatSampler


createAutoReasoningParser ​

Re-exports createAutoReasoningParser


createAutoToolCallParser ​

Re-exports createAutoToolCallParser


CreateTransformersJsMultimodal ​

Re-exports CreateTransformersJsMultimodal


CreateTransformersJsPipeline ​

Re-exports CreateTransformersJsPipeline


createTransformersJsStreamAccumulator ​

Re-exports createTransformersJsStreamAccumulator


CreateTransformersJsStreamer ​

Re-exports CreateTransformersJsStreamer


DEFAULT_REASONING_PARSER_ORDER ​

Re-exports DEFAULT_REASONING_PARSER_ORDER


DEFAULT_TOOL_CALL_PARSER_ORDER ​

Re-exports DEFAULT_TOOL_CALL_PARSER_ORDER


defaultBarePythonicToolCallParser ​

Re-exports defaultBarePythonicToolCallParser


defaultBuildTransformersJsMessages ​

Re-exports defaultBuildTransformersJsMessages


defaultCreateAutoReasoningParser ​

Re-exports defaultCreateAutoReasoningParser


defaultCreateAutoToolCallParser ​

Re-exports defaultCreateAutoToolCallParser


defaultCreateTransformersJsStreamAccumulator ​

Re-exports defaultCreateTransformersJsStreamAccumulator


defaultDescriptionToChatCompletionsJsonSchema ​

Re-exports defaultDescriptionToChatCompletionsJsonSchema


defaultEmitLifecycle ​

Re-exports defaultEmitLifecycle


defaultFilterThoughts ​

Re-exports defaultFilterThoughts


defaultGemmaChannelReasoningParser ​

Re-exports defaultGemmaChannelReasoningParser


defaultGemmaToolCallParser ​

Re-exports defaultGemmaToolCallParser


defaultGptOssToolCallParser ​

Re-exports defaultGptOssToolCallParser


defaultHarmonyAnalysisReasoningParser ​

Re-exports defaultHarmonyAnalysisReasoningParser


defaultHermesToolCallParser ​

Re-exports defaultHermesToolCallParser


defaultLlama3JsonToolCallParser ​

Re-exports defaultLlama3JsonToolCallParser


defaultLooseKeyedToolCallParser ​

Re-exports defaultLooseKeyedToolCallParser


defaultMediaToTransformersInput ​

Re-exports defaultMediaToTransformersInput


defaultMistralToolCallParser ​

Re-exports defaultMistralToolCallParser


defaultNoneReasoningParser ​

Re-exports defaultNoneReasoningParser


defaultNoneToolCallParser ​

Re-exports defaultNoneToolCallParser


defaultPhiToolCallParser ​

Re-exports defaultPhiToolCallParser


defaultPythonicToolCallParser ​

Re-exports defaultPythonicToolCallParser


defaultQwen3CoderToolCallParser ​

Re-exports defaultQwen3CoderToolCallParser


defaultRenderChatCompletionsSystemPrompt ​

Re-exports defaultRenderChatCompletionsSystemPrompt


defaultRenderFirstPartyRetrievables ​

Re-exports defaultRenderFirstPartyRetrievables


defaultRenderMemories ​

Re-exports defaultRenderMemories


defaultRenderRetrievables ​

Re-exports defaultRenderRetrievables


defaultRenderRetrievableSafetyDirective ​

Re-exports defaultRenderRetrievableSafetyDirective


defaultRenderStandingInstructions ​

Re-exports defaultRenderStandingInstructions


defaultRenderThirdPartyPrivateRetrievables ​

Re-exports defaultRenderThirdPartyPrivateRetrievables


defaultRenderThirdPartyPublicRetrievables ​

Re-exports defaultRenderThirdPartyPublicRetrievables


defaultRenderThought ​

Re-exports defaultRenderThought


defaultRenderTransformersJsToolResult ​

Re-exports defaultRenderTransformersJsToolResult


defaultRenderTrustedContent ​

Re-exports defaultRenderTrustedContent


defaultRenderUntrustedContent ​

Re-exports defaultRenderUntrustedContent


defaultResolveGenerationOptions ​

Re-exports defaultResolveGenerationOptions


defaultResolveReasoningParser ​

Re-exports defaultResolveReasoningParser


defaultResolveToolCallParser ​

Re-exports defaultResolveToolCallParser


defaultThinkTagReasoningParser ​

Re-exports defaultThinkTagReasoningParser


defaultToolsToTransformersJsTools ​

Re-exports defaultToolsToTransformersJsTools


DescriptionLike ​

Re-exports DescriptionLike


descriptionToChatCompletionsJsonSchema ​

Re-exports descriptionToChatCompletionsJsonSchema


E_INVALID_TRANSFORMERS_JS_OPTIONS ​

Re-exports E_INVALID_TRANSFORMERS_JS_OPTIONS


E_LLM_GPU_OUT_OF_MEMORY ​

Re-exports E_LLM_GPU_OUT_OF_MEMORY


E_TRANSFORMERS_JS_CONTEXT_OVERFLOW ​

Re-exports E_TRANSFORMERS_JS_CONTEXT_OVERFLOW


E_TRANSFORMERS_JS_INVALID_TOOL_CALL_ARGS ​

Re-exports E_TRANSFORMERS_JS_INVALID_TOOL_CALL_ARGS


E_TRANSFORMERS_JS_STREAM_ERROR ​

Re-exports E_TRANSFORMERS_JS_STREAM_ERROR


E_TRANSFORMERS_JS_TOOL_PARSE_FAILED ​

Re-exports E_TRANSFORMERS_JS_TOOL_PARSE_FAILED


E_UNSUPPORTED_MEDIA_MODALITY ​

Re-exports E_UNSUPPORTED_MEDIA_MODALITY


emitLifecycle ​

Re-exports emitLifecycle


extractReasoningFields ​

Re-exports extractReasoningFields


filterThoughts ​

Re-exports filterThoughts


gemmaChannelReasoningParser ​

Re-exports gemmaChannelReasoningParser


gemmaToolCallParser ​

Re-exports gemmaToolCallParser


GeneratedMediaOutput ​

Re-exports GeneratedMediaOutput


GENERATION_DEFAULTS ​

Re-exports GENERATION_DEFAULTS


gptOssToolCallParser ​

Re-exports gptOssToolCallParser


GpuBudget ​

Re-exports GpuBudget


GpuBufferInstrument ​

Re-exports GpuBufferInstrument


GpuBufferSample ​

Re-exports GpuBufferSample


harmonyAnalysisReasoningParser ​

Re-exports harmonyAnalysisReasoningParser


hermesToolCallParser ​

Re-exports hermesToolCallParser


installModelSource ​

Re-exports installModelSource


instrumentGpuBuffers ​

Re-exports instrumentGpuBuffers


isGpuOutOfMemoryError ​

Re-exports isGpuOutOfMemoryError


JsonSchema ​

Re-exports JsonSchema


JsonValue ​

Re-exports JsonValue


llama3JsonToolCallParser ​

Re-exports llama3JsonToolCallParser


looseKeyedToolCallParser ​

Re-exports looseKeyedToolCallParser


makeGemmaChannelReasoningParser ​

Re-exports makeGemmaChannelReasoningParser


makeHarmonyAnalysisReasoningParser ​

Re-exports makeHarmonyAnalysisReasoningParser


makeThinkTagReasoningParser ​

Re-exports makeThinkTagReasoningParser


mediaToTransformersInput ​

Re-exports mediaToTransformersInput


mistralToolCallParser ​

Re-exports mistralToolCallParser


modelSourceToCache ​

Re-exports modelSourceToCache


noneReasoningParser ​

Re-exports noneReasoningParser


noneToolCallParser ​

Re-exports noneToolCallParser


ParsedToolCall ​

Re-exports ParsedToolCall


parseResourceKey ​

Re-exports parseResourceKey


phiToolCallParser ​

Re-exports phiToolCallParser


probeGpuBudget ​

Re-exports probeGpuBudget


pythonicToolCallParser ​

Re-exports pythonicToolCallParser


qwen3CoderToolCallParser ​

Re-exports qwen3CoderToolCallParser


RawGenerationObservation ​

Re-exports RawGenerationObservation


RawGenerationObserverFn ​

Re-exports RawGenerationObserverFn


ReasoningParseResult ​

Re-exports ReasoningParseResult


ReasoningParserFn ​

Re-exports ReasoningParserFn


ReasoningParserName ​

Re-exports ReasoningParserName


ReasoningParserOptions ​

Re-exports ReasoningParserOptions


renderChatCompletionsSystemPrompt ​

Re-exports renderChatCompletionsSystemPrompt


renderFirstPartyRetrievables ​

Re-exports renderFirstPartyRetrievables


renderMemories ​

Re-exports renderMemories


renderRetrievables ​

Re-exports renderRetrievables


renderRetrievableSafetyDirective ​

Re-exports renderRetrievableSafetyDirective


renderStandingInstructions ​

Re-exports renderStandingInstructions


renderThirdPartyPrivateRetrievables ​

Re-exports renderThirdPartyPrivateRetrievables


renderThirdPartyPublicRetrievables ​

Re-exports renderThirdPartyPublicRetrievables


renderThought ​

Re-exports renderThought


renderTransformersJsToolResult ​

Re-exports renderTransformersJsToolResult


renderTrustedContent ​

Re-exports renderTrustedContent


renderUntrustedContent ​

Re-exports renderUntrustedContent


ResolvedGenerationOptions ​

Re-exports ResolvedGenerationOptions


resolveGenerationOptions ​

Re-exports resolveGenerationOptions


resolveReasoningParser ​

Re-exports resolveReasoningParser


resolveToolCallParser ​

Re-exports resolveToolCallParser


thinkTagReasoningParser ​

Re-exports thinkTagReasoningParser


ToolCallParserContext ​

Re-exports ToolCallParserContext


ToolCallParseResult ​

Re-exports ToolCallParseResult


ToolCallParserFn ​

Re-exports ToolCallParserFn


ToolCallParserName ​

Re-exports ToolCallParserName


toolsToTransformersJsTools ​

Re-exports toolsToTransformersJsTools


TransformersJsAdapter ​

Re-exports TransformersJsAdapter


TransformersJsAdapterOptions ​

Re-exports TransformersJsAdapterOptions


TransformersJsBucketOrder ​

Renames and re-exports ChatCompletionsBucketOrder


TransformersJsDataType ​

Re-exports TransformersJsDataType


TransformersJsDescriptionLike ​

Re-exports TransformersJsDescriptionLike


TransformersJsDevice ​

Re-exports TransformersJsDevice


TransformersJsDeviceType ​

Re-exports TransformersJsDeviceType


TransformersJsDtype ​

Re-exports TransformersJsDtype


TransformersJsHelpers ​

Renames and re-exports ChatCompletionsHelpers


TransformersJsJsonSchema ​

Re-exports TransformersJsJsonSchema


TransformersJsMessage ​

Re-exports TransformersJsMessage


TransformersJsModel ​

Re-exports TransformersJsModel


TransformersJsModelSource ​

Re-exports TransformersJsModelSource


transformersJsOptionsSchema ​

Re-exports transformersJsOptionsSchema


TransformersJsPipeline ​

Re-exports TransformersJsPipeline


TransformersJsProcessor ​

Re-exports TransformersJsProcessor


TransformersJsProgressCallback ​

Re-exports TransformersJsProgressCallback


TransformersJsSessionOptions ​

Re-exports TransformersJsSessionOptions


TransformersJsStreamAccumulator ​

Re-exports TransformersJsStreamAccumulator


TransformersJsTextStreamer ​

Re-exports TransformersJsTextStreamer


TransformersJsTool ​

Re-exports TransformersJsTool


validateOptions ​

Re-exports validateOptions


withModelSource ​

Re-exports withModelSource