diff --git a/skainet-backends/skainet-backend-cpu/api/jvm/skainet-backend-cpu.api b/skainet-backends/skainet-backend-cpu/api/jvm/skainet-backend-cpu.api index 7f4996ba..9c6883d8 100644 --- a/skainet-backends/skainet-backend-cpu/api/jvm/skainet-backend-cpu.api +++ b/skainet-backends/skainet-backend-cpu/api/jvm/skainet-backend-cpu.api @@ -24,6 +24,7 @@ public final class sk/ainet/context/DirectCpuExecutionContext : sk/ainet/context public fun getPhase ()Lsk/ainet/context/Phase; public fun getScratch ()Lsk/ainet/lang/tensor/scratch/ScratchPool; public fun getTensorDataFactory ()Lsk/ainet/lang/tensor/data/TensorDataFactory; + public fun isRecording ()Z public fun ones (Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public fun placeholder (Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public fun registerObserver (Lsk/ainet/context/ExecutionObserver;)V @@ -54,6 +55,7 @@ public final class sk/ainet/exec/kernel/PanamaVectorKernelProvider : sk/ainet/ba public fun matmulFp32 ()Lsk/ainet/backend/api/kernel/Fp32MatmulKernel; public fun matmulQ4K ()Lsk/ainet/backend/api/kernel/Q4KMatmulKernel; public fun matmulQ4_0 ()Lsk/ainet/backend/api/kernel/Q4_0MatmulKernel; + public fun matmulQ5K ()Lsk/ainet/backend/api/kernel/Q5KMatmulKernel; public fun matmulQ5_0 ()Lsk/ainet/backend/api/kernel/Q5_0MatmulKernel; public fun matmulQ5_1 ()Lsk/ainet/backend/api/kernel/Q5_1MatmulKernel; public fun matmulQ6K ()Lsk/ainet/backend/api/kernel/Q6KMatmulKernel; @@ -70,6 +72,7 @@ public final class sk/ainet/exec/kernel/PanamaVectorKernelProviderFactory : sk/a public fun matmulFp32 ()Lsk/ainet/backend/api/kernel/Fp32MatmulKernel; public fun matmulQ4K ()Lsk/ainet/backend/api/kernel/Q4KMatmulKernel; public fun matmulQ4_0 ()Lsk/ainet/backend/api/kernel/Q4_0MatmulKernel; + public fun matmulQ5K ()Lsk/ainet/backend/api/kernel/Q5KMatmulKernel; public fun matmulQ5_0 ()Lsk/ainet/backend/api/kernel/Q5_0MatmulKernel; public fun matmulQ5_1 ()Lsk/ainet/backend/api/kernel/Q5_1MatmulKernel; public fun matmulQ6K ()Lsk/ainet/backend/api/kernel/Q6KMatmulKernel; @@ -102,6 +105,11 @@ public final class sk/ainet/exec/kernel/PanamaVectorQ5_1MatmulKernel : sk/ainet/ public fun matmul ([FI[BIII[FI)V } +public final class sk/ainet/exec/kernel/PanamaVectorQ5_KMatmulKernel : sk/ainet/backend/api/kernel/Q5KMatmulKernel { + public static final field INSTANCE Lsk/ainet/exec/kernel/PanamaVectorQ5_KMatmulKernel; + public fun matmul ([FI[BIII[FI)V +} + public final class sk/ainet/exec/kernel/PanamaVectorQ6_KMatmulKernel : sk/ainet/backend/api/kernel/Q6KMatmulKernel { public static final field INSTANCE Lsk/ainet/exec/kernel/PanamaVectorQ6_KMatmulKernel; public fun matmul ([FI[BIII[FI)V @@ -126,6 +134,7 @@ public final class sk/ainet/exec/kernel/ScalarKernelProvider : sk/ainet/backend/ public fun matmulFp32 ()Lsk/ainet/backend/api/kernel/Fp32MatmulKernel; public fun matmulQ4K ()Lsk/ainet/backend/api/kernel/Q4KMatmulKernel; public fun matmulQ4_0 ()Lsk/ainet/backend/api/kernel/Q4_0MatmulKernel; + public fun matmulQ5K ()Lsk/ainet/backend/api/kernel/Q5KMatmulKernel; public fun matmulQ5_0 ()Lsk/ainet/backend/api/kernel/Q5_0MatmulKernel; public fun matmulQ5_1 ()Lsk/ainet/backend/api/kernel/Q5_1MatmulKernel; public fun matmulQ6K ()Lsk/ainet/backend/api/kernel/Q6KMatmulKernel; @@ -142,6 +151,7 @@ public final class sk/ainet/exec/kernel/ScalarKernelProviderFactory : sk/ainet/b public fun matmulFp32 ()Lsk/ainet/backend/api/kernel/Fp32MatmulKernel; public fun matmulQ4K ()Lsk/ainet/backend/api/kernel/Q4KMatmulKernel; public fun matmulQ4_0 ()Lsk/ainet/backend/api/kernel/Q4_0MatmulKernel; + public fun matmulQ5K ()Lsk/ainet/backend/api/kernel/Q5KMatmulKernel; public fun matmulQ5_0 ()Lsk/ainet/backend/api/kernel/Q5_0MatmulKernel; public fun matmulQ5_1 ()Lsk/ainet/backend/api/kernel/Q5_1MatmulKernel; public fun matmulQ6K ()Lsk/ainet/backend/api/kernel/Q6KMatmulKernel; @@ -174,6 +184,11 @@ public final class sk/ainet/exec/kernel/ScalarQ5_1MatmulKernel : sk/ainet/backen public fun matmul ([FI[BIII[FI)V } +public final class sk/ainet/exec/kernel/ScalarQ5_KMatmulKernel : sk/ainet/backend/api/kernel/Q5KMatmulKernel { + public static final field INSTANCE Lsk/ainet/exec/kernel/ScalarQ5_KMatmulKernel; + public fun matmul ([FI[BIII[FI)V +} + public final class sk/ainet/exec/kernel/ScalarQ6_KMatmulKernel : sk/ainet/backend/api/kernel/Q6KMatmulKernel { public static final field INSTANCE Lsk/ainet/exec/kernel/ScalarQ6_KMatmulKernel; public fun matmul ([FI[BIII[FI)V @@ -287,6 +302,21 @@ public final class sk/ainet/exec/tensor/ops/JvmTurboQuantKernels { public final fun walshHadamardButterfly ([FII)V } +public final class sk/ainet/exec/tensor/ops/KernelProfile { + public static final field INSTANCE Lsk/ainet/exec/tensor/ops/KernelProfile; + public final fun getFp32Calls ()J + public final fun getFp32Nanos ()J + public final fun getGenericCalls ()J + public final fun getGenericNanos ()J + public final fun getQuantCalls ()J + public final fun getQuantNanos ()J + public final fun report ()Ljava/lang/String; + public final fun reset ()V + public final fun timeFp32 (Lkotlin/jvm/functions/Function0;)Ljava/lang/Object; + public final fun timeGeneric (Lkotlin/jvm/functions/Function0;)Ljava/lang/Object; + public final fun timeQuant (Lkotlin/jvm/functions/Function0;)Ljava/lang/Object; +} + public final class sk/ainet/java/SKaiNET { public static final field INSTANCE Lsk/ainet/java/SKaiNET; public static final fun context ()Lsk/ainet/context/ExecutionContext; diff --git a/skainet-backends/skainet-backend-native-cpu/build.gradle.kts b/skainet-backends/skainet-backend-native-cpu/build.gradle.kts index 6bd68dd9..c3d6f22a 100644 --- a/skainet-backends/skainet-backend-native-cpu/build.gradle.kts +++ b/skainet-backends/skainet-backend-native-cpu/build.gradle.kts @@ -146,6 +146,23 @@ tasks.matching { it.name.startsWith("link") && it.name.endsWith("LinuxX64") }.co dependsOn(buildNativeKernels) } +// The linuxX64/linuxArm64 K/N *test* binaries link the CMake static archive and +// execute a Linux ELF. On a non-Linux host the CMake build emits host-format +// objects (Mach-O on macOS), which ld.lld cannot cross-link into a Linux binary, +// and a Linux .kexe cannot be executed anyway. Disable the K/N test link + run +// on non-Linux hosts so `build`/`allTests` stay green locally; klib compilation +// (compileKotlinLinux*) and publishing are unaffected, and the native NEON parity +// suite still runs on Linux CI / qemu-aarch64 / the SL2610 board. Mirrors the +// existing `-PcrossArm64` opt-in gating for the aarch64 cross artifacts. +val isLinuxHost: Boolean = System.getProperty("os.name").lowercase().contains("linux") +if (!isLinuxHost) { + tasks.matching { + (it.name.startsWith("link") && it.name.contains("Test") && + (it.name.endsWith("LinuxX64") || it.name.endsWith("LinuxArm64"))) || + it.name == "linuxX64Test" || it.name == "linuxArm64Test" + }.configureEach { enabled = false } +} + val packageNativeKernels by tasks.registering(Copy::class) { group = "build" description = "Stage the built native kernels library into JVM resources." diff --git a/skainet-compile/skainet-compile-dag/api/jvm/skainet-compile-dag.api b/skainet-compile/skainet-compile-dag/api/jvm/skainet-compile-dag.api index c7fdaeb8..9bd0f858 100644 --- a/skainet-compile/skainet-compile-dag/api/jvm/skainet-compile-dag.api +++ b/skainet-compile/skainet-compile-dag/api/jvm/skainet-compile-dag.api @@ -82,15 +82,19 @@ public final class sk/ainet/lang/graph/DefaultGradientTape : sk/ainet/lang/graph public fun conv1dBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun conv2dBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun conv3dBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public fun convTranspose1dBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun copy ()Lsk/ainet/tape/ExecutionTape; + public fun cosBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun divScalarBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun divideBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun eluBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun expBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun expm1Backward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun flattenBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public fun gatherBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun geluBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun getComputeGradients ()Z + public fun indexSelectBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun leakyReluBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun log10Backward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun log2Backward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; @@ -116,6 +120,7 @@ public final class sk/ainet/lang/graph/DefaultGradientTape : sk/ainet/lang/graph public fun scaledDotProductAttentionBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun sigmoidBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun siluBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public fun sinBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun softmaxBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun splitBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun sqrtBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; @@ -127,6 +132,8 @@ public final class sk/ainet/lang/graph/DefaultGradientTape : sk/ainet/lang/graph public final fun suppressRecording ()V public fun tanhBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun transposeBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public fun trilBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public fun unfoldBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun unsqueezeBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun upsample2dBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public fun varianceBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; @@ -280,6 +287,24 @@ public final class sk/ainet/lang/graph/GraphNode { public abstract interface class sk/ainet/lang/graph/Layout { } +public final class sk/ainet/lang/graph/OutputDesignatedGraph : sk/ainet/lang/graph/ComputeGraph { + public fun (Lsk/ainet/lang/graph/ComputeGraph;Ljava/util/Set;)V + public fun addEdge (Lsk/ainet/lang/graph/GraphEdge;)Lsk/ainet/lang/graph/GraphEdge; + public fun addNode (Lsk/ainet/lang/graph/GraphNode;)Lsk/ainet/lang/graph/GraphNode; + public fun clear ()V + public fun copy ()Lsk/ainet/lang/graph/ComputeGraph; + public fun getEdges ()Ljava/util/List; + public fun getInputNodes ()Ljava/util/List; + public fun getInputNodes (Lsk/ainet/lang/graph/GraphNode;)Ljava/util/List; + public fun getNodes ()Ljava/util/List; + public fun getOutputNodes ()Ljava/util/List; + public fun getOutputNodes (Lsk/ainet/lang/graph/GraphNode;)Ljava/util/List; + public fun getTopologicalOrder ()Ljava/util/List; + public fun removeEdge (Lsk/ainet/lang/graph/GraphEdge;)Z + public fun removeNode (Lsk/ainet/lang/graph/GraphNode;)Z + public fun validate ()Lsk/ainet/lang/tensor/ops/ValidationResult; +} + public final class sk/ainet/lang/graph/ResolvedComputeGraph { public fun (Lsk/ainet/lang/graph/ComputeGraph;)V public final fun backendAssignment (Ljava/lang/String;)Ljava/lang/String; diff --git a/skainet-compile/skainet-compile-opt/api/jvm/skainet-compile-opt.api b/skainet-compile/skainet-compile-opt/api/jvm/skainet-compile-opt.api index f0f36daf..331ca256 100644 --- a/skainet-compile/skainet-compile-opt/api/jvm/skainet-compile-opt.api +++ b/skainet-compile/skainet-compile-opt/api/jvm/skainet-compile-opt.api @@ -47,6 +47,10 @@ public final class sk/ainet/compile/opt/GraphOptimizationResult { public fun toString ()Ljava/lang/String; } +public final class sk/ainet/compile/opt/GraphPruningKt { + public static final fun prunedToOutputs (Lsk/ainet/lang/graph/ComputeGraph;Ljava/util/Set;)Lsk/ainet/lang/graph/ComputeGraph; +} + public final class sk/ainet/compile/opt/passes/ConstantFoldingPass : sk/ainet/compile/opt/GraphOptimizationPass { public fun ()V public fun apply (Lsk/ainet/lang/graph/ComputeGraph;)Lsk/ainet/compile/opt/GraphOptimizationResult; diff --git a/skainet-lang/skainet-lang-core/api/jvm/skainet-lang-core.api b/skainet-lang/skainet-lang-core/api/jvm/skainet-lang-core.api index c2c2a1be..eba0f5f7 100644 --- a/skainet-lang/skainet-lang-core/api/jvm/skainet-lang-core.api +++ b/skainet-lang/skainet-lang-core/api/jvm/skainet-lang-core.api @@ -211,6 +211,7 @@ public final class sk/ainet/context/DefaultDataExecutionContext : sk/ainet/conte public fun getPhase ()Lsk/ainet/context/Phase; public fun getScratch ()Lsk/ainet/lang/tensor/scratch/ScratchPool; public fun getTensorDataFactory ()Lsk/ainet/lang/tensor/data/TensorDataFactory; + public fun isRecording ()Z public fun ones (Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public fun placeholder (Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public fun registerObserver (Lsk/ainet/context/ExecutionObserver;)V @@ -238,6 +239,7 @@ public abstract interface class sk/ainet/context/ExecutionContext { public abstract fun getPhase ()Lsk/ainet/context/Phase; public fun getScratch ()Lsk/ainet/lang/tensor/scratch/ScratchPool; public abstract fun getTensorDataFactory ()Lsk/ainet/lang/tensor/data/TensorDataFactory; + public fun isRecording ()Z public fun ones (Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public fun placeholder (Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public fun registerObserver (Lsk/ainet/context/ExecutionObserver;)V @@ -259,6 +261,7 @@ public final class sk/ainet/context/ExecutionContext$DefaultImpls { public static fun getMemoryPlanner (Lsk/ainet/context/ExecutionContext;)Lsk/ainet/lang/tensor/storage/MemoryPlanner; public static fun getMemoryTracker (Lsk/ainet/context/ExecutionContext;)Lsk/ainet/lang/tensor/storage/MemoryTracker; public static fun getScratch (Lsk/ainet/context/ExecutionContext;)Lsk/ainet/lang/tensor/scratch/ScratchPool; + public static fun isRecording (Lsk/ainet/context/ExecutionContext;)Z public static fun ones (Lsk/ainet/context/ExecutionContext;Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public static fun placeholder (Lsk/ainet/context/ExecutionContext;Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public static fun registerObserver (Lsk/ainet/context/ExecutionContext;Lsk/ainet/context/ExecutionObserver;)V @@ -362,6 +365,7 @@ public final class sk/ainet/context/PhaseOverridingExecutionContext : sk/ainet/c public fun getPhase ()Lsk/ainet/context/Phase; public fun getScratch ()Lsk/ainet/lang/tensor/scratch/ScratchPool; public fun getTensorDataFactory ()Lsk/ainet/lang/tensor/data/TensorDataFactory; + public fun isRecording ()Z public fun ones (Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public fun placeholder (Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public fun registerObserver (Lsk/ainet/context/ExecutionObserver;)V @@ -405,6 +409,7 @@ public final class sk/ainet/context/TrainingExecutionContext$DefaultImpls { public static fun getMemoryPlanner (Lsk/ainet/context/TrainingExecutionContext;)Lsk/ainet/lang/tensor/storage/MemoryPlanner; public static fun getMemoryTracker (Lsk/ainet/context/TrainingExecutionContext;)Lsk/ainet/lang/tensor/storage/MemoryTracker; public static fun getScratch (Lsk/ainet/context/TrainingExecutionContext;)Lsk/ainet/lang/tensor/scratch/ScratchPool; + public static fun isRecording (Lsk/ainet/context/TrainingExecutionContext;)Z public static fun ones (Lsk/ainet/context/TrainingExecutionContext;Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public static fun placeholder (Lsk/ainet/context/TrainingExecutionContext;Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public static fun registerObserver (Lsk/ainet/context/TrainingExecutionContext;Lsk/ainet/context/ExecutionObserver;)V @@ -759,6 +764,7 @@ public final class sk/ainet/lang/nn/DefaultNeuralNetworkExecutionContext : sk/ai public fun getPhase ()Lsk/ainet/context/Phase; public fun getScratch ()Lsk/ainet/lang/tensor/scratch/ScratchPool; public fun getTensorDataFactory ()Lsk/ainet/lang/tensor/data/TensorDataFactory; + public fun isRecording ()Z public fun ones (Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public fun placeholder (Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public fun registerObserver (Lsk/ainet/context/ExecutionObserver;)V @@ -945,6 +951,19 @@ public final class sk/ainet/lang/nn/GroupedConvInfo { public fun toString ()Ljava/lang/String; } +public final class sk/ainet/lang/nn/Gru : sk/ainet/lang/nn/Module, sk/ainet/lang/nn/topology/ModuleParameters { + public fun (IILjava/lang/String;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;)V + public fun (IILjava/lang/String;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Z)V + public synthetic fun (IILjava/lang/String;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;ZILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (IILsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;)V + public final fun getHiddenSize ()I + public final fun getInputSize ()I + public fun getModules ()Ljava/util/List; + public fun getName ()Ljava/lang/String; + public fun getParams ()Ljava/util/List; + public final fun getTrainable ()Z +} + public final class sk/ainet/lang/nn/Input : sk/ainet/lang/nn/Module { public fun ()V public fun (Ljava/lang/String;Z)V @@ -1053,6 +1072,7 @@ public final class sk/ainet/lang/nn/NeuralNetworkExecutionContext$DefaultImpls { public static fun getMemoryPlanner (Lsk/ainet/lang/nn/NeuralNetworkExecutionContext;)Lsk/ainet/lang/tensor/storage/MemoryPlanner; public static fun getMemoryTracker (Lsk/ainet/lang/nn/NeuralNetworkExecutionContext;)Lsk/ainet/lang/tensor/storage/MemoryTracker; public static fun getScratch (Lsk/ainet/lang/nn/NeuralNetworkExecutionContext;)Lsk/ainet/lang/tensor/scratch/ScratchPool; + public static fun isRecording (Lsk/ainet/lang/nn/NeuralNetworkExecutionContext;)Z public static fun ones (Lsk/ainet/lang/nn/NeuralNetworkExecutionContext;Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public static fun placeholder (Lsk/ainet/lang/nn/NeuralNetworkExecutionContext;Lsk/ainet/lang/tensor/Shape;Lkotlin/reflect/KClass;)Lsk/ainet/lang/tensor/Tensor; public static fun registerObserver (Lsk/ainet/lang/nn/NeuralNetworkExecutionContext;Lsk/ainet/context/ExecutionObserver;)V @@ -1521,6 +1541,19 @@ public final class sk/ainet/lang/nn/dsl/FlattenImpl : sk/ainet/lang/nn/dsl/FLATT public fun setStartDim (I)V } +public abstract interface class sk/ainet/lang/nn/dsl/GRU : sk/ainet/lang/nn/dsl/NetworkDslItem { + public abstract fun getTrainable ()Z + public abstract fun setTrainable (Z)V +} + +public final class sk/ainet/lang/nn/dsl/GruImpl : sk/ainet/lang/nn/dsl/GRU { + public fun (Lsk/ainet/context/ExecutionContext;IILjava/lang/String;Lkotlin/reflect/KClass;)V + public final fun create ()Lsk/ainet/lang/nn/Gru; + public fun getExecutionContext ()Lsk/ainet/context/ExecutionContext; + public fun getTrainable ()Z + public fun setTrainable (Z)V +} + public abstract interface class sk/ainet/lang/nn/dsl/MAXPOOL2D : sk/ainet/lang/nn/dsl/NetworkDslItem { public abstract fun getKernelSize ()Lkotlin/Pair; public abstract fun getPadding ()Lkotlin/Pair; @@ -1592,6 +1625,8 @@ public abstract interface class sk/ainet/lang/nn/dsl/NeuralNetworkDsl : sk/ainet public static synthetic fun flatten$default (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;Ljava/lang/String;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V public abstract fun groupNorm (IIDZLjava/lang/String;)V public static synthetic fun groupNorm$default (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;IIDZLjava/lang/String;ILjava/lang/Object;)V + public abstract fun gru (ILjava/lang/String;Lkotlin/jvm/functions/Function1;)V + public static synthetic fun gru$default (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;ILjava/lang/String;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V public abstract fun input (ILjava/lang/String;Z)V public fun input ([ILjava/lang/String;Z)V public static synthetic fun input$default (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;ILjava/lang/String;ZILjava/lang/Object;)V @@ -1627,6 +1662,7 @@ public final class sk/ainet/lang/nn/dsl/NeuralNetworkDsl$DefaultImpls { public static synthetic fun dense$default (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;Ljava/lang/String;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V public static synthetic fun flatten$default (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;Ljava/lang/String;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V public static synthetic fun groupNorm$default (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;IIDZLjava/lang/String;ILjava/lang/Object;)V + public static synthetic fun gru$default (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;ILjava/lang/String;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V public static fun input (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;[ILjava/lang/String;Z)V public static synthetic fun input$default (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;ILjava/lang/String;ZILjava/lang/Object;)V public static synthetic fun input$default (Lsk/ainet/lang/nn/dsl/NeuralNetworkDsl;[ILjava/lang/String;ZILjava/lang/Object;)V @@ -1659,6 +1695,7 @@ public final class sk/ainet/lang/nn/dsl/NeuralNetworkDslImpl : sk/ainet/lang/nn/ public final fun getLastDimension ()I public final fun getModules ()Ljava/util/List; public fun groupNorm (IIDZLjava/lang/String;)V + public fun gru (ILjava/lang/String;Lkotlin/jvm/functions/Function1;)V public fun input (ILjava/lang/String;Z)V public fun input ([ILjava/lang/String;Z)V public fun layerNorm ([IDZLjava/lang/String;)V @@ -1700,6 +1737,7 @@ public final class sk/ainet/lang/nn/dsl/StageImpl : sk/ainet/lang/nn/dsl/NeuralN public final fun getLastDimension ()I public final fun getModules ()Ljava/util/List; public fun groupNorm (IIDZLjava/lang/String;)V + public fun gru (ILjava/lang/String;Lkotlin/jvm/functions/Function1;)V public fun input (ILjava/lang/String;Z)V public fun input ([ILjava/lang/String;Z)V public fun layerNorm ([IDZLjava/lang/String;)V @@ -3226,6 +3264,69 @@ public final class sk/ainet/lang/tensor/data/Q5_1TensorData$DefaultImpls { public static fun copyToFloatArray (Lsk/ainet/lang/tensor/data/Q5_1TensorData;)[F } +public final class sk/ainet/lang/tensor/data/Q5_KBlockTensorData : sk/ainet/lang/tensor/data/Q5_KTensorData, sk/ainet/lang/tensor/storage/PackedBlockStorage { + public static final field Companion Lsk/ainet/lang/tensor/data/Q5_KBlockTensorData$Companion; + public fun (Lsk/ainet/lang/tensor/Shape;[B)V + public fun copyToFloatArray ()[F + public fun dequantizeBlock (I[FI)V + public fun get ([I)Ljava/lang/Byte; + public synthetic fun get ([I)Ljava/lang/Object; + public fun getBlockCount ()I + public fun getBlockD (I)F + public fun getBlockDMin (I)F + public fun getBlockSize ()I + public fun getCode (II)I + public fun getElementCount ()J + public fun getEncoding ()Lsk/ainet/lang/tensor/storage/TensorEncoding; + public fun getPackedData ()[B + public fun getPhysicalBytes ()J + public fun getShape ()Lsk/ainet/lang/tensor/Shape; + public fun getSubBlockMin (II)F + public fun getSubBlockScale (II)F + public fun set ([IB)V + public synthetic fun set ([ILjava/lang/Object;)V + public fun toFloatArray ()[F + public fun toTensorStorage (Lsk/ainet/lang/tensor/storage/LogicalDType;Lsk/ainet/lang/tensor/storage/Placement;)Lsk/ainet/lang/tensor/storage/TensorStorage; +} + +public final class sk/ainet/lang/tensor/data/Q5_KBlockTensorData$Companion { + public final fun fromRawBytes (Lsk/ainet/lang/tensor/Shape;[B)Lsk/ainet/lang/tensor/data/Q5_KBlockTensorData; +} + +public abstract interface class sk/ainet/lang/tensor/data/Q5_KTensorData : sk/ainet/lang/tensor/data/TensorData { + public static final field BLOCK_SIZE I + public static final field BYTES_PER_BLOCK I + public static final field Companion Lsk/ainet/lang/tensor/data/Q5_KTensorData$Companion; + public static final field QH_OFFSET I + public static final field QS_OFFSET I + public static final field SUB_BLOCKS_PER_BLOCK I + public static final field SUB_BLOCK_SIZE I + public abstract fun getBlockCount ()I + public abstract fun getBlockD (I)F + public abstract fun getBlockDMin (I)F + public abstract fun getCode (II)I + public abstract fun getPackedData ()[B + public abstract fun getSubBlockMin (II)F + public abstract fun getSubBlockScale (II)F +} + +public final class sk/ainet/lang/tensor/data/Q5_KTensorData$Companion { + public static final field BLOCK_SIZE I + public static final field BYTES_PER_BLOCK I + public static final field QH_OFFSET I + public static final field QS_OFFSET I + public static final field SUB_BLOCKS_PER_BLOCK I + public static final field SUB_BLOCK_SIZE I +} + +public final class sk/ainet/lang/tensor/data/Q5_KTensorData$DefaultImpls { + public static fun copyToFloatArray (Lsk/ainet/lang/tensor/data/Q5_KTensorData;)[F +} + +public final class sk/ainet/lang/tensor/data/Q5_KTensorDataKt { + public static final fun toFloatArray (Lsk/ainet/lang/tensor/data/Q5_KTensorData;)[F +} + public final class sk/ainet/lang/tensor/data/Q6_KBlockTensorData : sk/ainet/lang/tensor/data/Q6_KTensorData, sk/ainet/lang/tensor/storage/PackedBlockStorage { public static final field Companion Lsk/ainet/lang/tensor/data/Q6_KBlockTensorData$Companion; public fun (Lsk/ainet/lang/tensor/Shape;[B)V @@ -3358,6 +3459,10 @@ public final class sk/ainet/lang/tensor/data/Q8_0TensorDataKt { public static final fun toFloatArray (Lsk/ainet/lang/tensor/data/Q8_0TensorData;)[F } +public abstract interface class sk/ainet/lang/tensor/data/RowDequantSource { + public abstract fun dequantRow (I)[F +} + public abstract interface class sk/ainet/lang/tensor/data/TensorData : sk/ainet/lang/tensor/data/ItemsAccessor { public fun copyToFloatArray ()[F public abstract fun getShape ()Lsk/ainet/lang/tensor/Shape; @@ -3894,13 +3999,17 @@ public abstract interface class sk/ainet/lang/tensor/ops/DifferentiableTensorOps public abstract fun conv1dBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun conv2dBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun conv3dBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public abstract fun convTranspose1dBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public abstract fun cosBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun divScalarBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun divideBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun eluBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun expBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun expm1Backward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun flattenBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public abstract fun gatherBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun geluBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public abstract fun indexSelectBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun leakyReluBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun log10Backward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun log2Backward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; @@ -3923,6 +4032,7 @@ public abstract interface class sk/ainet/lang/tensor/ops/DifferentiableTensorOps public abstract fun scaledDotProductAttentionBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun sigmoidBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun siluBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public abstract fun sinBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun softmaxBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun splitBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun sqrtBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; @@ -3932,11 +4042,18 @@ public abstract interface class sk/ainet/lang/tensor/ops/DifferentiableTensorOps public abstract fun sumBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun tanhBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun transposeBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public abstract fun trilBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; + public abstract fun unfoldBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun unsqueezeBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun upsample2dBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; public abstract fun varianceBackward (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Ljava/util/List;Ljava/util/Map;)Ljava/util/List; } +public final class sk/ainet/lang/tensor/ops/DifferentiableTensorOpsRules { + public static final field INSTANCE Lsk/ainet/lang/tensor/ops/DifferentiableTensorOpsRules; + public final fun getRuleNames ()Ljava/util/Set; +} + public final class sk/ainet/lang/tensor/ops/DivideOperation : sk/ainet/lang/tensor/ops/BaseOperation { public fun ()V public fun (Ljava/util/Map;)V @@ -4100,12 +4217,6 @@ public abstract interface class sk/ainet/lang/tensor/ops/MixedPrecisionTensorOps public abstract fun convert (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/types/DType;)Lsk/ainet/lang/tensor/Tensor; } -public final class sk/ainet/lang/tensor/ops/MixedPrecisionTensorOps$DefaultImpls { - public static fun convTranspose1d (Lsk/ainet/lang/tensor/ops/MixedPrecisionTensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;IIIII)Lsk/ainet/lang/tensor/Tensor; - public static fun cos (Lsk/ainet/lang/tensor/ops/MixedPrecisionTensorOps;Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; - public static fun sin (Lsk/ainet/lang/tensor/ops/MixedPrecisionTensorOps;Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; -} - public final class sk/ainet/lang/tensor/ops/MultiplyOperation : sk/ainet/lang/tensor/ops/BaseOperation { public fun ()V public fun (Ljava/util/Map;)V @@ -4253,10 +4364,10 @@ public abstract interface class sk/ainet/lang/tensor/ops/TensorOps { public static synthetic fun conv2d$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lkotlin/Pair;Lkotlin/Pair;Lkotlin/Pair;IILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public abstract fun conv3d (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lkotlin/Triple;Lkotlin/Triple;Lkotlin/Triple;I)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun conv3d$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lkotlin/Triple;Lkotlin/Triple;Lkotlin/Triple;IILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; - public fun convTranspose1d (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;IIIII)Lsk/ainet/lang/tensor/Tensor; + public abstract fun convTranspose1d (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;IIIII)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun convTranspose1d$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;IIIIIILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public abstract fun convert (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/types/DType;)Lsk/ainet/lang/tensor/Tensor; - public fun cos (Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; + public abstract fun cos (Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; public abstract fun divScalar (Lsk/ainet/lang/tensor/Tensor;Ljava/lang/Number;)Lsk/ainet/lang/tensor/Tensor; public abstract fun divide (Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; public abstract fun elu (Lsk/ainet/lang/tensor/Tensor;F)Lsk/ainet/lang/tensor/Tensor; @@ -4300,7 +4411,7 @@ public abstract interface class sk/ainet/lang/tensor/ops/TensorOps { public abstract fun sigmoid (Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; public abstract fun sign (Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; public abstract fun silu (Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; - public fun sin (Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; + public abstract fun sin (Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; public abstract fun softmax (Lsk/ainet/lang/tensor/Tensor;I)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun softmax$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;IILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public abstract fun split (Lsk/ainet/lang/tensor/Tensor;II)Ljava/util/List; @@ -4328,9 +4439,7 @@ public final class sk/ainet/lang/tensor/ops/TensorOps$DefaultImpls { public static synthetic fun conv1d$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;IIIIILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun conv2d$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lkotlin/Pair;Lkotlin/Pair;Lkotlin/Pair;IILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun conv3d$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lkotlin/Triple;Lkotlin/Triple;Lkotlin/Triple;IILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; - public static fun convTranspose1d (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;IIIII)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun convTranspose1d$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;IIIIIILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; - public static fun cos (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun elu$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;FILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun flatten$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;IIILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun gather$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;IILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; @@ -4340,7 +4449,6 @@ public final class sk/ainet/lang/tensor/ops/TensorOps$DefaultImpls { public static synthetic fun maxPool2d$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lkotlin/Pair;Lkotlin/Pair;Lkotlin/Pair;ILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun mean$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Ljava/lang/Integer;ILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun scaledDotProductAttention$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;FZILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; - public static fun sin (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun softmax$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;IILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun squeeze$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Ljava/lang/Integer;ILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; public static synthetic fun sum$default (Lsk/ainet/lang/tensor/ops/TensorOps;Lsk/ainet/lang/tensor/Tensor;Ljava/lang/Integer;ILjava/lang/Object;)Lsk/ainet/lang/tensor/Tensor; @@ -5324,6 +5432,17 @@ public final class sk/ainet/lang/tensor/storage/TensorEncoding$Q5_1 : sk/ainet/l public fun toString ()Ljava/lang/String; } +public final class sk/ainet/lang/tensor/storage/TensorEncoding$Q5_K : sk/ainet/lang/tensor/storage/TensorEncoding { + public static final field BLOCK_SIZE I + public static final field BYTES_PER_BLOCK I + public static final field INSTANCE Lsk/ainet/lang/tensor/storage/TensorEncoding$Q5_K; + public fun equals (Ljava/lang/Object;)Z + public fun getName ()Ljava/lang/String; + public fun hashCode ()I + public fun physicalBytes (J)Ljava/lang/Long; + public fun toString ()Ljava/lang/String; +} + public final class sk/ainet/lang/tensor/storage/TensorEncoding$Q6_K : sk/ainet/lang/tensor/storage/TensorEncoding { public static final field BLOCK_SIZE I public static final field BYTES_PER_BLOCK I diff --git a/skainet-lang/skainet-lang-dag/api/jvm/skainet-lang-dag.api b/skainet-lang/skainet-lang-dag/api/jvm/skainet-lang-dag.api index 09092260..ab274f2d 100644 --- a/skainet-lang/skainet-lang-dag/api/jvm/skainet-lang-dag.api +++ b/skainet-lang/skainet-lang-dag/api/jvm/skainet-lang-dag.api @@ -34,12 +34,6 @@ public final class sk/ainet/lang/dag/GraphDslKt { public abstract interface class sk/ainet/lang/dag/GraphDslOps : sk/ainet/lang/tensor/ops/TensorOps { } -public final class sk/ainet/lang/dag/GraphDslOps$DefaultImpls { - public static fun convTranspose1d (Lsk/ainet/lang/dag/GraphDslOps;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;Lsk/ainet/lang/tensor/Tensor;IIIII)Lsk/ainet/lang/tensor/Tensor; - public static fun cos (Lsk/ainet/lang/dag/GraphDslOps;Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; - public static fun sin (Lsk/ainet/lang/dag/GraphDslOps;Lsk/ainet/lang/tensor/Tensor;)Lsk/ainet/lang/tensor/Tensor; -} - public final class sk/ainet/lang/dag/GraphDslOpsGraphDslKt { public static final fun abs (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;)Lsk/ainet/lang/dag/GraphValue; public static synthetic fun abs$default (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;ILjava/lang/Object;)Lsk/ainet/lang/dag/GraphValue; @@ -59,6 +53,10 @@ public final class sk/ainet/lang/dag/GraphDslOpsGraphDslKt { public static synthetic fun conv2d$default (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;Lkotlin/Pair;Lkotlin/Pair;Lkotlin/Pair;ILjava/lang/String;ILjava/lang/Object;)Lsk/ainet/lang/dag/GraphValue; public static final fun conv3d (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;Lkotlin/Triple;Lkotlin/Triple;Lkotlin/Triple;ILjava/lang/String;)Lsk/ainet/lang/dag/GraphValue; public static synthetic fun conv3d$default (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;Lkotlin/Triple;Lkotlin/Triple;Lkotlin/Triple;ILjava/lang/String;ILjava/lang/Object;)Lsk/ainet/lang/dag/GraphValue; + public static final fun convTranspose1d (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;IIIIILjava/lang/String;)Lsk/ainet/lang/dag/GraphValue; + public static synthetic fun convTranspose1d$default (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;IIIIILjava/lang/String;ILjava/lang/Object;)Lsk/ainet/lang/dag/GraphValue; + public static final fun cos (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;)Lsk/ainet/lang/dag/GraphValue; + public static synthetic fun cos$default (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;ILjava/lang/Object;)Lsk/ainet/lang/dag/GraphValue; public static final fun divScalar (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/Number;Ljava/lang/String;)Lsk/ainet/lang/dag/GraphValue; public static synthetic fun divScalar$default (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/Number;Ljava/lang/String;ILjava/lang/Object;)Lsk/ainet/lang/dag/GraphValue; public static final fun divide (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;)Lsk/ainet/lang/dag/GraphValue; @@ -127,6 +125,8 @@ public final class sk/ainet/lang/dag/GraphDslOpsGraphDslKt { public static synthetic fun sign$default (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;ILjava/lang/Object;)Lsk/ainet/lang/dag/GraphValue; public static final fun silu (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;)Lsk/ainet/lang/dag/GraphValue; public static synthetic fun silu$default (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;ILjava/lang/Object;)Lsk/ainet/lang/dag/GraphValue; + public static final fun sin (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;)Lsk/ainet/lang/dag/GraphValue; + public static synthetic fun sin$default (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;ILjava/lang/Object;)Lsk/ainet/lang/dag/GraphValue; public static final fun softmax (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;ILjava/lang/String;)Lsk/ainet/lang/dag/GraphValue; public static synthetic fun softmax$default (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;ILjava/lang/String;ILjava/lang/Object;)Lsk/ainet/lang/dag/GraphValue; public static final fun sqrt (Lsk/ainet/lang/dag/DagBuilder;Lsk/ainet/lang/dag/GraphValue;Ljava/lang/String;)Lsk/ainet/lang/dag/GraphValue;