cactus-react-native 1.5.0 → 1.10.0
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/Cactus.podspec +1 -1
- package/README.md +347 -241
- package/android/CMakeLists.txt +24 -5
- package/android/src/main/jniLibs/arm64-v8a/libcactus.a +0 -0
- package/android/src/main/jniLibs/arm64-v8a/libcurl.a +0 -0
- package/android/src/main/jniLibs/arm64-v8a/libmbedcrypto.a +0 -0
- package/android/src/main/jniLibs/arm64-v8a/libmbedtls.a +0 -0
- package/android/src/main/jniLibs/arm64-v8a/libmbedx509.a +0 -0
- package/cpp/HybridCactus.cpp +197 -117
- package/cpp/HybridCactus.hpp +18 -9
- package/cpp/cactus_ffi.h +66 -42
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/cactus.h +0 -1
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/cactus_cloud.h +48 -0
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/cactus_ffi.h +66 -42
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/cactus_utils.h +568 -135
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/engine.h +148 -17
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/graph.h +145 -36
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/kernel.h +187 -6
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/kernel_utils.h +49 -149
- 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-simulator/cactus.framework/Headers/cactus.h +0 -1
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/Headers/cactus_cloud.h +48 -0
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/Headers/cactus_ffi.h +66 -42
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/Headers/cactus_utils.h +568 -135
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/Headers/engine.h +148 -17
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/Headers/graph.h +145 -36
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/Headers/kernel.h +187 -6
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/Headers/kernel_utils.h +49 -149
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/Info.plist +0 -0
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/_CodeSignature/CodeResources +1 -1
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/cactus +0 -0
- package/lib/module/classes/CactusLM.js +16 -49
- package/lib/module/classes/CactusLM.js.map +1 -1
- package/lib/module/classes/CactusSTT.js +41 -75
- package/lib/module/classes/CactusSTT.js.map +1 -1
- package/lib/module/classes/CactusVAD.js +95 -0
- package/lib/module/classes/CactusVAD.js.map +1 -0
- package/lib/module/hooks/useCactusLM.js +10 -11
- package/lib/module/hooks/useCactusLM.js.map +1 -1
- package/lib/module/hooks/useCactusSTT.js +23 -62
- package/lib/module/hooks/useCactusSTT.js.map +1 -1
- package/lib/module/hooks/useCactusVAD.js +171 -0
- package/lib/module/hooks/useCactusVAD.js.map +1 -0
- package/lib/module/index.js +2 -3
- package/lib/module/index.js.map +1 -1
- package/lib/module/modelRegistry.js +52 -0
- package/lib/module/modelRegistry.js.map +1 -0
- package/lib/module/native/Cactus.js +103 -23
- package/lib/module/native/Cactus.js.map +1 -1
- package/lib/module/native/CactusIndex.js.map +1 -1
- package/lib/module/native/index.js +0 -3
- package/lib/module/native/index.js.map +1 -1
- package/lib/module/types/CactusVAD.js +4 -0
- package/lib/module/{specs/CactusUtil.nitro.js.map → types/CactusVAD.js.map} +1 -1
- package/lib/typescript/src/classes/CactusLM.d.ts +5 -7
- package/lib/typescript/src/classes/CactusLM.d.ts.map +1 -1
- package/lib/typescript/src/classes/CactusSTT.d.ts +9 -12
- package/lib/typescript/src/classes/CactusSTT.d.ts.map +1 -1
- package/lib/typescript/src/classes/CactusVAD.d.ts +20 -0
- package/lib/typescript/src/classes/CactusVAD.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useCactusLM.d.ts +2 -2
- package/lib/typescript/src/hooks/useCactusLM.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useCactusSTT.d.ts +6 -8
- package/lib/typescript/src/hooks/useCactusSTT.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useCactusVAD.d.ts +15 -0
- package/lib/typescript/src/hooks/useCactusVAD.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +7 -5
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/modelRegistry.d.ts +5 -0
- package/lib/typescript/src/modelRegistry.d.ts.map +1 -0
- package/lib/typescript/src/native/Cactus.d.ts +13 -11
- package/lib/typescript/src/native/Cactus.d.ts.map +1 -1
- package/lib/typescript/src/native/CactusIndex.d.ts +2 -2
- package/lib/typescript/src/native/CactusIndex.d.ts.map +1 -1
- package/lib/typescript/src/native/index.d.ts +0 -3
- package/lib/typescript/src/native/index.d.ts.map +1 -1
- package/lib/typescript/src/specs/Cactus.nitro.d.ts +7 -6
- package/lib/typescript/src/specs/Cactus.nitro.d.ts.map +1 -1
- package/lib/typescript/src/types/CactusIndex.d.ts +2 -2
- package/lib/typescript/src/types/CactusIndex.d.ts.map +1 -1
- package/lib/typescript/src/types/CactusLM.d.ts +19 -11
- package/lib/typescript/src/types/CactusLM.d.ts.map +1 -1
- package/lib/typescript/src/types/CactusSTT.d.ts +44 -12
- package/lib/typescript/src/types/CactusSTT.d.ts.map +1 -1
- package/lib/typescript/src/types/CactusVAD.d.ts +34 -0
- package/lib/typescript/src/types/CactusVAD.d.ts.map +1 -0
- package/lib/typescript/src/types/common.d.ts +1 -6
- package/lib/typescript/src/types/common.d.ts.map +1 -1
- package/nitro.json +0 -11
- package/nitrogen/generated/android/cactus+autolinking.cmake +0 -5
- package/nitrogen/generated/android/cactusOnLoad.cpp +0 -30
- package/nitrogen/generated/ios/Cactus-Swift-Cxx-Bridge.cpp +0 -50
- package/nitrogen/generated/ios/Cactus-Swift-Cxx-Bridge.hpp +9 -147
- package/nitrogen/generated/ios/Cactus-Swift-Cxx-Umbrella.hpp +0 -13
- package/nitrogen/generated/ios/CactusAutolinking.mm +0 -26
- package/nitrogen/generated/ios/CactusAutolinking.swift +0 -30
- package/nitrogen/generated/shared/c++/HybridCactusSpec.cpp +5 -4
- package/nitrogen/generated/shared/c++/HybridCactusSpec.hpp +7 -6
- package/package.json +3 -3
- package/src/classes/CactusLM.ts +18 -65
- package/src/classes/CactusSTT.ts +52 -90
- package/src/classes/CactusVAD.ts +129 -0
- package/src/hooks/useCactusLM.ts +14 -17
- package/src/hooks/useCactusSTT.ts +47 -98
- package/src/hooks/useCactusVAD.ts +215 -0
- package/src/index.tsx +21 -12
- package/src/modelRegistry.ts +65 -0
- package/src/native/Cactus.ts +131 -38
- package/src/native/CactusIndex.ts +2 -2
- package/src/native/index.ts +0 -3
- package/src/specs/Cactus.nitro.ts +16 -7
- package/src/types/CactusIndex.ts +2 -2
- package/src/types/CactusLM.ts +19 -11
- package/src/types/CactusSTT.ts +47 -13
- package/src/types/CactusVAD.ts +39 -0
- package/src/types/common.ts +1 -6
- package/android/src/main/java/com/margelo/nitro/cactus/HybridCactusCrypto.kt +0 -46
- package/android/src/main/java/com/margelo/nitro/cactus/HybridCactusDeviceInfo.kt +0 -27
- package/android/src/main/jniLibs/arm64-v8a/libcactus_util.a +0 -0
- package/cpp/HybridCactusUtil.cpp +0 -47
- package/cpp/HybridCactusUtil.hpp +0 -27
- package/cpp/cactus_util.h +0 -25
- package/ios/HybridCactusCrypto.swift +0 -37
- package/ios/HybridCactusDeviceInfo.swift +0 -32
- package/ios/cactus.xcframework/ios-arm64/cactus.framework/Headers/cactus_telemetry.h +0 -656
- package/ios/cactus.xcframework/ios-arm64-simulator/cactus.framework/Headers/cactus_telemetry.h +0 -656
- package/ios/cactus_util.xcframework/Info.plist +0 -39
- package/ios/cactus_util.xcframework/ios-arm64/cactus_util.framework/Headers/cactus_util.h +0 -25
- package/ios/cactus_util.xcframework/ios-arm64/cactus_util.framework/Headers/database.h +0 -27
- package/ios/cactus_util.xcframework/ios-arm64/cactus_util.framework/Headers/ios_utils.h +0 -10
- package/ios/cactus_util.xcframework/ios-arm64/cactus_util.framework/Headers/logging.h +0 -25
- package/ios/cactus_util.xcframework/ios-arm64/cactus_util.framework/Info.plist +0 -0
- package/ios/cactus_util.xcframework/ios-arm64/cactus_util.framework/cactus_util +0 -0
- package/ios/cactus_util.xcframework/ios-arm64-simulator/cactus_util.framework/Headers/cactus_util.h +0 -25
- package/ios/cactus_util.xcframework/ios-arm64-simulator/cactus_util.framework/Headers/database.h +0 -27
- package/ios/cactus_util.xcframework/ios-arm64-simulator/cactus_util.framework/Headers/ios_utils.h +0 -10
- package/ios/cactus_util.xcframework/ios-arm64-simulator/cactus_util.framework/Headers/logging.h +0 -25
- package/ios/cactus_util.xcframework/ios-arm64-simulator/cactus_util.framework/Info.plist +0 -0
- package/ios/cactus_util.xcframework/ios-arm64-simulator/cactus_util.framework/_CodeSignature/CodeResources +0 -135
- package/ios/cactus_util.xcframework/ios-arm64-simulator/cactus_util.framework/cactus_util +0 -0
- package/lib/module/api/Database.js +0 -45
- package/lib/module/api/Database.js.map +0 -1
- package/lib/module/api/RemoteLM.js +0 -201
- package/lib/module/api/RemoteLM.js.map +0 -1
- package/lib/module/config/CactusConfig.js +0 -12
- package/lib/module/config/CactusConfig.js.map +0 -1
- package/lib/module/models.js +0 -336
- package/lib/module/models.js.map +0 -1
- package/lib/module/native/CactusCrypto.js +0 -10
- package/lib/module/native/CactusCrypto.js.map +0 -1
- package/lib/module/native/CactusDeviceInfo.js +0 -13
- package/lib/module/native/CactusDeviceInfo.js.map +0 -1
- package/lib/module/native/CactusUtil.js +0 -36
- package/lib/module/native/CactusUtil.js.map +0 -1
- package/lib/module/specs/CactusCrypto.nitro.js +0 -4
- package/lib/module/specs/CactusCrypto.nitro.js.map +0 -1
- package/lib/module/specs/CactusDeviceInfo.nitro.js +0 -4
- package/lib/module/specs/CactusDeviceInfo.nitro.js.map +0 -1
- package/lib/module/specs/CactusUtil.nitro.js +0 -4
- package/lib/module/telemetry/Telemetry.js +0 -154
- package/lib/module/telemetry/Telemetry.js.map +0 -1
- package/lib/typescript/src/api/Database.d.ts +0 -12
- package/lib/typescript/src/api/Database.d.ts.map +0 -1
- package/lib/typescript/src/api/RemoteLM.d.ts +0 -14
- package/lib/typescript/src/api/RemoteLM.d.ts.map +0 -1
- package/lib/typescript/src/config/CactusConfig.d.ts +0 -7
- package/lib/typescript/src/config/CactusConfig.d.ts.map +0 -1
- package/lib/typescript/src/models.d.ts +0 -6
- package/lib/typescript/src/models.d.ts.map +0 -1
- package/lib/typescript/src/native/CactusCrypto.d.ts +0 -5
- package/lib/typescript/src/native/CactusCrypto.d.ts.map +0 -1
- package/lib/typescript/src/native/CactusDeviceInfo.d.ts +0 -7
- package/lib/typescript/src/native/CactusDeviceInfo.d.ts.map +0 -1
- package/lib/typescript/src/native/CactusUtil.d.ts +0 -6
- package/lib/typescript/src/native/CactusUtil.d.ts.map +0 -1
- package/lib/typescript/src/specs/CactusCrypto.nitro.d.ts +0 -8
- package/lib/typescript/src/specs/CactusCrypto.nitro.d.ts.map +0 -1
- package/lib/typescript/src/specs/CactusDeviceInfo.nitro.d.ts +0 -16
- package/lib/typescript/src/specs/CactusDeviceInfo.nitro.d.ts.map +0 -1
- package/lib/typescript/src/specs/CactusUtil.nitro.d.ts +0 -10
- package/lib/typescript/src/specs/CactusUtil.nitro.d.ts.map +0 -1
- package/lib/typescript/src/telemetry/Telemetry.d.ts +0 -34
- package/lib/typescript/src/telemetry/Telemetry.d.ts.map +0 -1
- package/nitrogen/generated/android/c++/JDeviceInfo.hpp +0 -74
- package/nitrogen/generated/android/c++/JHybridCactusCryptoSpec.cpp +0 -65
- package/nitrogen/generated/android/c++/JHybridCactusCryptoSpec.hpp +0 -65
- package/nitrogen/generated/android/c++/JHybridCactusDeviceInfoSpec.cpp +0 -85
- package/nitrogen/generated/android/c++/JHybridCactusDeviceInfoSpec.hpp +0 -66
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/cactus/DeviceInfo.kt +0 -50
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/cactus/HybridCactusCryptoSpec.kt +0 -58
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/cactus/HybridCactusDeviceInfoSpec.kt +0 -62
- package/nitrogen/generated/ios/c++/HybridCactusCryptoSpecSwift.cpp +0 -11
- package/nitrogen/generated/ios/c++/HybridCactusCryptoSpecSwift.hpp +0 -77
- package/nitrogen/generated/ios/c++/HybridCactusDeviceInfoSpecSwift.cpp +0 -11
- package/nitrogen/generated/ios/c++/HybridCactusDeviceInfoSpecSwift.hpp +0 -88
- package/nitrogen/generated/ios/swift/DeviceInfo.swift +0 -98
- package/nitrogen/generated/ios/swift/Func_void_DeviceInfo.swift +0 -47
- package/nitrogen/generated/ios/swift/Func_void_std__optional_std__string_.swift +0 -54
- package/nitrogen/generated/ios/swift/HybridCactusCryptoSpec.swift +0 -57
- package/nitrogen/generated/ios/swift/HybridCactusCryptoSpec_cxx.swift +0 -139
- package/nitrogen/generated/ios/swift/HybridCactusDeviceInfoSpec.swift +0 -58
- package/nitrogen/generated/ios/swift/HybridCactusDeviceInfoSpec_cxx.swift +0 -164
- package/nitrogen/generated/shared/c++/DeviceInfo.hpp +0 -92
- package/nitrogen/generated/shared/c++/HybridCactusCryptoSpec.cpp +0 -21
- package/nitrogen/generated/shared/c++/HybridCactusCryptoSpec.hpp +0 -63
- package/nitrogen/generated/shared/c++/HybridCactusDeviceInfoSpec.cpp +0 -22
- package/nitrogen/generated/shared/c++/HybridCactusDeviceInfoSpec.hpp +0 -67
- package/nitrogen/generated/shared/c++/HybridCactusUtilSpec.cpp +0 -23
- package/nitrogen/generated/shared/c++/HybridCactusUtilSpec.hpp +0 -66
- package/src/api/Database.ts +0 -55
- package/src/api/RemoteLM.ts +0 -273
- package/src/config/CactusConfig.ts +0 -11
- package/src/models.ts +0 -344
- package/src/native/CactusCrypto.ts +0 -11
- package/src/native/CactusDeviceInfo.ts +0 -18
- package/src/native/CactusUtil.ts +0 -43
- package/src/specs/CactusCrypto.nitro.ts +0 -6
- package/src/specs/CactusDeviceInfo.nitro.ts +0 -15
- package/src/specs/CactusUtil.nitro.ts +0 -8
- package/src/telemetry/Telemetry.ts +0 -236
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
#include <stdbool.h>
|
|
7
7
|
|
|
8
8
|
#if __GNUC__ >= 4
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
#define CACTUS_FFI_EXPORT __attribute__((visibility("default")))
|
|
10
|
+
#define CACTUS_FFI_LOCAL __attribute__((visibility("hidden")))
|
|
11
11
|
#else
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
#define CACTUS_FFI_EXPORT
|
|
13
|
+
#define CACTUS_FFI_LOCAL
|
|
14
14
|
#endif
|
|
15
15
|
|
|
16
16
|
#ifdef __cplusplus
|
|
@@ -18,20 +18,30 @@ extern "C" {
|
|
|
18
18
|
#endif
|
|
19
19
|
|
|
20
20
|
typedef void* cactus_model_t;
|
|
21
|
+
typedef void* cactus_index_t;
|
|
22
|
+
typedef void* cactus_stream_transcribe_t;
|
|
21
23
|
|
|
22
24
|
typedef void (*cactus_token_callback)(const char* token, uint32_t token_id, void* user_data);
|
|
23
25
|
|
|
24
|
-
CACTUS_FFI_EXPORT cactus_model_t cactus_init(
|
|
26
|
+
CACTUS_FFI_EXPORT cactus_model_t cactus_init(
|
|
27
|
+
const char* model_path,
|
|
28
|
+
const char* corpus_dir, // optional: NULL if no RAG corpus
|
|
29
|
+
bool cache_index // false = always rebuild index, true = load cached if available
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
CACTUS_FFI_EXPORT void cactus_destroy(cactus_model_t model);
|
|
33
|
+
CACTUS_FFI_EXPORT void cactus_reset(cactus_model_t model);
|
|
34
|
+
CACTUS_FFI_EXPORT void cactus_stop(cactus_model_t model);
|
|
25
35
|
|
|
26
36
|
CACTUS_FFI_EXPORT int cactus_complete(
|
|
27
37
|
cactus_model_t model,
|
|
28
38
|
const char* messages_json,
|
|
29
39
|
char* response_buffer,
|
|
30
40
|
size_t buffer_size,
|
|
31
|
-
const char* options_json,
|
|
32
|
-
const char* tools_json,
|
|
33
|
-
cactus_token_callback callback,
|
|
34
|
-
void* user_data
|
|
41
|
+
const char* options_json, // optional
|
|
42
|
+
const char* tools_json, // optional
|
|
43
|
+
cactus_token_callback callback, // optional
|
|
44
|
+
void* user_data // optional
|
|
35
45
|
);
|
|
36
46
|
|
|
37
47
|
CACTUS_FFI_EXPORT int cactus_tokenize(
|
|
@@ -53,45 +63,48 @@ CACTUS_FFI_EXPORT int cactus_score_window(
|
|
|
53
63
|
size_t buffer_size
|
|
54
64
|
);
|
|
55
65
|
|
|
56
|
-
|
|
57
66
|
CACTUS_FFI_EXPORT int cactus_transcribe(
|
|
58
67
|
cactus_model_t model,
|
|
59
|
-
const char* audio_file_path,
|
|
68
|
+
const char* audio_file_path, // NULL if using pcm_buffer
|
|
60
69
|
const char* prompt,
|
|
61
70
|
char* response_buffer,
|
|
62
71
|
size_t buffer_size,
|
|
63
|
-
const char* options_json,
|
|
64
|
-
cactus_token_callback callback,
|
|
65
|
-
void* user_data,
|
|
66
|
-
const uint8_t* pcm_buffer,
|
|
72
|
+
const char* options_json, // optional
|
|
73
|
+
cactus_token_callback callback, // optional
|
|
74
|
+
void* user_data, // optional
|
|
75
|
+
const uint8_t* pcm_buffer, // NULL if using audio_file_path
|
|
67
76
|
size_t pcm_buffer_size
|
|
68
77
|
);
|
|
69
78
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
const uint8_t* pcm_buffer,
|
|
79
|
+
CACTUS_FFI_EXPORT int cactus_detect_language(
|
|
80
|
+
cactus_model_t model,
|
|
81
|
+
const char* audio_file_path, // NULL if using pcm_buffer
|
|
82
|
+
char* response_buffer,
|
|
83
|
+
size_t buffer_size,
|
|
84
|
+
const char* options_json, // optional
|
|
85
|
+
const uint8_t* pcm_buffer, // NULL if using audio_file_path
|
|
77
86
|
size_t pcm_buffer_size
|
|
78
87
|
);
|
|
79
88
|
|
|
89
|
+
CACTUS_FFI_EXPORT cactus_stream_transcribe_t cactus_stream_transcribe_start(
|
|
90
|
+
cactus_model_t model,
|
|
91
|
+
const char* options_json // optional
|
|
92
|
+
);
|
|
93
|
+
|
|
80
94
|
CACTUS_FFI_EXPORT int cactus_stream_transcribe_process(
|
|
81
95
|
cactus_stream_transcribe_t stream,
|
|
96
|
+
const uint8_t* pcm_buffer,
|
|
97
|
+
size_t pcm_buffer_size,
|
|
82
98
|
char* response_buffer,
|
|
83
|
-
size_t buffer_size
|
|
84
|
-
const char* options_json
|
|
99
|
+
size_t buffer_size
|
|
85
100
|
);
|
|
86
101
|
|
|
87
|
-
CACTUS_FFI_EXPORT int
|
|
102
|
+
CACTUS_FFI_EXPORT int cactus_stream_transcribe_stop(
|
|
88
103
|
cactus_stream_transcribe_t stream,
|
|
89
104
|
char* response_buffer,
|
|
90
105
|
size_t buffer_size
|
|
91
106
|
);
|
|
92
107
|
|
|
93
|
-
CACTUS_FFI_EXPORT void cactus_stream_transcribe_destroy(cactus_stream_transcribe_t stream);
|
|
94
|
-
|
|
95
108
|
CACTUS_FFI_EXPORT int cactus_embed(
|
|
96
109
|
cactus_model_t model,
|
|
97
110
|
const char* text,
|
|
@@ -117,19 +130,24 @@ CACTUS_FFI_EXPORT int cactus_audio_embed(
|
|
|
117
130
|
size_t* embedding_dim
|
|
118
131
|
);
|
|
119
132
|
|
|
120
|
-
CACTUS_FFI_EXPORT
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
133
|
+
CACTUS_FFI_EXPORT int cactus_vad(
|
|
134
|
+
cactus_model_t model,
|
|
135
|
+
const char* audio_file_path,
|
|
136
|
+
char* response_buffer,
|
|
137
|
+
size_t buffer_size,
|
|
138
|
+
const char* options_json,
|
|
139
|
+
const uint8_t* pcm_buffer,
|
|
140
|
+
size_t pcm_buffer_size
|
|
141
|
+
);
|
|
129
142
|
|
|
130
|
-
CACTUS_FFI_EXPORT
|
|
143
|
+
CACTUS_FFI_EXPORT int cactus_rag_query(
|
|
144
|
+
cactus_model_t model,
|
|
145
|
+
const char* query,
|
|
146
|
+
char* response_buffer,
|
|
147
|
+
size_t buffer_size,
|
|
148
|
+
size_t top_k
|
|
149
|
+
);
|
|
131
150
|
|
|
132
|
-
typedef void* cactus_index_t;
|
|
133
151
|
|
|
134
152
|
CACTUS_FFI_EXPORT cactus_index_t cactus_index_init(
|
|
135
153
|
const char* index_dir,
|
|
@@ -140,7 +158,7 @@ CACTUS_FFI_EXPORT int cactus_index_add(
|
|
|
140
158
|
cactus_index_t index,
|
|
141
159
|
const int* ids,
|
|
142
160
|
const char** documents,
|
|
143
|
-
const char** metadatas,
|
|
161
|
+
const char** metadatas, // optional: can be NULL
|
|
144
162
|
const float** embeddings,
|
|
145
163
|
size_t count,
|
|
146
164
|
size_t embedding_dim
|
|
@@ -169,7 +187,7 @@ CACTUS_FFI_EXPORT int cactus_index_query(
|
|
|
169
187
|
const float** embeddings,
|
|
170
188
|
size_t embeddings_count,
|
|
171
189
|
size_t embedding_dim,
|
|
172
|
-
const char* options_json,
|
|
190
|
+
const char* options_json, // optional
|
|
173
191
|
int** id_buffers,
|
|
174
192
|
size_t* id_buffer_sizes,
|
|
175
193
|
float** score_buffers,
|
|
@@ -177,11 +195,17 @@ CACTUS_FFI_EXPORT int cactus_index_query(
|
|
|
177
195
|
);
|
|
178
196
|
|
|
179
197
|
CACTUS_FFI_EXPORT int cactus_index_compact(cactus_index_t index);
|
|
180
|
-
|
|
181
198
|
CACTUS_FFI_EXPORT void cactus_index_destroy(cactus_index_t index);
|
|
182
199
|
|
|
200
|
+
CACTUS_FFI_EXPORT const char* cactus_get_last_error(void);
|
|
201
|
+
|
|
202
|
+
CACTUS_FFI_EXPORT void cactus_set_telemetry_environment(const char* framework, const char* cache_location, const char* version);
|
|
203
|
+
CACTUS_FFI_EXPORT void cactus_set_app_id(const char* app_id);
|
|
204
|
+
CACTUS_FFI_EXPORT void cactus_telemetry_flush(void);
|
|
205
|
+
CACTUS_FFI_EXPORT void cactus_telemetry_shutdown(void);
|
|
206
|
+
|
|
183
207
|
#ifdef __cplusplus
|
|
184
208
|
}
|
|
185
209
|
#endif
|
|
186
210
|
|
|
187
|
-
#endif
|
|
211
|
+
#endif // CACTUS_FFI_H
|