Comments (5)
not sure if i want to add support for that to annoy – strings probably aren't enough, and then you need more complicated data structures etc
from annoy.
byte strings are enough.
from annoy.
maybe use http://www.h5py.org/ ?
from annoy.
I for one wouldn't like Annoy to move toward doubling as a datastore. I really like Annoy's current clear, targeted focus.
@malthe , there are many lightweight ways to supplement the raw ids with additional metadata: built-in dict
, built-in shelve
/anydbm
, sqlitedict, numpy & mmap...
from annoy.
Definitely. Right now I just do it like this:
with open("index.map", "w") as f:
for i, j, vector in items:
u.add_item(i, vector)
f.write(pack('<L', j))
This way I can mmap
, or simply seek directly to the vector id – in this example j
– from a vector id.
But perhaps Annoy could grow an API to load data from a stream. This way I can wrap the tree data in my own format and only have a single file on disk.
from annoy.
Related Issues (20)
- Memory Leak in Annoy (get_nns_by_vector)? HOT 8
- Annoy Object Not Pickle'able HOT 1
- Add sample weights to distance metric? HOT 3
- Source distribution not availabe for 1.17.2 version HOT 2
- Unable to inherit the AnnoyIndex class HOT 2
- doesn't work correctly if torch tensor is input. But also doesn't throw error. Pls add an assertion that this only takes np arrays not torch tensors HOT 2
- _Vector should use position-only parameter for the index HOT 3
- How do you reduce a vector to 2 coordinates HOT 1
- [Distance] What did I do wrong?
- [MSVC] Annoy failed to run test on Windows HOT 1
- Some segment faults HOT 1
- Regarding updating an existing ANNOY model HOT 2
- Anyone tried storing trees and nodes in DynamoDB? HOT 1
- Is there any workaround to be able to use the Chebyshev distance with this library? HOT 1
- from annoy import AnnoyIndex
- Annoy build failed in MSVC x86 mode
- Using a built Annoy tree in a different device HOT 1
- ? HOT 1
- problem building with python3.12 HOT 1
- Annoy fails to build on Windows due to Microsoft Visual C++ 14.0
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from annoy.