The REST interfaces were defined using the Swagger Editor (https://raw.githubusercontent.com/michaelwechner/coding-challenge-nl-search/main/openapi3_0.json)
- Upload plain text document(s)
- Search documents(s) using natural language
- Retrieve particular document
The server code was generated by the swagger-codegen project.
This example uses the Connexion library on top of Flask.
Python 3.10.8
Please make sure to set the Datastax Astra Token and Embedding API Key inside the file:
.env
To run the server, please execute the following from the root directory:
pip3 install -r requirements.txt
python3 -m swagger_server
and open your browser to here:
http://localhost:8080/ui/
Your Swagger definition lives here:
http://localhost:8080/swagger.json
To launch the integration tests, use tox:
sudo pip install tox
tox
To run the server on a Docker container, please execute the following from the root directory:
# building the image
docker build -t swagger_server .
# starting up a container
docker run -p 8080:8080 swagger_server