Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iotadb-0.0.15.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

iotadb-0.0.15-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

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

Hashes for iotadb-0.0.15.tar.gz
Algorithm Hash digest
SHA256 b49a06e8ca686a3c00a09bc7c024d82afe8aa540648305d110725ab1da361ff8
MD5 b16eb315bc17dd1dcb1b9d3abdb2688e
BLAKE2b-256 121a2e58afb530da3733d0ee97680453f32fc8b5e25b91125a2886240f86e45b

See more details on using hashes here.

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

Hashes for iotadb-0.0.15-py3-none-any.whl
Algorithm Hash digest
SHA256 0f3524a3a1fcebb16a7ce5a5a885580c01aa0e9306aa605f9a9023ed79b99c21
MD5 41fe3ce9d2f9d8c60af20f91c7427ac5
BLAKE2b-256 f54c4bc897d570de74aef1bf7a7ece42e282ddfceb30fb6431e01cce43e84faa

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page