diff options
Diffstat (limited to 'megapixels/commands/faiss')
| -rw-r--r-- | megapixels/commands/faiss/build_db.py | 15 | ||||
| -rw-r--r-- | megapixels/commands/faiss/build_faiss.py | 24 | ||||
| -rw-r--r-- | megapixels/commands/faiss/sync_metadata.py | 18 |
3 files changed, 57 insertions, 0 deletions
diff --git a/megapixels/commands/faiss/build_db.py b/megapixels/commands/faiss/build_db.py new file mode 100644 index 00000000..0f979e41 --- /dev/null +++ b/megapixels/commands/faiss/build_db.py @@ -0,0 +1,15 @@ +""" +Load all the CSV files into MySQL +""" + +import click + +from app.models.sql_factory import load_sql_datasets + +@click.command() +@click.pass_context +def cli(ctx): + """import the various CSVs into MySQL + """ + print('Loading CSV datasets into SQL...') + load_sql_datasets(replace=True) diff --git a/megapixels/commands/faiss/build_faiss.py b/megapixels/commands/faiss/build_faiss.py new file mode 100644 index 00000000..fc6b37ce --- /dev/null +++ b/megapixels/commands/faiss/build_faiss.py @@ -0,0 +1,24 @@ +""" +Index all of the FAISS datasets +""" + +import os +import glob +import click +import faiss +import time +import numpy as np + +from app.utils.file_utils import load_recipe, load_csv_safe +from app.settings import app_cfg as cfg +from app.processors.faiss import build_all_faiss_databases + +@click.command() +@click.pass_context +def cli(ctx): + """build the FAISS index. + - looks for all datasets in faiss/metadata/ + - uses the recipe above by default + - however you can override this by adding a new recipe in faiss/recipes/{name}.json + """ + build_all_faiss_databases() diff --git a/megapixels/commands/faiss/sync_metadata.py b/megapixels/commands/faiss/sync_metadata.py new file mode 100644 index 00000000..b01211b4 --- /dev/null +++ b/megapixels/commands/faiss/sync_metadata.py @@ -0,0 +1,18 @@ +""" +Sync the FAISS metadata +""" + +import subprocess +import click + +from app.settings import app_cfg as cfg + +@click.command() +@click.pass_context +def cli(ctx): + """synchronize metadata files from s3""" + sts = subprocess.call([ + "s3cmd", "sync", + "s3://megapixels/v1/metadata/", + cfg.DIR_FAISS_METADATA + '/', + ]) |
