### Table of Contents - [Setup](#setup) - [Fill With Documents](#fill) - [Query](#query) ### Setup Both server `summa-server` and client `aiosumma` are distributed through the package systems, `Cargo` and `pip`. Also, there is a prebuilt `summa-server` Docker image hosted on Dockerhub. #### Aiosumma ```bash # (Optional) Create virtual env for `aiosumma` python3 -m venv venv source venv/bin/acticate # Install aiosumma pip3 install -U aiosumma # Install spaCy models pip3 install -U https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.3.0/en_core_web_sm-3.3.0-py3-none-any.whl ``` #### Summa Server ```bash # Create diectory for storing index mkdir data # Pull actual image for `summa-server` docker pull izihawa/summa-server # Generate config for `summa-server` docker run izihawa/summa-server generate-config -d /data \ -g 0.0.0.0:8082 -m 0.0.0.0:8084 > summa.yaml # Launch `summa-server` docker run -v $(pwd)/summa.yaml:/summa.yaml -v $(pwd)/data:/data \ -p 8082:8082 -p 8084:8084 \ izihawa/summa-server serve /summa.yaml ``` ### Fill With Documents ```bash {% include download-dump-snippet.sh %} {% include import-data-to-summa-snippet.sh %} ``` ### Query ```bash # Do a match query that returns top-10 documents and its total count summa-cli localhost:8082 - search page '{"match": {"value": "astronomy"}}' '[{"top_docs": {"limit": 10}}, {"count": {}}]' ```