license import { ENGINE } from '../engine' ; import { BatchMatMul , BatchMatMulAttrs , BatchMatMulInputs } from '../kernel_names' ; import { NamedAttrMap } from '../kernel_registry' ; import { Tensor } from '../tensor' ; import { NamedTensorMap } from '../tensor_types' ; import { makeTypesMatch } from '../tensor_util' ; import { convertToTensor } from '../tensor_util_env' ; import { TensorLike } from '../types' ; import { op } from './operation' ; param a param b param transposeA param transposeB doc function matMul_ < T extends Tensor > ( a , b , transposeA = false , transposeB = false ) { let $a = convertToTensor ( a , 'a' , 'matMul' ) ; let $b = convertToTensor ( b , 'b' , 'matMul' ) ; [ $a , $b ] = makeTypesMatch ( $a , $b ) ; const inputs = { a : $a , b : $b } ; const attrs = { transposeA , transposeB } ; return ENGINE . runKernel ( BatchMatMul , inputs as { } as NamedTensorMap , attrs as { } as NamedAttrMap ) ; } export const matMul = op ( { matMul_ } ) ;