Build locally:
docker build -f Dockerfile -t ai-agent .
Run locally:
docker run --rm -p 8080:80 --env-file .env ai-agent
| Environment Variable | Description | Used With |
|---|---|---|
| DatabaseType | Database type options: 'mysql', 'mssql', 'snowflake', 'redshift', 'postgresql', 'bigquery' | All |
| DataSource | For 'snowflake' analogue of the 'Account' db parameter | snowflake |
| Warehouse | Warehouse identifier | snowflake |
| DbSchema | Database schema | snowflake |
| DbName | Database name | All |
| DbUser | Database username | All |
| DbPassword | Database password | All |
| DbPort | Database port number | mysql, postgresql |
| ApiEndPoint | API endpoint URL | All |
| ApiToken | API authentication token | All |
| AppId | Application ID | All |
| AuthTenantID | Authentication tenant ID (Optional) | All |
| AppPassword | Application password | All |
| StaticEndPoint | Static endpoint URL | All |
| client_email | Service account email | bigquery |
| token_uri | Token URI | bigquery |
| private_key | Private key for authentication | bigquery |
| project_id | Google Cloud project ID | bigquery |
| Environment Variable | Description |
|---|---|
| FromYear | Starting year from which to measure trusted data |
| ToYear | The final year up to which trusted data is measured (inclusive) |
| CorridorsMode | 1 = standard mode (flat corridors over given time period, minimum 1 year of data); 2 = seasonal mode (monthly calculated corridors, minimum 2 years' of data) |
| WindowSize | Size of the rolling window when using seasonal corridors mode (default = 5) |
| BoundarySensitivity | Sensitivity for the lower and upper bounds for anomaly detection (mean +- BoundarySensitivity * standard deviation) |
| EmailAddress | Email address for sending anomaly detection email |
| EmailPassword | Password for senders email (app password may need to be used for gmail and outlook accounts) |
| RecipientEmail | Email addresses of recipients (separated by comma (no space)) |
| AzureAppName | Azure app name where interactive graph files are stored |
| OpenAiAPI | API key for OpenAI integration (informative emails) |
| OpenAiBase | Base URL for OpenAI integration |
| OpenAiType | Type of OpenAI service (e.g. azure) |
| OpenAiVersion | OpenAI version |
| OpenAiName | Name of OpenAI model to be used |
| SystemMessage | System Message for OpenAI for initial context and instructions given to OpenAI model |
| Frequency | Frequency (in days) for which the anomaly detection should take place |
| Environment Variable | Description |
|---|---|
| LanguageModelProvider | Provider of the language model (accepts: GCP, AWS, AzureOpenAI, HuggingFace) More to be added. |
| LanguageModelName | Name of the LLM ID, e.g. anthropic.claude-sonnet-4-5-20250929-v1:0 |
| LanguageModelApiKey | Authentication secret: - AzureOpenAI/Gemini: API key - AWS: Secret Access Key |
| LanguageModelEndpoint | Provider-specific endpoint or identifier. - For AzureOpenAI: The Azure OpenAI resource endpoint URL.- For AWS: AWS Access Key ID. |
| LanguageModelVersion | Version of the LLM. - For AzureOpenAI: The model version (e.g. 2025-12-01)- For AWS: The model region (e.g. us-east-2) |
| AzureModelDeploymentName | The deployment name of the Azure-based language model. |
| LanguageModelContext | System prompt/context given to the LLM for answering document queries |
| LanguageModelMaxTokens | Maximum number of tokens the LLM can generate in a response (default: 8000) |
| LanguageModelTimeout | Timeout in seconds for LLM requests (default: 300) |
| Streaming | Enable streaming responses from the bot; Options: true, false (default: false) |
| EmbeddingModel | Embedding model used for vectorising documents and queries (default: BAAI/bge-small-en-v1.5) |
| AzureStorageAccName | Name of the Azure Storage account containing document files |
| AzureBlobContainerName | Name of the Azure Blob Storage container where documents are stored |
| AzureStorageSasToken | Optional; SAS token for Azure Blob Storage authentication. Falls back to Managed Identity if not provided |
| ChunkSize | Number of words per text chunk when splitting documents for embedding (default: 200) |
| MaxChunkSize | Maximum number of words per text chunk - If a sentence ender is not found after ChunkSize and before MaxChunkSize, the chunk will be split at MaxChunkSize (default: 500) |
| SentenceEnders | When true, chunks break at sentence endings (!, ?, .) that come after word count, rather than strictly at word count (default: true) |
| GraphRag | When true uses Graph RAG mode, when false uses standard vector search (default: false) |
| VerboseGraph | When true adds more verbose graph RAG answer containing sources and patterns (default: false) |
| AzureModelsStorageAccName | Storage account name for model storage - embedding & LLM models are stored here (default: nlsqlstorage) |
| AzureModelsBlobContainerName | Container name for model storage (default: models) |
| AzureModelsStorageSasToken | |
| StoreHuggingFaceModels | When true Hugging Face models will be storred in local models storage after download - if present stored models will be used instead of Hugging Face models (default: false) |
| RagSearchResults | Number or results returned to the LLM (default: 5) |
| GraphChunkSize | Chunk size in tokens for splitting Graph RAG documents (defailt: 50000) |
| GraphMultistepReasoning | Number of recursive reasoning steps for graph queries (default: 1) |
| MedicalAssistant | When true the LLM will be given a specific prompt for generating downstream complications reports (defailt: false) |
GCP)AWS)AzureOpenAI)HuggingFace)Notes:
| Environment Variable | Description |
|---|---|
| connections__serviceConnection__settings__clientId | Azure Application ID for Microsoft Teams bot authentication |
| connections__serviceConnection__settings__clientSecret | Azure Application secret for Microsoft Teams bot authentication - Remove this env for UserAssignedMSI |
| connections__serviceConnection__settings__tenantId | Azure Active Directory Tenant ID for the bot |
| connectionsMap__0__connection | Connection name for the application (default: serviceConnection) |
| connectionsMap__0__serviceUrl | URL of the application connection (default: *) |
| TalkToDocs | Controls bot mode; "true" = Talk-to-Docs only, "false" = NLSQL only, "" = both (NLSQL with Talk-to-Docs fallback) |
| DEBUG | Enable verbose debug logging; Options: true, false (default: false) |
Content type
Image
Digest
sha256:2a635d6c9…
Size
1009.7 MB
Last updated
7 months ago
docker pull denissa4/agent4docs-index