gitextract_l345h7ij/ ├── .coveragerc ├── .flake8 ├── .github/ │ ├── developing-workflows.md │ ├── pull_request_template.md │ ├── scripts/ │ │ ├── create_backup.sh │ │ ├── install_ms_service.sh │ │ ├── moonshot_env │ │ ├── moonshot_test_env │ │ ├── moonshot_ui_env │ │ ├── run_smoke_test.sh │ │ └── start_ms_service.sh │ └── workflows/ │ ├── docs-update.yaml │ ├── gh-event-notification.yaml │ ├── integration-test.yaml │ ├── notices-file-gen.yaml │ ├── pre-build-checks.yaml │ ├── pypi-deployment.yaml │ ├── sast-codeql.yaml │ ├── sca-scan.yaml │ ├── sit-build.yaml │ ├── smoke-test-cli.yaml │ ├── smoke-test.yaml │ ├── test-pypi-deployment.yaml │ └── uat-build.yaml ├── .gitignore ├── .pre-commit-config.yaml ├── AUTHORS.md ├── LICENSE.md ├── NOTICES.md ├── README.md ├── assets/ │ └── style.css ├── ci/ │ ├── createBadges.py │ ├── gen_pre_build_summ.sh │ ├── run-codeql-summ.sh │ ├── run-flake8.sh │ ├── run-pip-audit.sh │ └── run-test.sh ├── docs/ │ ├── api_reference/ │ │ ├── api_bookmark.md │ │ ├── api_connector.md │ │ ├── api_connector_endpoint.md │ │ ├── api_context_strategy.md │ │ ├── api_cookbook.md │ │ ├── api_dataset.md │ │ ├── api_environment_variables.md │ │ ├── api_metrics.md │ │ ├── api_prompt_template.md │ │ ├── api_recipe.md │ │ ├── api_red_teaming.md │ │ ├── api_result.md │ │ ├── api_run.md │ │ ├── api_runner.md │ │ ├── api_session.md │ │ ├── web_api_swagger.json │ │ └── web_api_swagger.md │ ├── contributing.md │ ├── faq.md │ ├── getting_started/ │ │ ├── first_test.md │ │ ├── overview.md │ │ ├── quick_install.md │ │ └── quick_start.md │ ├── index.md │ ├── resources/ │ │ ├── attack_modules.md │ │ ├── cookbooks.md │ │ ├── datasets.md │ │ ├── jupyter_notebook.md │ │ ├── metrics.md │ │ └── recipes.md │ ├── tutorial/ │ │ ├── cli/ │ │ │ ├── create_benchmark_tests.md │ │ │ ├── create_endpoint.md │ │ │ ├── run_benchmark_tests.md │ │ │ └── run_red_teaming.md │ │ ├── contributor/ │ │ │ ├── configure_web_api.md │ │ │ └── create_connector.md │ │ └── web-ui/ │ │ ├── benchmark.md │ │ ├── create_cookbook.md │ │ ├── create_endpoint.md │ │ └── redteam.md │ └── user_guide/ │ ├── cli/ │ │ ├── add_your_own_tests.md │ │ ├── benchmarking.md │ │ ├── cli_command_list.md │ │ ├── cli_guide.md │ │ ├── connecting_endpoints.md │ │ └── red_teaming.md │ └── web_ui/ │ ├── choosing_relevant_tests.md │ ├── connecting_to_llms.md │ ├── creating_custom_cookbooks.md │ ├── moonshot_interface/ │ │ ├── benchmarking.md │ │ ├── endpoint.md │ │ ├── history.md │ │ ├── homepage.md │ │ ├── redteaming.md │ │ └── utils.md │ ├── running_benchmarks.md │ ├── running_red_teaming.md │ └── web_ui_guide.md ├── examples/ │ ├── config.yml │ ├── deployment/ │ │ ├── Dockerfile │ │ ├── docker-compose.yml │ │ ├── kube_manifests/ │ │ │ ├── moonshot-deployment.yml │ │ │ ├── moonshot-ingress.yml │ │ │ ├── moonshot-ns.yml │ │ │ └── moonshot-pvc.yml │ │ └── run_installation_script.sh │ └── jupyter-notebook/ │ ├── Moonshot - Benchmark Feature Walkthrough.ipynb │ ├── Moonshot - Pre-Req - Setup.ipynb │ ├── Tutorial 1 - Basic Workflow - Execute a Benchmark.ipynb │ ├── Tutorial 2 - Basic Workflow - Add your own test.ipynb │ ├── Tutorial 3 - Basic Workflow - Run Red Teaming Session.ipynb │ ├── Tutorial 4 - Advanced Workflow - Test Custom Application.ipynb │ ├── assets/ │ │ ├── jupyter-assets-csv-file.csv │ │ └── jupyter-assets-custom-app.py │ └── jupyter_notebook_env_setup.sh ├── mkdocs.yml ├── moonshot/ │ ├── __init__.py │ ├── __main__.py │ ├── api.py │ ├── integrations/ │ │ ├── __init__.py │ │ ├── cli/ │ │ │ ├── __init__.py │ │ │ ├── __main__.py │ │ │ ├── active_session_cfg.py │ │ │ ├── benchmark/ │ │ │ │ ├── __init__.py │ │ │ │ ├── benchmark.py │ │ │ │ ├── cookbook.py │ │ │ │ ├── datasets.py │ │ │ │ ├── metrics.py │ │ │ │ ├── recipe.py │ │ │ │ ├── result.py │ │ │ │ ├── run.py │ │ │ │ └── runner.py │ │ │ ├── cli.py │ │ │ ├── cli_errors.py │ │ │ ├── common/ │ │ │ │ ├── __init__.py │ │ │ │ ├── common.py │ │ │ │ ├── connectors.py │ │ │ │ ├── dataset.py │ │ │ │ ├── display_helper.py │ │ │ │ └── prompt_template.py │ │ │ ├── initialisation/ │ │ │ │ ├── __init__.py │ │ │ │ └── initialisation.py │ │ │ ├── redteam/ │ │ │ │ ├── __init__.py │ │ │ │ ├── attack_module.py │ │ │ │ ├── context_strategy.py │ │ │ │ ├── prompt_template.py │ │ │ │ ├── redteam.py │ │ │ │ └── session.py │ │ │ └── utils/ │ │ │ └── process_data.py │ │ └── web_api/ │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ ├── container.py │ │ ├── log/ │ │ │ └── .gitkeep │ │ ├── logging_conf.py │ │ ├── routes/ │ │ │ ├── __init__.py │ │ │ ├── attack_modules.py │ │ │ ├── benchmark.py │ │ │ ├── benchmark_result.py │ │ │ ├── bookmark.py │ │ │ ├── context_strategy.py │ │ │ ├── cookbook.py │ │ │ ├── dataset.py │ │ │ ├── endpoint.py │ │ │ ├── metric.py │ │ │ ├── prompt_template.py │ │ │ ├── recipe.py │ │ │ ├── redteam.py │ │ │ └── runner.py │ │ ├── schemas/ │ │ │ ├── __init__.py │ │ │ ├── benchmark_runner_dto.py │ │ │ ├── bookmark_create_dto.py │ │ │ ├── cookbook_create_dto.py │ │ │ ├── cookbook_response_model.py │ │ │ ├── dataset_create_dto.py │ │ │ ├── dataset_response_dto.py │ │ │ ├── endpoint_create_dto.py │ │ │ ├── endpoint_response_model.py │ │ │ ├── prompt_response_model.py │ │ │ ├── prompt_template_response_model.py │ │ │ ├── recipe_create_dto.py │ │ │ ├── recipe_response_model.py │ │ │ ├── session_create_dto.py │ │ │ ├── session_prompt_dto.py │ │ │ └── session_response_model.py │ │ ├── services/ │ │ │ ├── __init__.py │ │ │ ├── attack_module_service.py │ │ │ ├── auto_red_team_test_manager.py │ │ │ ├── auto_red_team_test_state.py │ │ │ ├── base_service.py │ │ │ ├── benchmark_result_service.py │ │ │ ├── benchmark_test_manager.py │ │ │ ├── benchmark_test_state.py │ │ │ ├── benchmarking_service.py │ │ │ ├── bookmark_service.py │ │ │ ├── context_strategy_service.py │ │ │ ├── cookbook_service.py │ │ │ ├── dataset_service.py │ │ │ ├── endpoint_service.py │ │ │ ├── metric_service.py │ │ │ ├── prompt_template_service.py │ │ │ ├── recipe_service.py │ │ │ ├── runner_service.py │ │ │ ├── session_service.py │ │ │ └── utils/ │ │ │ ├── exceptions_handler.py │ │ │ ├── file_manager.py │ │ │ └── results_formatter.py │ │ ├── status_updater/ │ │ │ ├── interface/ │ │ │ │ ├── benchmark_progress_callback.py │ │ │ │ └── redteam_progress_callback.py │ │ │ └── moonshot_ui_webhook.py │ │ ├── temp/ │ │ │ └── .gitkeep │ │ └── types/ │ │ └── types.py │ └── src/ │ ├── __init__.py │ ├── api/ │ │ ├── __init__.py │ │ ├── api_bookmark.py │ │ ├── api_connector.py │ │ ├── api_connector_endpoint.py │ │ ├── api_context_strategy.py │ │ ├── api_cookbook.py │ │ ├── api_dataset.py │ │ ├── api_environment_variables.py │ │ ├── api_metrics.py │ │ ├── api_prompt_template.py │ │ ├── api_recipe.py │ │ ├── api_red_teaming.py │ │ ├── api_result.py │ │ ├── api_run.py │ │ ├── api_runner.py │ │ └── api_session.py │ ├── bookmark/ │ │ ├── bookmark.py │ │ └── bookmark_arguments.py │ ├── configs/ │ │ ├── __init__.py │ │ └── env_variables.py │ ├── connectors/ │ │ ├── __init__.py │ │ ├── connector.py │ │ ├── connector_prompt_arguments.py │ │ └── connector_response.py │ ├── connectors_endpoints/ │ │ ├── __init__.py │ │ ├── connector_endpoint.py │ │ └── connector_endpoint_arguments.py │ ├── cookbooks/ │ │ ├── __init__.py │ │ ├── cookbook.py │ │ └── cookbook_arguments.py │ ├── datasets/ │ │ ├── __init__.py │ │ ├── dataset.py │ │ └── dataset_arguments.py │ ├── messages_constants.py │ ├── metrics/ │ │ ├── __init__.py │ │ ├── metric.py │ │ └── metric_interface.py │ ├── prompt_templates/ │ │ ├── __init__.py │ │ └── prompt_template.py │ ├── recipes/ │ │ ├── __init__.py │ │ ├── recipe.py │ │ └── recipe_arguments.py │ ├── redteaming/ │ │ ├── __init__.py │ │ ├── attack/ │ │ │ ├── __init__.py │ │ │ ├── attack_module.py │ │ │ ├── attack_module_arguments.py │ │ │ └── context_strategy.py │ │ ├── context_strategy/ │ │ │ ├── __init__.py │ │ │ └── context_strategy_interface.py │ │ └── session/ │ │ ├── __init__.py │ │ ├── chat.py │ │ ├── red_teaming_progress.py │ │ ├── red_teaming_type.py │ │ └── session.py │ ├── results/ │ │ ├── __init__.py │ │ ├── result.py │ │ └── result_arguments.py │ ├── runners/ │ │ ├── __init__.py │ │ ├── runner.py │ │ ├── runner_arguments.py │ │ └── runner_type.py │ ├── runs/ │ │ ├── __init__.py │ │ ├── run.py │ │ ├── run_arguments.py │ │ ├── run_progress.py │ │ └── run_status.py │ ├── storage/ │ │ ├── __init__.py │ │ ├── db_interface.py │ │ ├── io_interface.py │ │ └── storage.py │ └── utils/ │ ├── __init__.py │ ├── find_feature.py │ ├── import_modules.py │ ├── log.py │ ├── pagination.py │ └── timeit.py ├── pyproject.toml ├── pytest.ini ├── requirements.txt ├── run_unit_test.sh ├── tests/ │ ├── __init__.py │ ├── others/ │ │ ├── __init__.py │ │ ├── functest_api.py │ │ ├── functest_connectors.py │ │ ├── functest_cookbooks.py │ │ ├── functest_datasets.py │ │ ├── functest_metrics.py │ │ ├── functest_recipes.py │ │ ├── functest_results.py │ │ ├── functest_rt_api.py │ │ ├── functest_runner.py │ │ └── results/ │ │ ├── my-new-runner-cookbook.json │ │ └── my-new-runner-recipe.json │ └── unit-tests/ │ ├── __init__.py │ ├── cli/ │ │ ├── __init__.py │ │ ├── test_attack_module.py │ │ ├── test_benchmark.py │ │ ├── test_common.py │ │ ├── test_common_endpoints.py │ │ ├── test_common_prompt_template.py │ │ ├── test_cookbook.py │ │ ├── test_datasets.py │ │ ├── test_metrics.py │ │ ├── test_recipe.py │ │ ├── test_red_teaming.py │ │ ├── test_result.py │ │ ├── test_run.py │ │ ├── test_runner.py │ │ └── test_session.py │ ├── common/ │ │ └── samples/ │ │ ├── __init__.py │ │ ├── add_previous_prompt.py │ │ ├── advglue.py │ │ ├── analogical-similarity.json │ │ ├── answer-template.json │ │ ├── arc-challenge.json │ │ ├── arc-easy.json │ │ ├── arc.json │ │ ├── bbq-lite-age-ambiguous.json │ │ ├── bbq-lite-age-disamb.json │ │ ├── bbq.json │ │ ├── benchmarking-result.py │ │ ├── benchmarking.py │ │ ├── bertscore.py │ │ ├── bleuscore.py │ │ ├── charswap_attack.py │ │ ├── chinese-safety-cookbook.json │ │ ├── claude2-connector.py │ │ ├── exactstrmatch.py │ │ ├── homoglyph_attack.py │ │ ├── huggingface-connector.py │ │ ├── ign_test_storage.py │ │ ├── mcq-template.json │ │ ├── mmlu.json │ │ ├── my-new-recipe-runner-no-db.json │ │ ├── my-new-recipe-runner-result.json │ │ ├── my-new-recipe-runner.json │ │ ├── my-runner.json │ │ ├── openai-connector.py │ │ ├── openai-gpt35-turbo.json │ │ ├── openai-gpt4.json │ │ ├── redteaming.py │ │ ├── sample-cookbook.json │ │ ├── sample-dataset.csv │ │ ├── sample-result.json │ │ ├── sample_attack_module.py │ │ ├── sample_file.py │ │ └── tamil-language-cookbook.json │ ├── src/ │ │ ├── __init__.py │ │ ├── data/ │ │ │ ├── attack-modules/ │ │ │ │ └── .placeholder │ │ │ ├── bookmarks/ │ │ │ │ └── .placeholder │ │ │ ├── connectors/ │ │ │ │ └── .placeholder │ │ │ ├── connectors-endpoints/ │ │ │ │ └── .placeholder │ │ │ ├── context-strategy/ │ │ │ │ └── .placeholder │ │ │ ├── cookbooks/ │ │ │ │ └── .placeholder │ │ │ ├── databases/ │ │ │ │ └── .placeholder │ │ │ ├── databases-modules/ │ │ │ │ ├── .placeholder │ │ │ │ └── sqlite.py │ │ │ ├── datasets/ │ │ │ │ └── .placeholder │ │ │ ├── example/ │ │ │ │ └── .placeholder │ │ │ ├── io-modules/ │ │ │ │ ├── __init__.py │ │ │ │ └── jsonio.py │ │ │ ├── metrics/ │ │ │ │ └── .placeholder │ │ │ ├── prompt-templates/ │ │ │ │ └── .placeholder │ │ │ ├── recipes/ │ │ │ │ └── .placeholder │ │ │ ├── results/ │ │ │ │ └── .placeholder │ │ │ ├── results-modules/ │ │ │ │ └── .placeholder │ │ │ ├── runner-modules/ │ │ │ │ └── .placeholder │ │ │ └── runners/ │ │ │ └── .placeholder │ │ ├── importmodules/ │ │ │ ├── __init__.py │ │ │ ├── arc-easy.json │ │ │ └── sample_file.py │ │ ├── logger_mock.py │ │ ├── test-storage.py │ │ ├── test_api_bookmark.py │ │ ├── test_api_connector.py │ │ ├── test_api_connector_endpoint.py │ │ ├── test_api_context_strategy.py │ │ ├── test_api_cookbook.py │ │ ├── test_api_dataset.py │ │ ├── test_api_metric.py │ │ ├── test_api_prompt_template.py │ │ ├── test_api_recipe.py │ │ ├── test_api_red_teaming.py │ │ ├── test_api_result.py │ │ ├── test_api_run.py │ │ ├── test_api_runner.py │ │ ├── test_api_session.py │ │ ├── test_bookmark.py │ │ ├── test_bookmark_arguments.py │ │ ├── test_connector.py │ │ ├── test_connector_endpoint.py │ │ ├── test_connector_endpoint_arguments.py │ │ ├── test_connector_prompt_arguments.py │ │ ├── test_connector_response.py │ │ ├── test_import_modules.py │ │ ├── test_log.py │ │ └── test_timeit.py │ └── web_api/ │ ├── __init__.py │ ├── test_routes/ │ │ ├── conftest.py │ │ ├── test_routes_attack_modules.py │ │ ├── test_routes_benchmarks.py │ │ ├── test_routes_bm_results.py │ │ ├── test_routes_bookmark.py │ │ ├── test_routes_context_strategy.py │ │ ├── test_routes_cookbook.py │ │ ├── test_routes_dataset.py │ │ ├── test_routes_endpoint.py │ │ ├── test_routes_metrics.py │ │ ├── test_routes_prompt_template.py │ │ ├── test_routes_recipe.py │ │ ├── test_routes_redteam.py │ │ └── test_routes_runner.py │ └── test_services/ │ ├── test_service_attack_modules.py │ ├── test_service_benchmark_result.py │ ├── test_service_bookmark.py │ ├── test_service_context_strategy.py │ ├── test_service_cookbook.py │ ├── test_service_dataset.py │ ├── test_service_endpoint.py │ ├── test_service_metric.py │ ├── test_service_prompt_template.py │ ├── test_service_recipe.py │ ├── test_service_runner.py │ └── test_service_session.py └── third-party/ ├── pygments-2.18.0-py3-none-any.whl └── text_unidecode-1.3-py2.py3-none-any.whl