/** * autograd.ts – Lightweight tape-based automatic differentiation engine. */ export declare class Tensor { data: GPUBuffer | null; shape: number[]; numel: number; requiresGrad: boolean; grad: GPUBuffer | null; _gradFn: number | null; constructor(data: GPUBuffer | null, shape: number[], requiresGrad?: boolean); get byteSize(): number; zeroGrad(device: GPUDevice): void; destroy(): void; } export declare function enableGrad(): void; export declare function noGrad(): void; export declare function clearTape(): void; export declare function recordOperation(backwardFn: () => void | Promise): number; export declare function backward(): Promise; export declare function ensureGradBuffer(device: GPUDevice, tensor: Tensor): void; export declare function allocateGradients(device: GPUDevice, tensors: Tensor[]): void; export declare function zeroGradients(device: GPUDevice, tensors: Tensor[]): void; export declare function onesLikeScalar(device: GPUDevice): GPUBuffer; export declare function crossEntropyLoss(logits: Float32Array, targetId: number): number; export declare function crossEntropyGrad(logits: Float32Array, targetId: number): Float32Array; //# sourceMappingURL=autograd.d.ts.map