79 lines
2.5 KiB
Markdown
79 lines
2.5 KiB
Markdown
# AOC v1.2.5 Release Notes
|
|
|
|
**Release date:** 2026-04-20
|
|
|
|
---
|
|
|
|
## What's new
|
|
|
|
### Natural language query (`/api/ask`)
|
|
Ask questions in plain English and get AI-generated answers backed by your audit logs.
|
|
|
|
- **Regex-based parsing** extracts time ranges (`last 3 days`, `yesterday`, `today`) and entities (`device ABC123`, `user bob@example.com`) without calling an LLM.
|
|
- **AI narrative summarisation** via any OpenAI-compatible API (OpenAI, Azure OpenAI, MS Foundry, Ollama).
|
|
- **Graceful fallback** when no LLM is configured — returns a structured bullet list with a clear error banner.
|
|
- **Cited evidence** — every answer includes the raw events that back it up.
|
|
|
|
### Filter-aware queries
|
|
The ask endpoint now respects the filter panel. When you set **Service = Exchange**, **Result = failure** and ask *"What happened to device X?"*, the LLM only sees failed Exchange events for that device.
|
|
|
|
### Scales to thousands of events
|
|
For large result sets (>50 events), the LLM receives an **aggregated overview** instead of a raw dump:
|
|
- Counts by service, action, result, and actor
|
|
- Failure highlights
|
|
- The 50 most recent raw events as samples
|
|
|
|
This keeps token usage low while preserving accuracy.
|
|
|
|
### Azure OpenAI / MS Foundry support
|
|
- Automatic `api-key` header detection for Azure endpoints.
|
|
- `LLM_API_VERSION` config for Azure `api-version` query parameters.
|
|
- `max_completion_tokens` support for newer model deployments.
|
|
|
|
### Version display
|
|
- `GET /api/version` endpoint reads the `VERSION` file.
|
|
- Frontend shows a version badge in the header (e.g., **1.2.5**).
|
|
|
|
### Production hardening (from v1.1.0)
|
|
- Dockerfile runs as non-root user with Gunicorn + Uvicorn workers.
|
|
- `docker-compose.prod.yml` with internal-only MongoDB, health checks, and nginx reverse proxy.
|
|
- Security headers (`X-Frame-Options`, `X-Content-Type-Options`, etc.).
|
|
|
|
---
|
|
|
|
## Configuration
|
|
|
|
Add to your `.env`:
|
|
|
|
```bash
|
|
# Required for AI narrative summarisation
|
|
LLM_API_KEY=your-key
|
|
LLM_BASE_URL=https://api.openai.com/v1
|
|
LLM_MODEL=gpt-4o-mini
|
|
LLM_MAX_EVENTS=200
|
|
LLM_TIMEOUT_SECONDS=30
|
|
LLM_API_VERSION= # set for Azure OpenAI, e.g. 2024-12-01-preview
|
|
```
|
|
|
|
For Azure OpenAI / MS Foundry:
|
|
```bash
|
|
LLM_BASE_URL=https://your-resource.openai.azure.com/openai/deployments/your-deployment
|
|
LLM_API_KEY=your-azure-key
|
|
LLM_API_VERSION=2024-12-01-preview
|
|
LLM_MODEL=your-deployment-name
|
|
```
|
|
|
|
---
|
|
|
|
## Upgrade notes
|
|
|
|
No breaking changes. Existing `/api/events`, filters, pagination, tags, and comments work unchanged.
|
|
|
|
---
|
|
|
|
## Docker image
|
|
|
|
```
|
|
git.cqre.net/cqrenet/aoc-backend:v1.2.5
|
|
```
|