cactus-react-native 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +230 -0
- package/android/build.gradle +104 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +4 -0
- package/android/src/main/CMakeLists.txt +104 -0
- package/android/src/main/java/com/cactus/Cactus.java +646 -0
- package/android/src/main/java/com/cactus/CactusPackage.java +48 -0
- package/android/src/main/java/com/cactus/LlamaContext.java +579 -0
- package/android/src/main/jni-utils.h +100 -0
- package/android/src/main/jni.cpp +1254 -0
- package/android/src/main/jniLibs/arm64-v8a/libcactus.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/libcactus_v8.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/libcactus_v8_2.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/libcactus_v8_2_dotprod.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/libcactus_v8_2_dotprod_i8mm.so +0 -0
- package/android/src/main/jniLibs/arm64-v8a/libcactus_v8_2_i8mm.so +0 -0
- package/android/src/main/jniLibs/x86_64/libcactus.so +0 -0
- package/android/src/main/jniLibs/x86_64/libcactus_x86_64.so +0 -0
- package/android/src/newarch/java/com/cactus/CactusModule.java +124 -0
- package/android/src/oldarch/java/com/cactus/CactusModule.java +125 -0
- package/cactus-react-native.podspec +45 -0
- package/ios/CMakeLists.txt +109 -0
- package/ios/Cactus.h +6 -0
- package/ios/Cactus.mm +405 -0
- package/ios/CactusContext.h +57 -0
- package/ios/CactusContext.mm +835 -0
- package/ios/cactus.xcframework/info.plist +74 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/cactus.h +133 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/chat.h +143 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/common.h +683 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-alloc.h +76 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-backend-impl.h +255 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-backend.h +354 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-common.h +1851 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-cpp.h +39 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-cpu-aarch64.h +8 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-cpu-impl.h +531 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-cpu-quants.h +63 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-cpu-traits.h +38 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-cpu.h +138 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-impl.h +567 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-metal-impl.h +530 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-metal.h +66 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-opt.h +216 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-quants.h +100 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml-threading.h +14 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/ggml.h +2221 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/gguf.h +202 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/json-schema-to-grammar.h +21 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/json.hpp +24766 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-adapter.h +76 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-arch.h +421 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-batch.h +88 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-chat.h +53 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-context.h +265 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-cparams.h +38 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-cpp.h +30 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-grammar.h +173 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-graph.h +574 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-hparams.h +148 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-impl.h +61 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-io.h +35 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-kv-cache.h +287 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-memory.h +21 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-mmap.h +68 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-model-loader.h +167 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-model.h +403 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-sampling.h +32 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama-vocab.h +125 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/llama.h +1416 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/log.h +103 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/minja/chat-template.hpp +529 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/minja/minja.hpp +2915 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/sampling.h +107 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/sgemm.h +14 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/unicode-data.h +20 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/unicode.h +66 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Info.plist +0 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/cactus +0 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/ggml-llama.metallib +0 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/cactus.h +133 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/chat.h +143 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/common.h +683 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-alloc.h +76 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-backend-impl.h +255 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-backend.h +354 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-common.h +1851 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpp.h +39 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpu-aarch64.h +8 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpu-impl.h +531 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpu-quants.h +63 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpu-traits.h +38 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpu.h +138 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-impl.h +567 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-metal-impl.h +530 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-metal.h +66 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-opt.h +216 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-quants.h +100 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml-threading.h +14 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/ggml.h +2221 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/gguf.h +202 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/json-schema-to-grammar.h +21 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/json.hpp +24766 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-adapter.h +76 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-arch.h +421 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-batch.h +88 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-chat.h +53 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-context.h +265 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-cparams.h +38 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-cpp.h +30 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-grammar.h +173 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-graph.h +574 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-hparams.h +148 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-impl.h +61 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-io.h +35 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-kv-cache.h +287 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-memory.h +21 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-mmap.h +68 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-model-loader.h +167 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-model.h +403 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-sampling.h +32 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama-vocab.h +125 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/llama.h +1416 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/log.h +103 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/minja/chat-template.hpp +529 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/minja/minja.hpp +2915 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/sampling.h +107 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/sgemm.h +14 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/unicode-data.h +20 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Headers/unicode.h +66 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/Info.plist +0 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/_CodeSignature/CodeResources +101 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/cactus +0 -0
- package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/ggml-llama-sim.metallib +0 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/cactus.h +133 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/chat.h +143 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/common.h +683 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-alloc.h +76 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-backend-impl.h +255 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-backend.h +354 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-common.h +1851 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-cpp.h +39 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-cpu-aarch64.h +8 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-cpu-impl.h +531 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-cpu-quants.h +63 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-cpu-traits.h +38 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-cpu.h +138 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-impl.h +567 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-metal-impl.h +530 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-metal.h +66 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-opt.h +216 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-quants.h +100 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml-threading.h +14 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/ggml.h +2221 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/gguf.h +202 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/json-schema-to-grammar.h +21 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/json.hpp +24766 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-adapter.h +76 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-arch.h +421 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-batch.h +88 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-chat.h +53 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-context.h +265 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-cparams.h +38 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-cpp.h +30 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-grammar.h +173 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-graph.h +574 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-hparams.h +148 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-impl.h +61 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-io.h +35 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-kv-cache.h +287 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-memory.h +21 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-mmap.h +68 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-model-loader.h +167 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-model.h +403 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-sampling.h +32 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama-vocab.h +125 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/llama.h +1416 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/log.h +103 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/minja/chat-template.hpp +529 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/minja/minja.hpp +2915 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/sampling.h +107 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/sgemm.h +14 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/unicode-data.h +20 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Headers/unicode.h +66 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/Info.plist +0 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/cactus +0 -0
- package/ios/cactus.xcframework/tvos-arm64/cactus.framework/ggml-llama.metallib +0 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/cactus.h +133 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/chat.h +143 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/common.h +683 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-alloc.h +76 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-backend-impl.h +255 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-backend.h +354 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-common.h +1851 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpp.h +39 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpu-aarch64.h +8 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpu-impl.h +531 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpu-quants.h +63 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpu-traits.h +38 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-cpu.h +138 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-impl.h +567 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-metal-impl.h +530 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-metal.h +66 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-opt.h +216 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-quants.h +100 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml-threading.h +14 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/ggml.h +2221 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/gguf.h +202 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/json-schema-to-grammar.h +21 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/json.hpp +24766 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-adapter.h +76 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-arch.h +421 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-batch.h +88 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-chat.h +53 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-context.h +265 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-cparams.h +38 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-cpp.h +30 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-grammar.h +173 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-graph.h +574 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-hparams.h +148 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-impl.h +61 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-io.h +35 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-kv-cache.h +287 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-memory.h +21 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-mmap.h +68 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-model-loader.h +167 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-model.h +403 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-sampling.h +32 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama-vocab.h +125 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/llama.h +1416 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/log.h +103 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/minja/chat-template.hpp +529 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/minja/minja.hpp +2915 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/sampling.h +107 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/sgemm.h +14 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/unicode-data.h +20 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Headers/unicode.h +66 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/Info.plist +0 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/_CodeSignature/CodeResources +101 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/cactus +0 -0
- package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/ggml-llama-sim.metallib +0 -0
- package/lib/commonjs/NativeCactus.js +9 -0
- package/lib/commonjs/NativeCactus.js.map +1 -0
- package/lib/commonjs/chat.js +37 -0
- package/lib/commonjs/chat.js.map +1 -0
- package/lib/commonjs/grammar.js +560 -0
- package/lib/commonjs/grammar.js.map +1 -0
- package/lib/commonjs/index.js +300 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/module/NativeCactus.js +5 -0
- package/lib/module/NativeCactus.js.map +1 -0
- package/lib/module/chat.js +33 -0
- package/lib/module/chat.js.map +1 -0
- package/lib/module/grammar.js +553 -0
- package/lib/module/grammar.js.map +1 -0
- package/lib/module/index.js +277 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/typescript/NativeCactus.d.ts +357 -0
- package/lib/typescript/NativeCactus.d.ts.map +1 -0
- package/lib/typescript/chat.d.ts +10 -0
- package/lib/typescript/chat.d.ts.map +1 -0
- package/lib/typescript/grammar.d.ts +37 -0
- package/lib/typescript/grammar.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +96 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/package.json +223 -0
- package/src/NativeCactus.ts +418 -0
- package/src/chat.ts +44 -0
- package/src/grammar.ts +854 -0
- package/src/index.ts +482 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
package com.cactus;
|
|
2
|
+
|
|
3
|
+
import androidx.annotation.NonNull;
|
|
4
|
+
|
|
5
|
+
import com.facebook.react.bridge.Promise;
|
|
6
|
+
import com.facebook.react.bridge.ReactApplicationContext;
|
|
7
|
+
import com.facebook.react.bridge.ReactMethod;
|
|
8
|
+
import com.facebook.react.bridge.ReadableMap;
|
|
9
|
+
import com.facebook.react.bridge.ReadableArray;
|
|
10
|
+
import com.facebook.react.module.annotations.ReactModule;
|
|
11
|
+
|
|
12
|
+
import java.util.HashMap;
|
|
13
|
+
import java.util.Random;
|
|
14
|
+
import java.io.File;
|
|
15
|
+
import java.io.FileInputStream;
|
|
16
|
+
import java.io.PushbackInputStream;
|
|
17
|
+
|
|
18
|
+
@ReactModule(name = Cactus.NAME)
|
|
19
|
+
public class CactusModule extends NativeCactusSpec {
|
|
20
|
+
public static final String NAME = Cactus.NAME;
|
|
21
|
+
|
|
22
|
+
private Cactus cactus = null;
|
|
23
|
+
|
|
24
|
+
public CactusModule(ReactApplicationContext reactContext) {
|
|
25
|
+
super(reactContext);
|
|
26
|
+
cactus = new Cactus(reactContext);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
@Override
|
|
30
|
+
@NonNull
|
|
31
|
+
public String getName() {
|
|
32
|
+
return NAME;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
@ReactMethod
|
|
36
|
+
public void toggleNativeLog(boolean enabled, Promise promise) {
|
|
37
|
+
cactus.toggleNativeLog(enabled, promise);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@ReactMethod
|
|
41
|
+
public void setContextLimit(double limit, Promise promise) {
|
|
42
|
+
cactus.setContextLimit(limit, promise);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
@ReactMethod
|
|
46
|
+
public void modelInfo(final String model, final ReadableArray skip, final Promise promise) {
|
|
47
|
+
cactus.modelInfo(model, skip, promise);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@ReactMethod
|
|
51
|
+
public void initContext(double id, final ReadableMap params, final Promise promise) {
|
|
52
|
+
cactus.initContext(id, params, promise);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
@ReactMethod
|
|
56
|
+
public void getFormattedChat(double id, String messages, String chatTemplate, ReadableMap params, Promise promise) {
|
|
57
|
+
cactus.getFormattedChat(id, messages, chatTemplate, params, promise);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
@ReactMethod
|
|
61
|
+
public void loadSession(double id, String path, Promise promise) {
|
|
62
|
+
cactus.loadSession(id, path, promise);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
@ReactMethod
|
|
66
|
+
public void saveSession(double id, String path, double size, Promise promise) {
|
|
67
|
+
cactus.saveSession(id, path, size, promise);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
@ReactMethod
|
|
71
|
+
public void completion(double id, final ReadableMap params, final Promise promise) {
|
|
72
|
+
cactus.completion(id, params, promise);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
@ReactMethod
|
|
76
|
+
public void stopCompletion(double id, final Promise promise) {
|
|
77
|
+
cactus.stopCompletion(id, promise);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
@ReactMethod
|
|
81
|
+
public void tokenize(double id, final String text, final Promise promise) {
|
|
82
|
+
cactus.tokenize(id, text, promise);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
@ReactMethod
|
|
86
|
+
public void detokenize(double id, final ReadableArray tokens, final Promise promise) {
|
|
87
|
+
cactus.detokenize(id, tokens, promise);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
@ReactMethod
|
|
91
|
+
public void embedding(double id, final String text, final ReadableMap params, final Promise promise) {
|
|
92
|
+
cactus.embedding(id, text, params, promise);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
@ReactMethod
|
|
96
|
+
public void bench(double id, final double pp, final double tg, final double pl, final double nr, final Promise promise) {
|
|
97
|
+
cactus.bench(id, pp, tg, pl, nr, promise);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
@ReactMethod
|
|
101
|
+
public void applyLoraAdapters(double id, final ReadableArray loraAdapters, final Promise promise) {
|
|
102
|
+
cactus.applyLoraAdapters(id, loraAdapters, promise);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
@ReactMethod
|
|
106
|
+
public void removeLoraAdapters(double id, final Promise promise) {
|
|
107
|
+
cactus.removeLoraAdapters(id, promise);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
@ReactMethod
|
|
111
|
+
public void getLoadedLoraAdapters(double id, final Promise promise) {
|
|
112
|
+
cactus.getLoadedLoraAdapters(id, promise);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
@ReactMethod
|
|
116
|
+
public void releaseContext(double id, Promise promise) {
|
|
117
|
+
cactus.releaseContext(id, promise);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
@ReactMethod
|
|
121
|
+
public void releaseAllContexts(Promise promise) {
|
|
122
|
+
cactus.releaseAllContexts(promise);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
package com.cactus;
|
|
2
|
+
|
|
3
|
+
import androidx.annotation.NonNull;
|
|
4
|
+
|
|
5
|
+
import com.facebook.react.bridge.Promise;
|
|
6
|
+
import com.facebook.react.bridge.ReactApplicationContext;
|
|
7
|
+
import com.facebook.react.bridge.ReactContextBaseJavaModule;
|
|
8
|
+
import com.facebook.react.bridge.ReactMethod;
|
|
9
|
+
import com.facebook.react.bridge.ReadableMap;
|
|
10
|
+
import com.facebook.react.bridge.ReadableArray;
|
|
11
|
+
import com.facebook.react.module.annotations.ReactModule;
|
|
12
|
+
|
|
13
|
+
import java.util.HashMap;
|
|
14
|
+
import java.util.Random;
|
|
15
|
+
import java.io.File;
|
|
16
|
+
import java.io.FileInputStream;
|
|
17
|
+
import java.io.PushbackInputStream;
|
|
18
|
+
|
|
19
|
+
@ReactModule(name = Cactus.NAME)
|
|
20
|
+
public class CactusModule extends ReactContextBaseJavaModule {
|
|
21
|
+
public static final String NAME = Cactus.NAME;
|
|
22
|
+
|
|
23
|
+
private Cactus cactus = null;
|
|
24
|
+
|
|
25
|
+
public CactusModule(ReactApplicationContext reactContext) {
|
|
26
|
+
super(reactContext);
|
|
27
|
+
cactus = new Cactus(reactContext);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
@Override
|
|
31
|
+
@NonNull
|
|
32
|
+
public String getName() {
|
|
33
|
+
return NAME;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@ReactMethod
|
|
37
|
+
public void toggleNativeLog(boolean enabled, Promise promise) {
|
|
38
|
+
cactus.toggleNativeLog(enabled, promise);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@ReactMethod
|
|
42
|
+
public void setContextLimit(double limit, Promise promise) {
|
|
43
|
+
cactus.setContextLimit(limit, promise);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
@ReactMethod
|
|
47
|
+
public void modelInfo(final String model, final ReadableArray skip, final Promise promise) {
|
|
48
|
+
cactus.modelInfo(model, skip, promise);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@ReactMethod
|
|
52
|
+
public void initContext(double id, final ReadableMap params, final Promise promise) {
|
|
53
|
+
cactus.initContext(id, params, promise);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
@ReactMethod
|
|
57
|
+
public void getFormattedChat(double id, String messages, String chatTemplate, ReadableMap params, Promise promise) {
|
|
58
|
+
cactus.getFormattedChat(id, messages, chatTemplate, params, promise);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
@ReactMethod
|
|
62
|
+
public void loadSession(double id, String path, Promise promise) {
|
|
63
|
+
cactus.loadSession(id, path, promise);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
@ReactMethod
|
|
67
|
+
public void saveSession(double id, String path, int size, Promise promise) {
|
|
68
|
+
cactus.saveSession(id, path, size, promise);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
@ReactMethod
|
|
72
|
+
public void completion(double id, final ReadableMap params, final Promise promise) {
|
|
73
|
+
cactus.completion(id, params, promise);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
@ReactMethod
|
|
77
|
+
public void stopCompletion(double id, final Promise promise) {
|
|
78
|
+
cactus.stopCompletion(id, promise);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
@ReactMethod
|
|
82
|
+
public void tokenize(double id, final String text, final Promise promise) {
|
|
83
|
+
cactus.tokenize(id, text, promise);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
@ReactMethod
|
|
87
|
+
public void detokenize(double id, final ReadableArray tokens, final Promise promise) {
|
|
88
|
+
cactus.detokenize(id, tokens, promise);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
@ReactMethod
|
|
92
|
+
public void embedding(double id, final String text, final ReadableMap params, final Promise promise) {
|
|
93
|
+
cactus.embedding(id, text, params, promise);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
@ReactMethod
|
|
97
|
+
public void bench(double id, final double pp, final double tg, final double pl, final double nr, final Promise promise) {
|
|
98
|
+
cactus.bench(id, pp, tg, pl, nr, promise);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
@ReactMethod
|
|
102
|
+
public void applyLoraAdapters(double id, final ReadableArray loraAdapters, final Promise promise) {
|
|
103
|
+
cactus.applyLoraAdapters(id, loraAdapters, promise);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
@ReactMethod
|
|
107
|
+
public void removeLoraAdapters(double id, final Promise promise) {
|
|
108
|
+
cactus.removeLoraAdapters(id, promise);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
@ReactMethod
|
|
112
|
+
public void getLoadedLoraAdapters(double id, final Promise promise) {
|
|
113
|
+
cactus.getLoadedLoraAdapters(id, promise);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
@ReactMethod
|
|
117
|
+
public void releaseContext(double id, Promise promise) {
|
|
118
|
+
cactus.releaseContext(id, promise);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
@ReactMethod
|
|
122
|
+
public void releaseAllContexts(Promise promise) {
|
|
123
|
+
cactus.releaseAllContexts(promise);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
require "json"
|
|
2
|
+
|
|
3
|
+
package = JSON.parse(File.read(File.join(__dir__, "package.json")))
|
|
4
|
+
base_ld_flags = "-framework Accelerate -framework Foundation -framework Metal -framework MetalKit"
|
|
5
|
+
base_compiler_flags = "-fno-objc-arc -DLM_GGML_USE_CPU -DLM_GGML_USE_ACCELERATE -Wno-shorten-64-to-32"
|
|
6
|
+
|
|
7
|
+
if ENV["CACTUS_DISABLE_METAL"] != "1" then
|
|
8
|
+
base_compiler_flags += " -DLM_GGML_USE_METAL -DLM_GGML_METAL_USE_BF16" # -DLM_GGML_METAL_NDEBUG
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# Use base_optimizer_flags = "" for debug builds
|
|
12
|
+
# base_optimizer_flags = ""
|
|
13
|
+
base_optimizer_flags = "-O3 -DNDEBUG"
|
|
14
|
+
|
|
15
|
+
# We always use the local ios directory since we're now copying the files
|
|
16
|
+
ios_path = 'ios'
|
|
17
|
+
|
|
18
|
+
Pod::Spec.new do |s|
|
|
19
|
+
s.name = "cactus-react-native"
|
|
20
|
+
s.version = package["version"]
|
|
21
|
+
s.summary = package["description"]
|
|
22
|
+
s.homepage = package["homepage"]
|
|
23
|
+
s.license = package["license"]
|
|
24
|
+
s.authors = package["author"]
|
|
25
|
+
|
|
26
|
+
s.platforms = { :ios => "13.0", :tvos => "13.0" }
|
|
27
|
+
s.source = { :git => "https://github.com/cactus-compute/cactus.git", :tag => "#{s.version}" }
|
|
28
|
+
|
|
29
|
+
s.source_files = "#{ios_path}/**/*.{h,m,mm}"
|
|
30
|
+
s.vendored_frameworks = "#{ios_path}/cactus.xcframework"
|
|
31
|
+
|
|
32
|
+
s.dependency "React-Core"
|
|
33
|
+
|
|
34
|
+
s.compiler_flags = base_compiler_flags
|
|
35
|
+
s.pod_target_xcconfig = {
|
|
36
|
+
"OTHER_LDFLAGS" => base_ld_flags,
|
|
37
|
+
"OTHER_CFLAGS" => base_optimizer_flags,
|
|
38
|
+
"OTHER_CPLUSPLUSFLAGS" => base_optimizer_flags + " -std=c++17"
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
# Don't install the dependencies when we run `pod install` in the old architecture.
|
|
42
|
+
if ENV['RCT_NEW_ARCH_ENABLED'] == '1' then
|
|
43
|
+
install_modules_dependencies(s)
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
cmake_minimum_required(VERSION 3.16)
|
|
2
|
+
project(cactus VERSION 1.0.0 LANGUAGES CXX C)
|
|
3
|
+
|
|
4
|
+
set(CMAKE_CXX_STANDARD 17)
|
|
5
|
+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
6
|
+
|
|
7
|
+
# iOS specific settings
|
|
8
|
+
set(CMAKE_OSX_DEPLOYMENT_TARGET 13.0)
|
|
9
|
+
set(CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE NO)
|
|
10
|
+
|
|
11
|
+
# Dependencies and compile options
|
|
12
|
+
add_definitions(
|
|
13
|
+
-DNDEBUG
|
|
14
|
+
-DO3
|
|
15
|
+
-DLM_GGML_USE_CPU
|
|
16
|
+
-DLM_GGML_USE_ACCELERATE
|
|
17
|
+
-DLM_GGML_USE_METAL
|
|
18
|
+
-DLM_GGML_METAL_USE_BF16
|
|
19
|
+
)
|
|
20
|
+
|
|
21
|
+
# Set the source directory to the cactus directory
|
|
22
|
+
set(SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../cactus)
|
|
23
|
+
|
|
24
|
+
# Define public headers
|
|
25
|
+
set(PUBLIC_HEADERS
|
|
26
|
+
${SOURCE_DIR}/cactus.h
|
|
27
|
+
${SOURCE_DIR}/llama.h
|
|
28
|
+
${SOURCE_DIR}/llama-impl.h
|
|
29
|
+
${SOURCE_DIR}/ggml.h
|
|
30
|
+
)
|
|
31
|
+
|
|
32
|
+
# Create library target
|
|
33
|
+
add_library(cactus SHARED
|
|
34
|
+
${SOURCE_DIR}/ggml.c
|
|
35
|
+
${SOURCE_DIR}/ggml-alloc.c
|
|
36
|
+
${SOURCE_DIR}/ggml-backend.cpp
|
|
37
|
+
${SOURCE_DIR}/ggml-backend-reg.cpp
|
|
38
|
+
${SOURCE_DIR}/ggml-cpu.c
|
|
39
|
+
${SOURCE_DIR}/ggml-cpu.cpp
|
|
40
|
+
${SOURCE_DIR}/ggml-cpu-aarch64.cpp
|
|
41
|
+
${SOURCE_DIR}/ggml-cpu-quants.c
|
|
42
|
+
${SOURCE_DIR}/ggml-cpu-traits.cpp
|
|
43
|
+
${SOURCE_DIR}/ggml-metal.m
|
|
44
|
+
${SOURCE_DIR}/ggml-opt.cpp
|
|
45
|
+
${SOURCE_DIR}/ggml-threading.cpp
|
|
46
|
+
${SOURCE_DIR}/ggml-quants.c
|
|
47
|
+
${SOURCE_DIR}/gguf.cpp
|
|
48
|
+
${SOURCE_DIR}/log.cpp
|
|
49
|
+
${SOURCE_DIR}/llama-impl.cpp
|
|
50
|
+
${SOURCE_DIR}/llama-grammar.cpp
|
|
51
|
+
${SOURCE_DIR}/llama-sampling.cpp
|
|
52
|
+
${SOURCE_DIR}/llama-vocab.cpp
|
|
53
|
+
${SOURCE_DIR}/llama-adapter.cpp
|
|
54
|
+
${SOURCE_DIR}/llama-chat.cpp
|
|
55
|
+
${SOURCE_DIR}/llama-context.cpp
|
|
56
|
+
${SOURCE_DIR}/llama-kv-cache.cpp
|
|
57
|
+
${SOURCE_DIR}/llama-arch.cpp
|
|
58
|
+
${SOURCE_DIR}/llama-batch.cpp
|
|
59
|
+
${SOURCE_DIR}/llama-cparams.cpp
|
|
60
|
+
${SOURCE_DIR}/llama-hparams.cpp
|
|
61
|
+
${SOURCE_DIR}/llama.cpp
|
|
62
|
+
${SOURCE_DIR}/llama-model.cpp
|
|
63
|
+
${SOURCE_DIR}/llama-model-loader.cpp
|
|
64
|
+
${SOURCE_DIR}/llama-mmap.cpp
|
|
65
|
+
${SOURCE_DIR}/llama-vocab.cpp
|
|
66
|
+
${SOURCE_DIR}/llama-memory.cpp
|
|
67
|
+
${SOURCE_DIR}/llama-io.cpp
|
|
68
|
+
${SOURCE_DIR}/llama-graph.cpp
|
|
69
|
+
${SOURCE_DIR}/sampling.cpp
|
|
70
|
+
${SOURCE_DIR}/unicode-data.cpp
|
|
71
|
+
${SOURCE_DIR}/unicode.cpp
|
|
72
|
+
${SOURCE_DIR}/sgemm.cpp
|
|
73
|
+
${SOURCE_DIR}/common.cpp
|
|
74
|
+
${SOURCE_DIR}/chat.cpp
|
|
75
|
+
${SOURCE_DIR}/json-schema-to-grammar.cpp
|
|
76
|
+
${SOURCE_DIR}/minja/minja.hpp
|
|
77
|
+
${SOURCE_DIR}/minja/chat-template.hpp
|
|
78
|
+
${SOURCE_DIR}/json.hpp
|
|
79
|
+
${SOURCE_DIR}/amx/amx.cpp
|
|
80
|
+
${SOURCE_DIR}/amx/mmq.cpp
|
|
81
|
+
${SOURCE_DIR}/cactus.cpp
|
|
82
|
+
)
|
|
83
|
+
|
|
84
|
+
# Setup include directories, use the cactus directory
|
|
85
|
+
target_include_directories(cactus
|
|
86
|
+
PUBLIC
|
|
87
|
+
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../cactus>
|
|
88
|
+
$<INSTALL_INTERFACE:include>
|
|
89
|
+
)
|
|
90
|
+
|
|
91
|
+
# Link required frameworks
|
|
92
|
+
target_link_libraries(cactus PRIVATE
|
|
93
|
+
"-framework Accelerate"
|
|
94
|
+
"-framework Foundation"
|
|
95
|
+
"-framework Metal"
|
|
96
|
+
"-framework MetalKit"
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
# Set properties for framework
|
|
100
|
+
set_target_properties(cactus PROPERTIES
|
|
101
|
+
MACOSX_FRAMEWORK_IDENTIFIER "com.cactus"
|
|
102
|
+
MACOSX_FRAMEWORK_BUNDLE_VERSION 1.0.0
|
|
103
|
+
MACOSX_FRAMEWORK_SHORT_VERSION_STRING 1.0.0
|
|
104
|
+
FRAMEWORK TRUE
|
|
105
|
+
FRAMEWORK_VERSION 1.0.0
|
|
106
|
+
VERSION 1.0.0
|
|
107
|
+
PUBLIC_HEADER "${PUBLIC_HEADERS}"
|
|
108
|
+
XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC NO
|
|
109
|
+
)
|