Skip to main content
torch.js has not been released yet. how did you find this? check back soon, we're preparing for v0.1 now
torch.jstorch.jstorch.js
PlaygroundContact
Login
Documentation
IntroductionType SafetyTensor ExpressionsTensor IndexingEinsumEinopsAutogradTraining a ModelProfiling & MemoryPyTorch MigrationBest PracticesRuntimesPerformancePyTorch CompatibilityBenchmarksDType Coverage
acquireAnalysisHintAnalysisResultanalyzeanalyzeanalyzeExpressionAssignmentNodeASTNodeastToMethodChainastToStringBinaryOpNodebindBufferPoolbuildExpressionStringbuildGraphChainedComparisonNodeclearclearAstCacheclearBufferPoolclonecloneCompiledExecuteOptionsCompiledExpressionCompiledPatterncompileExpressioncompileExpressionWithCompileOptionscompilePatterncomposePatternscreateEfficientPatterncreateLazyExpressioncreateLazyExpressionWithCustomOperatorDefinitionDeviceOfDimensionLabeledNodeDTypeOfEfficientOptionsEvalExprShapeevaluateevaluateEfficientEvaluateOptionsevaluateWithTraceEvaluationErrorexecuteExpressionGraphextractVariablesExtractVariablesformatAnalysisFunctionCallNodeFunctionDefinitionFunctionInfogetASTgetAstCacheSizegetAutocompleteInfogetBufferPoolgetCustomOperatorgetFunctionRegistrygetOperatorOverloadsgetOperatorsgetOptimizedExpressiongradgradAllGraphEdgeGraphNodegraphToStringhasFunctionhasOperatorInferDeviceInferDTypeInferExpressionShapeInferObjectDeviceInferObjectDTypeinitBuiltinFunctionsisOperatorLazyExecuteOptionsLazyExpressionNamedExpressionNumberNodeOperatorOperatorOverloadparseParseErrorParseExprPatternParseResultparseTemplatepartialPatternpattern_error_extra_variablespattern_error_missing_variablesPatternExprResultPatternExprShapePatternFunctionPatternVariablespipePatternsregisterFunctionregisterOperatorregisterOperatorOverloadreleasereleaseAllrunsetBufferPoolSeverityShapeAssertionNodeShapeDimensionShapeOfStringNodeTensorExprResultTensorOrNumberTensorRefNodeTensorShapeMapTernaryNodeTokentokenizeTokenizerErrorTokenizerResultTokenTypetoStringtoStringTraceEntryTraceResultTypedTensorExprTypedTensorExprWithHelpersUnaryOpNodeunbindunbindValidatePatternVariablesvisualizeGraphVisualizeOptionswithwithPoolScope
absacosacoshAdaptivePool1dShapeAdaptivePool2dShapeaddaddbmmAddbmmOptionsaddcdivAddcdivOptionsaddcmulAddcmulOptionsaddmmAddmmOptionsaddmvAddmvOptionsaddrAddrOptionsadjointallallcloseAllcloseOptionsAlphaBetaOptionsamaxaminaminmaxAminmaxOptionsangleanyapplyOutarangeare_deterministic_algorithms_enabledargmaxargminargsortargwhereas_stridedas_tensorasinasinhAssertNoShapeErrorAssertNotErrorAsStridedOptionsAtat_error_index_out_of_boundsatanatan2atanhatleast_1datleast_2datleast_3dAtShapeautocast_decrement_nestingautocast_increment_nestingautograd_gradient_mismatch_errorautograd_not_registered_errorAutogradConfigAutogradEntryAutogradHandleAutogradHandleImplAxesRecordBackwardFnbaddbmmBaddbmmOptionsbartlett_windowBaseKernelConfigbatch_dimensions_do_not_match_errorbernoulliBernoulliOptionsBinaryBroadcastResultBinaryKernelConfigCPUBinaryKernelCPUBinaryOpNamesBinaryOpSchemaBinaryOptionsbincountBincountOptionsbitwise_andbitwise_left_shiftbitwise_notbitwise_orbitwise_right_shiftbitwise_xorblackman_windowblock_diagbmmBooleanDTypeRulebroadcast_error_incompatible_dimensionsbroadcast_shapesbroadcast_tensorsbroadcast_toBroadcastShapeBroadcastShapeRulebroadcastShapesbucketizeBucketizeOptionsbuildEinopsErrorbuildErrorMessagecanBroadcastTocartesian_prodcatCatOptionsCatShapeCauchyOptionscdistCdistOptionsceilceluCeluFunctionalOptionschain_matmulCheckShapeErrorCholeskyShapechunkchunk_error_dim_out_of_rangeChunkOptionsclampClampOptionsclear_autocast_cacheclearEinopsCacheclearEinsumCacheclonecolumn_stackcombinationsCombinationsOptionscompiled_with_cxx11_abicomplexconjconj_physicalcontiguousConv1dShapeConv2dShapeConv3dShapeConvTranspose2dShapecopysigncorrcoefcoscoshcount_nonzeroCountNonzeroOptionscovcoverage_reportcoverageReportCoverageReportCovOptionsCPUForwardFnCPUKernelConfigCPUKernelEntryCPUOnlyResultCPUTensorDatacreateTorchCreationOpSchemaCumExtremeResultcummaxcummincumprodCumShapecumsumcumulative_trapezoidCumulativeOptionsCumulativeOptionsWithDimdeg2raddetachDeterministicOptionsDetShapeDevicedevice_error_requiresDeviceCheckedResultDeviceInputDeviceOptionsDeviceTypediagdiag_embedDiagEmbedOptionsdiagflatDiagflatOptionsDiagFlatOptionsdiagonal_scatterDiagonalOptionsDiagonalScatterOptionsDiagOptionsDiagShapediffDiffOptionsdigammadimension_error_out_of_rangedistDistOptionsdivdotDotShapeRuleDoubleDoubleDimdropoutDropoutFunctionalOptionsdsplitdstackDTypedtype_already_registered_errordtype_components_mismatch_errordtype_not_found_errorDTypeComponentsDTypeConfigDTypeDisplayConfigDTypeEntryDTypeHandleDTypeHandleImplDTypeRegistryDTypeRuleDTypeSerializationConfigDynamicShapeEigShapeeinops_error_ambiguous_decompositioneinops_error_anonymous_in_outputeinops_error_dimension_mismatcheinops_error_invalid_patterneinops_error_reduce_undefined_outputeinops_error_repeat_missing_sizeeinops_error_undefined_axiseinsumeinsum_error_dimension_mismatcheinsum_error_index_out_of_rangeeinsum_error_invalid_equationeinsum_error_invalid_sublist_elementeinsum_error_operand_count_mismatcheinsum_error_subscript_rank_mismatcheinsum_error_unknown_output_indexEinsumOptionsEinsumOutputShapeEllipsiseluelu_EluFunctionalOptionsembedding_bag_error_requires_2d_inputemptyempty_cacheempty_likeeqequalerferfcerfinvexpexp2expandexpand_asexpand_error_incompatibleExpandShapeexpm1ExponentialOptionseyeEyeOptionsfftFFTOptionsfindKernelWithPredicatefindSimilarPatternsflattenFlattenOptionsFlattenShapeflipflip_error_dim_out_of_rangefliplrFlipShapeflipudfloat_powerFloatDTypeRulefloorfloor_dividefmaxfminfmodformatEquationErrorformatShapefracfrexpfrombufferfullfull_likefunction_already_registered_errorFunctionConfigFunctionEntryFunctionHandlegathergather_error_dim_out_of_rangeGatherShapegcdgegeluGeometricOptionsget_autocast_cpu_dtypeget_autocast_gpu_dtypeget_autocast_ipu_dtypeget_autocast_xla_dtypeget_default_deviceget_default_dtypeget_deterministic_debug_modeget_device_moduleget_file_pathget_float32_matmul_precisionget_num_interop_threadsget_num_threadsget_op_infoget_printoptionsget_real_dtypeget_rng_stategetAutogradgetDTypegetEinopsCacheSizegetEinsumCacheSizegetFunctiongetKernelgetMethodgetOpInfoGetOpKindGetOpSchemagetScalarKernelgluGluFunctionalOptionsGradContextGradFnGradientsForgtHalfHalfDimhamming_windowhann_windowhardshrinkhardsigmoidhardswishhardtanhhardtanh_HardtanhFunctionalOptionshas_autogradhas_kernelhasAutogradhasDTypehasFunctionhasKernelhasMethodhasScalarKernelHasShapeErrorheavisidehistcHistcOptionshistogramHistogramOptionsHistogramResulthsplithstackhypoti0IdentityShapeifftimagindex_addindex_copyindex_fillindex_putindex_reduceindex_selectindex_select_error_dim_out_of_rangeIndexPutOptionsIndexSelectShapeIndexSpecIndicesOptionsIndicesSpecInputsForInsertDiminvalid_config_errorinverseInverseShapeirfftis_anomaly_check_nan_enabledis_anomaly_enabledis_autocast_cache_enabledis_autocast_cpu_enabledis_autocast_ipu_enabledis_autocast_xla_enabledis_complexis_complex_dtypeis_cpu_only_modeis_deterministic_algorithms_warn_only_enabledis_floating_pointis_floating_point_dtypeis_inference_mode_enabledis_nonzerois_tensoris_warn_always_enabledis_webgpu_availableIs2DIsAtLeast1DIsBinaryOpIsBinaryOpNameiscloseIscloseOptionsisfiniteisinisinfisnanisneginfisposinfisrealIsReductionOpIsReductionOpNameIsRegistryErrorIsShapeErroristftISTFTOptionsIsUnaryOpIsUnaryOpNameitem_error_not_scalarItemResultkaiser_windowKaiserWindowOptionskernel_not_registered_errorkernel_signature_mismatch_errorKernelConfigKernelConfigWebGPUKernelEntryKernelHandleKernelInfoKernelPredicateKernelRegistryKernelWebGPUkronkthvalueKthvalueOptionslcmldexpleleaky_reluleaky_relu_LeakyReluFunctionalOptionslerplevenshteinDistancelgammalinalg_error_not_square_matrixlinalg_error_requires_2dlinalg_error_requires_at_least_2dlinearlinspacelist_custom_dtypeslist_dtypeslist_functionslist_kernelslist_methodslist_opslistCustomDTypeslistDTypeslistFunctionslistKernelsListKernelsOptionslistMethodslistOpsListOpsOptionsloglog_softmaxlog10log1plog2logaddexplogaddexp2logcumsumexplogical_andlogical_notlogical_orlogical_xorlogitLogitOptionsLogNormalOptionsLogOptionslogsigmoidlogspacelogsumexpLogsumexpOptionsltLUShapeLuSolveOptionsmasked_selectmasked_select_asyncMaskSpecmatmulmatmul_error_inner_dimensions_do_not_matchMatmul2DShapeMatmulShapeMatmulShapeRuleMatrixTransposeShapemaxmaximummeanmedianmemory_statsmemory_summarymeshgridmethod_already_registered_errormethod_dtype_not_supported_errorMethodConfigMethodEntryMethodHandleminminimummishmmMMShapeRulemodemovedimmsortmulmultinomialmultinomial_asyncMultinomialAsyncOptionsMultinomialOptionsMultiplyBymvMVShapeRulenan_to_numnanmeannanmediannanquantileNanReductionOptionsnansumNanToNumOptionsnarrownarrow_copynarrow_error_length_exceeds_boundsnarrow_error_start_out_of_boundsNarrowShapeneneedsBroadcastnegNegativeDimnextafternonzeroNonzeroOptionsnormnormalNormalOptionsNormOptionsnumelonesones_likeop_kind_mismatch_errorop_not_found_errorOpCoverageEntryOpInfoOpKindOpNameOpSchemaOpSchemasouterOuterShapepackPackShapepermutepermute_error_dimension_count_mismatchPermuteShapepoissonpolarPool1dShapePool2dShapePool3dShapepositivepowpreluPrintOptionsprodprofiler_allow_cudagraph_cupti_lazy_reinit_cuda12promote_typesPromoteDTypeRulePutOptionsquantileQuantileOptionsrad2degrandrand_likerandintrandint_likeRandintLikeOptionsRandintOptionsrandnrandn_likeRandomLikeOptionsRandomOptionsrandpermRangeSpecRankravelrealrearrangeRearrangeOptionsRearrangeShapereciprocalreduceReduceOperationReduceOptionsReduceShapeReductionKernelConfigCPUReductionKernelCPUReductionOpNamesReductionOpSchemaReductionOptionsReductionShapeRuleregister_backwardregister_dtyperegister_forwardregister_functionregister_methodregister_scalar_forwardregisterAutogradRegisterBackwardOptionsregisterDTypeRegisterDTypeOptionsRegisteredDTyperegisterFunctionRegisterFunctionOptionsregisterKernelRegisterKernelOptionsregisterMethodRegisterMethodOptionsregisterScalarKernelregistration_failed_errorrelurelu_relu6ReluFunctionalOptionsremainderRemoveDimrepeatrepeat_interleaveRepeatInterleaveOptionsRepeatOptionsRepeatShapeReplaceDimrequireWebGPUreset_peak_memory_statsreshapeReshapeShaperesult_typerfftrollRollOptionsrot90Rot90Optionsroundrrelurrelu_RreluFunctionalOptionsrsqrtSafeExpandShapeSameDTypeRuleSameShapeRuleScalarCPUForwardFnScalarCPUKernelConfigScalarKernelEntryScalarKernelHandleScalarWebGPUKernelConfigScaleDimscatterscatter_addscatter_add_scatter_error_dim_out_of_rangescatter_reducescatter_reduce_ScatterReduceOptionsScatterShapesearchsortedSearchSortedOptionsselectselect_error_index_out_of_boundsselect_scatterSelectShapeseluset_default_deviceset_default_tensor_typeset_deterministic_debug_modeset_float32_matmul_precisionset_printoptionsset_warn_alwaysSetupContextFnShapeShapeCheckedResultShapedTensorShapeErrorMessageShapeOpSchemaShapeRulesigmoidsignsignbitsilusinsincsinhSizeOptionsslice_error_out_of_boundsslice_scatterSliceOptionsSliceScatterOptionsSliceShapeSliceSpecsoftmaxsoftmax_error_dim_out_of_rangeSoftmaxShapesoftminSoftminFunctionalOptionssoftplusSoftplusFunctionalOptionssoftshrinksoftsignsortSortOptionssplitsplit_error_dim_out_of_rangeSplitOptionssqrtsquaresqueezeSqueezeOptionsSqueezeShapestackStackOptionsStackShapestdstd_meanStdVarMeanOptionsStdVarOptionsstftSTFTOptionsStrideOptionssubSublistSublistElementSubscriptIndexsumSVDShapeswapaxessym_floatsym_intsym_notttaketake_along_dimTakeAlongDimOptionstantanhtanhshrinktensortensor_splitTensorCreatorTensorDatatensordotTensordotOptionsTensorLikeTensorMetaTensorOptionsTensorStoragethresholdthreshold_tileTileShapeToOptionstopkTopkOptionsTorchtraceTraceShapetransposetranspose_dims_error_out_of_rangetranspose_error_requires_2d_tensorTransposeDimsShapeTransposeDimsShapeCheckedTransposeShapetrapezoidTrapezoidOptionsTriangularOptionstriltril_indicesTriOptionsTripletriutriu_indicestrue_dividetruncTupleOfLengthTypedArrayTypedArrayForTypedStorageTypeOptionsUnaryKernelConfigCPUUnaryKernelCPUUnaryOpNamesUnaryOpParamsUnaryOpSchemaUnaryOptionsunbindunbind_error_dim_out_of_rangeUnbindOptionsunflattenUniformOptionsuniqueunique_consecutiveUniqueConsecutiveOptionsUniqueOptionsunpackUnpackShapeunravel_indexunsqueezeUnsqueezeOptionsUnsqueezeShapeuse_deterministic_algorithmsValidateBatchedSquareMatrixValidateChunkDimValidatedEinsumShapevalidateDeviceValidateDeviceValidatedRearrangeShapeValidatedReduceShapeValidatedRepeatShapevalidateDTypeValidateEinsumValidateOperandCountValidateRanksValidateScalarValidateSplitDimValidateSquareMatrixValidateUnbindDimValueOptionsvar_var_meanvdotviewview_as_complexview_as_realvmapvsplitvstackWebGPUKernelConfigWebGPUOnlyResultWebGPUTensorDatawhereWindowOptionsxlogyzeroszeros_like
torch.js· 2026
LegalTerms of UsePrivacy Policy
/
/
  1. docs
  2. torch.js
  3. torch
  4. tx
  5. TypedTensorExprWithHelpers

torch.tx.TypedTensorExprWithHelpers

export interface TypedTensorExprWithHelpers extends TypedTensorExpr {
  /**
   * Type-safe expression evaluation with pattern string.
   *
   * Uses a pattern string with named placeholders for full compile-time
   * shape checking. Variable names in the pattern must match object keys.
   *
   * @example
   * ```typescript
   * // Linear layer - catches shape errors at compile time!
   * const output = $.e('input @ weights + bias', { input, weights, bias });
   *
   * // GRU cell
   * const h_next = $.e('(-z_gate + 1) * candidate + z_gate * h_prev', {
   *   z_gate, candidate, h_prev
   * });
   *
   * // Attention
   * const attended = $.e('scores @ values', { scores, values });
   * ```
   */
  e: <const Pattern extends string, Tensors extends Record<string, TensorOrNumber>>(
    pattern: Pattern,
    tensors: Tensors
  ) => PatternExprResult<Pattern, Tensors>;

  /** Debug template - evaluates with logging enabled */
  debug: TypedTensorExpr & { enabled: boolean };

  /** Trace template - returns result and execution trace */
  trace: <const Strings extends readonly string[], Tensors extends readonly TensorOrNumber[]>(
    strings: TemplateStringsArray & { readonly raw: Strings },
    ...tensors: Tensors
  ) => _TraceResult;

  /** Parse without evaluating */
  parse: <Tensors extends readonly TensorOrNumber[]>(
    strings: TemplateStringsArray,
    ...tensors: Tensors
  ) => _ParseResult;

  /** Convert expression to method chain representation */
  toMethodChain: (strings: TemplateStringsArray, tensorNames?: string[]) => string;

  /** Register a custom function for use in expressions */
  registerFunction: (name: string, def: unknown) => void;

  /** Register a custom binary operator */
  registerOperator: (name: string, def: unknown) => void;

  /** Add an overload for a built-in operator */
  overloadOperator: (op: string, overload: unknown) => void;

  /** Check if a function is registered */
  hasFunction: (name: string) => boolean;

  /** Check if an operator is registered */
  hasOperator: (name: string) => boolean;

  /** Clear the AST cache */
  clearCache: () => void;

  /** Current AST cache size */
  readonly cacheSize: number;
}
e(<const Pattern extends string, Tensors extends Record<string, TensorOrNumber>>( pattern: Pattern, tensors: Tensors ) => PatternExprResult<Pattern, Tensors>)
– Type-safe expression evaluation with pattern string. Uses a pattern string with named placeholders for full compile-time shape checking. Variable names in the pattern must match object keys.
debug(TypedTensorExpr & { enabled: boolean })
– Debug template - evaluates with logging enabled
trace(<const Strings extends readonly string[], Tensors extends readonly TensorOrNumber[]>( strings: TemplateStringsArray & { readonly raw: Strings }, ...tensors: Tensors ) => _TraceResult)
– Trace template - returns result and execution trace
parse(<Tensors extends readonly TensorOrNumber[]>( strings: TemplateStringsArray, ...tensors: Tensors ) => _ParseResult)
– Parse without evaluating
toMethodChain((strings: TemplateStringsArray, tensorNames?: string[]) => string)
– Convert expression to method chain representation
registerFunction((name: string, def: unknown) => void)
– Register a custom function for use in expressions
registerOperator((name: string, def: unknown) => void)
– Register a custom binary operator
overloadOperator((op: string, overload: unknown) => void)
– Add an overload for a built-in operator
hasFunction((name: string) => boolean)
– Check if a function is registered
hasOperator((name: string) => boolean)
– Check if an operator is registered
clearCache(() => void)
– Clear the AST cache
readonlycacheSize(number)
– Current AST cache size

Full tensorExpr interface including utilities.

Shape errors from the type system propagate automatically. Invalid operations produce error types that cause compile-time failures.

Previous
TypedTensorExpr
Next
UnaryOpNode