Mirror of khoj from Github
Find a file
Debanjum Singh Solanky 9703afb814 Rename search_types to search_type to standardize to singular naming
Using singular names for other directories in application already
 - processor instead of processors
 - interface instead of interfaces
2021-08-16 16:31:30 -07:00
interface/emacs Minor doc updates after merging emacs package with main repository 2021-08-16 02:02:26 -07:00
processor Allow importing org-to-jsonl as module for reuse 2021-08-16 16:31:30 -07:00
search_type Rename search_types to search_type to standardize to singular naming 2021-08-16 16:31:30 -07:00
utils Change default install directory to current, fix open file code 2021-08-15 23:01:55 -07:00
.gitignore Add Readme, License. Update .gitignore 2021-08-15 22:52:37 -07:00
environment.yml Create API interface for Semantic Search 2021-08-15 18:11:48 -07:00
LICENSE Add Readme, License. Update .gitignore 2021-08-15 22:52:37 -07:00
main.py Rename search_types to search_type to standardize to singular naming 2021-08-16 16:31:30 -07:00
README.md Use better cmdline argument names. Drop unneeded no-compress argument 2021-08-16 13:49:39 -07:00

Semantic Search

Provide natural language search on user personal content like notes, images using ML models

All data is processed locally. User can interface with semantic-search app via Emacs, API or Commandline

Dependencies

Install

git clone https://github.com/debanjum/semantic-search && cd semantic-search
conda env create -f environment.yml
conda activate semantic-search

Setup

Generate compressed JSONL from specified org-mode files

python3 processor/org-mode/org-to-jsonl.py \
--input-files ~/Notes/Schedule.org ~/Notes/Incoming.org \
--output-file .notes.jsonl.gz \
--verbose

Run

Load ML model, generate embeddings and expose API interface to run user queries on above org-mode files

python3 main.py \
--compressed-jsonl .notes.jsonl.gz \
--embeddings .notes_embeddings.pt \
--verbose

Use

Acknowledgments