#### Docker: Copy the .env.template to .env and fill in the variables Specify the environment variable in the .env file to "docker" Launch the docker image: ```docker compose up promethai_mem ``` Send the request to the API: ``` curl -X POST -H "Content-Type: application/json" -d '{ "payload": { "user_id": "97980cfea0067", "data": [".data/3ZCCCW.pdf"], "test_set": "sample", "params": ["chunk_size"], "metadata": "sample", "retriever_type": "single_document_context" } }' http://0.0.0.0:8000/rag-test/rag_test_run ``` Params: - data -> list of URLs or path to the file, located in the .data folder (pdf, docx, txt, html) - test_set -> sample, manual (list of questions and answers) - metadata -> sample, manual (json) or version (in progress) - params -> chunk_size, chunk_overlap, search_type (hybrid, bm25), embeddings - retriever_type -> llm_context, single_document_context, multi_document_context, cognitive_architecture(coming soon) Inspect the results in the DB: ``` docker exec -it postgres psql -U bla ``` ``` \c bubu ``` ``` select * from test_outputs; ``` Or set up the superset to visualize the results: #### Poetry environment: Copy the .env.template to .env and fill in the variables Specify the environment variable in the .env file to "local" Use the poetry environment: ``` poetry shell ``` Change the .env file Environment variable to "local" Launch the postgres DB ``` docker compose up postgres ``` Launch the superset ``` docker compose up superset ``` Open the superset in your browser ``` http://localhost:8088 ``` Add the Postgres datasource to the Superset with the following connection string: ``` postgres://bla:bla@postgres:5432/bubu ``` Make sure to run to initialize DB tables ``` python scripts/create_database.py ``` After that, you can run the RAG test manager from your command line. ``` python rag_test_manager.py \ --file ".data" \ --test_set "example_data/test_set.json" \ --user_id "97980cfea0067" \ --params "chunk_size" "search_type" \ --metadata "example_data/metadata.json" \ --retriever_type "single_document_context" ``` Examples of metadata structure and test set are in the folder "example_data" python rag_test_manager.py \ --file ".data" \ --test_set "example_data/test_set.json" \ --user_id "97980cfea0067" \ --params "chunk_size" "search_type" \ --metadata "example_data/metadata.json" \ --retriever_type "llm_context" python rag_test_manager.py \ --file ".data" \ --test_set "example_data/test_set.json" \ --user_id "97980cfea0068" \ --params "chunk_size" "search_type", "overlap" \ --metadata "example_data/metadata.json" \ --retriever_type "single_document_context"