Bookworm - A LLM-powered bookmark search engine
Project description
bookworm 📖
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:
- Install
pyenv
and ensure build dependencies are installed for your OS. - Install Poetry we will be using environment management below.
poetry env use 3.9 # or path to your 3.9 installation
poetry shell
poetry install
bookworm --help
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
bookworm_genai-0.7.0.tar.gz
(9.3 kB
view details)
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7f8680ce93217c47fec88845ac7593c3b11a605af560328037f433d49eb99d37 |
|
MD5 | 5d9577557c49221cdb7d1644d411ab4c |
|
BLAKE2b-256 | 55e0337f6b2d8b8e17220783ddc0bf4efb97673a667d0a999c546776685a44f2 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b9e8cd4ed4ff3d2f381a8ccad70bc42db6e8a1096ea722d87fe32bfa77284c8 |
|
MD5 | b0f6b0152a77ab02933052b4a9eec3a1 |
|
BLAKE2b-256 | 3261ccd278189c4eb7fada54a9c7e1605344080c02afe1ba4554c65ad61a2534 |