Skip to main content

Bookworm - A LLM-powered bookmark search engine

Project description

bookworm 📖

main PyPI version

LLM-powered bookmark search engine

bookworm allows you to search your locally stored bookmarks using human language.

Install

python -m pip install bookworm_genai

Usage

export OPENAI_API_KEY=

# Run once and then anytime bookmarks across supported browsers changes
bookworm sync

# Ask questions against the bookmark database
bookworm ask

# Ask questions against the bookmark database
# Specify the query when invoking the command
# If you omit this then you will be asked for a query when the tool is running
bookworm ask -q pandas

# Ask questions against the bookmark database and specify the number of results that should come back
bookworm ask -n 1

The sync process currently supports the following configurations:

Operating System Google Chrome Mozilla Firefox Brave Microsoft Edge
Linux
macOS
Windows

Processes

bookworm sync

python -m bookworm sync
graph LR

subgraph Bookmarks
    Chrome(Chrome Bookmarks)
    Brave(Brave Bookmarks)
    Firefox(Firefox Bookmarks)
end

Bookworm(bookworm sync)

EmbeddingsService(Embeddings Service e.g OpenAIEmbeddings)

VectorStore(Vector Store e.g DuckDB)

Chrome -->|load bookmarks|Bookworm
Brave -->|load bookmarks|Bookworm
Firefox -->|load bookmarks|Bookworm

Bookworm -->|vectorize bookmarks|EmbeddingsService-->|store embeddings|VectorStore

bookworm ask

python -m bookworm ask
graph LR

query
Bookworm(bookworm ask)

subgraph _
    LLM(LLM e.g OpenAI)
    VectorStore(Vector Store e.g DuckDB)
end

query -->|user queries for information|Bookworm

Bookworm -->|simularity search|VectorStore -->|send similar docs + user query|LLM
LLM -->|send back response|Bookworm

Developer Setup

# LLMs
export OPENAI_API_KEY=

# Langchain (optional, but useful for debugging)
export LANGCHAIN_API_KEY=
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_PROJECT=bookworm

# Misc (optional)
export LOGGING_LEVEL=INFO

Recommendations:

poetry env use 3.9 # or path to your 3.9 installation

poetry shell
poetry install

bookworm --help

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

bookworm_genai-0.7.0.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

bookworm_genai-0.7.0-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file bookworm_genai-0.7.0.tar.gz.

File metadata

  • Download URL: bookworm_genai-0.7.0.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/6.5.0-1025-azure

File hashes

Hashes for bookworm_genai-0.7.0.tar.gz
Algorithm Hash digest
SHA256 7f8680ce93217c47fec88845ac7593c3b11a605af560328037f433d49eb99d37
MD5 5d9577557c49221cdb7d1644d411ab4c
BLAKE2b-256 55e0337f6b2d8b8e17220783ddc0bf4efb97673a667d0a999c546776685a44f2

See more details on using hashes here.

File details

Details for the file bookworm_genai-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: bookworm_genai-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/6.5.0-1025-azure

File hashes

Hashes for bookworm_genai-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8b9e8cd4ed4ff3d2f381a8ccad70bc42db6e8a1096ea722d87fe32bfa77284c8
MD5 b0f6b0152a77ab02933052b4a9eec3a1
BLAKE2b-256 3261ccd278189c4eb7fada54a9c7e1605344080c02afe1ba4554c65ad61a2534

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