├── .gitignore ├── .vscode ├── launch.json └── tasks.json ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── SECURITY.md ├── SUPPORT.md ├── aisentry ├── adapters │ ├── Api_Request_Transformer.py │ ├── SampleAdapter │ │ └── sample_api_request_transformer.py │ └── adapters.py ├── asgi_facade.py ├── asgi_summary_worker.py ├── asgi_worker.py ├── dapr.yaml ├── facade │ ├── __init__.py │ ├── app.py │ └── req.txt ├── requirements.txt ├── utils │ ├── __init__.py │ ├── ai_sentry_helpers.py │ ├── analyze_pii.py │ ├── analyze_pii_chunked_ta.py │ ├── analyze_pii_openai.py │ ├── aoai_streaming_response.py │ ├── approaches │ │ ├── approach.py │ │ ├── headerselector.py │ │ └── randomallocation.py │ ├── auth_helpers.py │ ├── combined-cert.crt │ └── combined_cert.pem └── worker │ ├── cosmos_logger │ ├── __init__.py │ └── cosmos_logger.py │ ├── loganalytics_logger │ ├── __init__.py │ └── loganalytics_logger.py │ ├── requirements.txt │ └── usage_summary │ ├── __init__.py │ ├── requirements.txt │ └── usage_logger.py ├── content ├── documentation │ ├── ACADeployment.md │ ├── AI-Sentry-config-settings.md │ ├── AKSDeployment.md │ ├── AzureInfrastrcuture.md │ ├── ComsosDB-LoggingSchema.md │ ├── CosmosDBSetup.md │ ├── LocalDebugging.md │ ├── LocalDeployment.md │ ├── SummaryLog-schema.md │ ├── Workload-identity-config.md │ └── ai-sentry-config.json └── images │ ├── AI-Sentry-AKS-view.drawio.png │ ├── AI-Sentry-HighLevel.drawio.png │ ├── AI-Sentry-features.png │ ├── AI-Sentry.drawio │ ├── cosmosdb_request_logs.png │ ├── cosmosdb_summary_logs.png │ ├── openai_rbac.png │ └── openai_rbac2.png ├── deploy ├── aks │ ├── ai-sentry-deployment.yaml │ └── namespace.yaml └── local │ └── components │ ├── cosmosdb.yaml │ └── pubsub.yaml ├── infrastructure ├── APIM │ └── ai-sentry-policy.xml ├── bicepconfig.json ├── deploy.ps1 ├── main.bicep ├── main.param.json └── open-ai │ └── main.bicep ├── requirements.txt ├── scripts ├── create-escaped-json.ps1 ├── setup-env.ps1 └── setup-env.sh └── tests ├── http ├── .env.sample ├── adapter_test-ai-sentry.http ├── adapter_test-apim.http ├── adapter_test.http ├── get-thread.http ├── list_assistants.http └── non_streaming_embedding.http ├── loadTests ├── embeddings │ └── locust.py ├── non-streaming │ └── locustfile.py └── streaming │ └── locustfile.py └── sdk ├── embedding.py └── stream_completion.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/.vscode/tasks.json -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/README.md -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/SECURITY.md -------------------------------------------------------------------------------- /SUPPORT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/SUPPORT.md -------------------------------------------------------------------------------- /aisentry/adapters/Api_Request_Transformer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/adapters/Api_Request_Transformer.py -------------------------------------------------------------------------------- /aisentry/adapters/SampleAdapter/sample_api_request_transformer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/adapters/SampleAdapter/sample_api_request_transformer.py -------------------------------------------------------------------------------- /aisentry/adapters/adapters.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/adapters/adapters.py -------------------------------------------------------------------------------- /aisentry/asgi_facade.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/asgi_facade.py -------------------------------------------------------------------------------- /aisentry/asgi_summary_worker.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/asgi_summary_worker.py -------------------------------------------------------------------------------- /aisentry/asgi_worker.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/asgi_worker.py -------------------------------------------------------------------------------- /aisentry/dapr.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/dapr.yaml -------------------------------------------------------------------------------- /aisentry/facade/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/facade/__init__.py -------------------------------------------------------------------------------- /aisentry/facade/app.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/facade/app.py -------------------------------------------------------------------------------- /aisentry/facade/req.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/facade/req.txt -------------------------------------------------------------------------------- /aisentry/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/requirements.txt -------------------------------------------------------------------------------- /aisentry/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /aisentry/utils/ai_sentry_helpers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/ai_sentry_helpers.py -------------------------------------------------------------------------------- /aisentry/utils/analyze_pii.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/analyze_pii.py -------------------------------------------------------------------------------- /aisentry/utils/analyze_pii_chunked_ta.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/analyze_pii_chunked_ta.py -------------------------------------------------------------------------------- /aisentry/utils/analyze_pii_openai.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/analyze_pii_openai.py -------------------------------------------------------------------------------- /aisentry/utils/aoai_streaming_response.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/aoai_streaming_response.py -------------------------------------------------------------------------------- /aisentry/utils/approaches/approach.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/approaches/approach.py -------------------------------------------------------------------------------- /aisentry/utils/approaches/headerselector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/approaches/headerselector.py -------------------------------------------------------------------------------- /aisentry/utils/approaches/randomallocation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/approaches/randomallocation.py -------------------------------------------------------------------------------- /aisentry/utils/auth_helpers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/auth_helpers.py -------------------------------------------------------------------------------- /aisentry/utils/combined-cert.crt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/combined-cert.crt -------------------------------------------------------------------------------- /aisentry/utils/combined_cert.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/utils/combined_cert.pem -------------------------------------------------------------------------------- /aisentry/worker/cosmos_logger/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/worker/cosmos_logger/__init__.py -------------------------------------------------------------------------------- /aisentry/worker/cosmos_logger/cosmos_logger.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/worker/cosmos_logger/cosmos_logger.py -------------------------------------------------------------------------------- /aisentry/worker/loganalytics_logger/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/worker/loganalytics_logger/__init__.py -------------------------------------------------------------------------------- /aisentry/worker/loganalytics_logger/loganalytics_logger.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/worker/loganalytics_logger/loganalytics_logger.py -------------------------------------------------------------------------------- /aisentry/worker/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/worker/requirements.txt -------------------------------------------------------------------------------- /aisentry/worker/usage_summary/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/worker/usage_summary/__init__.py -------------------------------------------------------------------------------- /aisentry/worker/usage_summary/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/worker/usage_summary/requirements.txt -------------------------------------------------------------------------------- /aisentry/worker/usage_summary/usage_logger.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/aisentry/worker/usage_summary/usage_logger.py -------------------------------------------------------------------------------- /content/documentation/ACADeployment.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /content/documentation/AI-Sentry-config-settings.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/documentation/AI-Sentry-config-settings.md -------------------------------------------------------------------------------- /content/documentation/AKSDeployment.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/documentation/AKSDeployment.md -------------------------------------------------------------------------------- /content/documentation/AzureInfrastrcuture.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /content/documentation/ComsosDB-LoggingSchema.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/documentation/ComsosDB-LoggingSchema.md -------------------------------------------------------------------------------- /content/documentation/CosmosDBSetup.md: -------------------------------------------------------------------------------- 1 | # CosmosDB Setup 2 | -------------------------------------------------------------------------------- /content/documentation/LocalDebugging.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/documentation/LocalDebugging.md -------------------------------------------------------------------------------- /content/documentation/LocalDeployment.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/documentation/LocalDeployment.md -------------------------------------------------------------------------------- /content/documentation/SummaryLog-schema.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/documentation/SummaryLog-schema.md -------------------------------------------------------------------------------- /content/documentation/Workload-identity-config.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/documentation/Workload-identity-config.md -------------------------------------------------------------------------------- /content/documentation/ai-sentry-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/documentation/ai-sentry-config.json -------------------------------------------------------------------------------- /content/images/AI-Sentry-AKS-view.drawio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/images/AI-Sentry-AKS-view.drawio.png -------------------------------------------------------------------------------- /content/images/AI-Sentry-HighLevel.drawio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/images/AI-Sentry-HighLevel.drawio.png -------------------------------------------------------------------------------- /content/images/AI-Sentry-features.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/images/AI-Sentry-features.png -------------------------------------------------------------------------------- /content/images/AI-Sentry.drawio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/images/AI-Sentry.drawio -------------------------------------------------------------------------------- /content/images/cosmosdb_request_logs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/images/cosmosdb_request_logs.png -------------------------------------------------------------------------------- /content/images/cosmosdb_summary_logs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/images/cosmosdb_summary_logs.png -------------------------------------------------------------------------------- /content/images/openai_rbac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/images/openai_rbac.png -------------------------------------------------------------------------------- /content/images/openai_rbac2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/content/images/openai_rbac2.png -------------------------------------------------------------------------------- /deploy/aks/ai-sentry-deployment.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/deploy/aks/ai-sentry-deployment.yaml -------------------------------------------------------------------------------- /deploy/aks/namespace.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/deploy/aks/namespace.yaml -------------------------------------------------------------------------------- /deploy/local/components/cosmosdb.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/deploy/local/components/cosmosdb.yaml -------------------------------------------------------------------------------- /deploy/local/components/pubsub.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/deploy/local/components/pubsub.yaml -------------------------------------------------------------------------------- /infrastructure/APIM/ai-sentry-policy.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/infrastructure/APIM/ai-sentry-policy.xml -------------------------------------------------------------------------------- /infrastructure/bicepconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/infrastructure/bicepconfig.json -------------------------------------------------------------------------------- /infrastructure/deploy.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/infrastructure/deploy.ps1 -------------------------------------------------------------------------------- /infrastructure/main.bicep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/infrastructure/main.bicep -------------------------------------------------------------------------------- /infrastructure/main.param.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/infrastructure/main.param.json -------------------------------------------------------------------------------- /infrastructure/open-ai/main.bicep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/infrastructure/open-ai/main.bicep -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/requirements.txt -------------------------------------------------------------------------------- /scripts/create-escaped-json.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/scripts/create-escaped-json.ps1 -------------------------------------------------------------------------------- /scripts/setup-env.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/scripts/setup-env.ps1 -------------------------------------------------------------------------------- /scripts/setup-env.sh: -------------------------------------------------------------------------------- 1 | source ..\.env -------------------------------------------------------------------------------- /tests/http/.env.sample: -------------------------------------------------------------------------------- 1 | AOAI_ENDPOINT=___.openai.azure.com 2 | AOAI_API_KEY= 3 | BEARER_TOKEN= -------------------------------------------------------------------------------- /tests/http/adapter_test-ai-sentry.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/http/adapter_test-ai-sentry.http -------------------------------------------------------------------------------- /tests/http/adapter_test-apim.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/http/adapter_test-apim.http -------------------------------------------------------------------------------- /tests/http/adapter_test.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/http/adapter_test.http -------------------------------------------------------------------------------- /tests/http/get-thread.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/http/get-thread.http -------------------------------------------------------------------------------- /tests/http/list_assistants.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/http/list_assistants.http -------------------------------------------------------------------------------- /tests/http/non_streaming_embedding.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/http/non_streaming_embedding.http -------------------------------------------------------------------------------- /tests/loadTests/embeddings/locust.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/loadTests/embeddings/locust.py -------------------------------------------------------------------------------- /tests/loadTests/non-streaming/locustfile.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/loadTests/non-streaming/locustfile.py -------------------------------------------------------------------------------- /tests/loadTests/streaming/locustfile.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/loadTests/streaming/locustfile.py -------------------------------------------------------------------------------- /tests/sdk/embedding.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/sdk/embedding.py -------------------------------------------------------------------------------- /tests/sdk/stream_completion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/ai-sentry/HEAD/tests/sdk/stream_completion.py --------------------------------------------------------------------------------