Minimal implementation of a local embedding database
Project description
iota - a minimal local embedding database.
Motivation
WIP
[!IMPORTANT] This project is by no means scalable, but should suffice for smaller projects.
Installation
Install the package via PyPI:
pip install iotadb
Usage
Here is a very simple example:
from iotadb import IotaDB, Document
# Define a list of documents
docs = [
Document(text="That is a happy dog"),
Document(text="That is a very happy person"),
Document(text="Today is a sunny day")
]
# Create a collection
db = IotaDB()
db.create_collection(name="my_collection", documents=docs)
# Query documents within your collection
results = db.search("That is a happy person", return_similarities=True)
for doc, score in results:
print(f"Text: {doc.text}")
print(f"similarity: {score:.3f}\n")
More examples can be found in the /examples directory.
Features
- Simple interface: Easy-to-use API for database operations.
- Lightweight implementation: Minimal resource utilization.
- Local storage: Stores embeddings locally for fast and retrieval.
- Fast Indexing: Efficient embedding indexing for storage and retrieval.
Use cases
- Query with Natural Language: Search for relevant documents using simple natural language queries.
- Contextual Summarization: Integrate documents into LLM contexts like GPT-3 for data-augmented tasks.
- Similarity Search: Find similar items/documents based on their embeddings.
Contributing
Interested in contributing? Head over to the Contribution Guide for more details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file iotadb-0.0.15.tar.gz.
File metadata
- Download URL: iotadb-0.0.15.tar.gz
- Upload date:
- Size: 6.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b49a06e8ca686a3c00a09bc7c024d82afe8aa540648305d110725ab1da361ff8
|
|
| MD5 |
b16eb315bc17dd1dcb1b9d3abdb2688e
|
|
| BLAKE2b-256 |
121a2e58afb530da3733d0ee97680453f32fc8b5e25b91125a2886240f86e45b
|
File details
Details for the file iotadb-0.0.15-py3-none-any.whl.
File metadata
- Download URL: iotadb-0.0.15-py3-none-any.whl
- Upload date:
- Size: 6.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f3524a3a1fcebb16a7ce5a5a885580c01aa0e9306aa605f9a9023ed79b99c21
|
|
| MD5 |
41fe3ce9d2f9d8c60af20f91c7427ac5
|
|
| BLAKE2b-256 |
f54c4bc897d570de74aef1bf7a7ece42e282ddfceb30fb6431e01cce43e84faa
|