You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,8 +7,9 @@
7
7
* Features
8
8
*`instinct-transformer`: New bge-m3 embedding model. Generally speaking, bge-reranker and bge-embedding are still in preview as they are not fast enough for production.
9
9
*`instinct-llm`: New `JinaRerankerModel` for Reranker model API from Jina.ai.
10
-
*`instinct-retrieval`: New `DuckDBBM25Retriever` for BM25 keyword based retriever using DuckDb's built-in function.
10
+
*`instinct-retrieval`: New `DuckDBBM25Retriever` for BM25 keyword based retriever using DuckDB's built-in function.
11
11
* Improvements
12
+
* Move example code to standalone repository: [instinct-cpp-examples](https://github.com/RobinQu/instinct-cpp-examples).
12
13
* Rename for all files for camel-case naming conventions
13
14
* Build system:
14
15
* Fix include paths for internal header files. Now all files are referenced using angle bracket pattern like `#include <instinct/...>`.
Some dependencies are expected to be installed in system, and you should make sure they can be found by Cmake's `find_package` command. These libraries include:
34
-
35
-
* protobuf >= 5.27.0, which brings in `absl` and `googletest` transitively.
36
-
* ICU >= 74.1
37
-
38
-
For example, on macOS you can install them using `brew`:
39
-
40
-
```shell
41
-
brew install protobuf icu4c
24
+
conan create .
42
25
```
43
26
44
-
If you prefer `conda`, which is available in Linux, macOS and Windows:
45
-
46
-
```shell
47
-
conda install -c conda-forge icu protobuf libuuid
48
-
```
27
+
## Quick start
49
28
29
+
In your project's `conanfile.py`, add `instinct-cpp` as requirement. A working example is hosted [here](https://github.com/RobinQu/instinct-cpp-examples/tree/master/quick_start_simple).
50
30
51
-
However, It's recommended to build and install these libraries from source because of following reasons:
31
+
```py
32
+
from conan import ConanFile
33
+
from conan.tools.build import check_min_cppstd
52
34
53
-
1. You can make sure both static and dynamic libraries are available. Some package managers like `brew` only ship dynamic libraries of protobuf so that it may prevent you from linking statically.
54
-
2. Mainstream providers like `apt` and `yum` are shipping very old versions of these libraries in "stable" channel.
35
+
classYourRecipe(ConanFile):
36
+
settings ="os", "compiler", "build_type", "arch"
37
+
generators ="CMakeToolchain", "CMakeDeps"
38
+
39
+
defvalidate(self):
40
+
check_min_cppstd(self, 20)
55
41
56
-
I know it's possible to build a standalone `protobuf` using Cmake's `FetchContent`. But I haven't figured a proper way to make every pieces working together.
42
+
defrequirements(self):
43
+
# toggle off all switches
44
+
# you can turn on for further experiments
45
+
self.requires("instinct-cpp/0.1.5")
46
+
```
57
47
58
-
And then just build and install in common practices. Example to build install to `/tmp/instinct.cpp` with default project settings.
0 commit comments