Skip to content

Releases: oracle/ai-optimizer

v2.1.2

23 Apr 12:47
f37db73

Choose a tag to compare

Patch release focused on testbed generation robustness and OCI VM bootstrap reliability

New

  • Testbed generation reports per-file outcomes. POST /v1/testbed/testset_generate now validates each uploaded PDF before running Giskard. Files that can't produce at least MIN_CHUNKS_PER_FILE (10) text chunks are skipped with a structured reason instead of crashing the whole request, and the response payload includes a rejected_files list alongside qa_data. The client testbed surface renders the rejections as a warning (partial success) or an error (all files rejected).
  • Same-named uploads no longer collide. Each PDF is staged in its own temp sub-directory, so two files sharing a basename resolve to distinct bytes on disk during generation.
  • Configurable server bind address. New AIO_SERVER_ADDRESS client setting (default 127.0.0.1) lets the client spawn the embedded API server on a non-loopback interface — used by the cloud-init VM template to bind 0.0.0.0.

Fixed

  • Missing OpenGL runtime dependency. mesa-libGL is now installed in both the client and server container images and on compute VMs, unblocking libraries (e.g. OpenCV transitive deps) that link against libGL.so.
  • FastAPI multipart file parameters. store_local_file, upload_testset, and generate_testset_endpoint now declare files: list[UploadFile] = File(...) so OpenAPI/Swagger generate a correct multipart schema.

Full Changelog: v2.1.1...v2.1.2

v2.1.1

20 Apr 14:53
7f95d4f

Choose a tag to compare

Bug Fixes

Server API exposure

The IaC VM deployment has been reverted to expose the client UI and the server API on dedicated, independently gated LB listeners. This is to re-introduce IP/CIDR gates on each service.

Notes

  • Non-SSL: client on :80, server on :8000
  • SSL: client on :443 (HTTP → HTTPS redirect from :80), server on :8443 (HTTP → HTTPS redirect from :8000)
  • client_allowed_cidrs gates only client ports; server_allowed_cidrs only server ports — full L4 isolation between UI and API callers

Max in-memory client sessions was not configurable

A new AIO_MAX_CLIENTS setting (default 64) caps the number of distinct client sessions cached in the server's in-memory store; LRU eviction applies beyond the cap.

Dynamic SQLcl registration on new database

The SQLcl MCP proxy now registers newly added databases at runtime rather than only at startup — adding a DB no longer requires a server restart for MCP access.

Miscellaneous

  • Split/Embed: UI now shows the DB alias when splitting/embedding instead of the internal identifier.
  • .env.example: corrected example port.
  • Restored rag_base_optimizer_config_mcp.py LangChain RAG example.
  • Streamlit client config.toml tweak to avoid bad messaging when binding to non-localhost IPs

v2.1.0

17 Apr 12:27
f108a84

Choose a tag to compare

Highlights

Configuration Overhaul to Pydantic Settings

What this means:

  • Configuration can now be driven entirely through environment variables with the AIO_ prefix (e.g., AIO_DB_USERNAME, AIO_SERVER_PORT, AIO_LOG_LEVEL), with support for .env.dev, .env.prd, or custom env files via AIO_ENV.
  • Existing JSON configs still work.
  • Settings validation is now stricter and more predictable thanks to Pydantic.

Unified Entrypoint (entrypoint.py)
Introduction of a single Python entrypoint that bootstraps both the server and client, replacing the previous ad-hoc startup approach.

Changes to be aware of:

  • launch_client.py is removed. If you previously ran launch_client.py, switch to src/entrypoint.py client.
  • launch_server.py is removed. If you previously ran launch_server.py, switch to src/entrypoint.py server.

Oracle AgentSpec
Introduced as the foundation for how AI agents and flows are defined in the AI Optimizer. AgentSpec represents agents as pure data (JSON/YAML) — no executable code — making them portable, versionable, and shareable across runtimes.

Upgrading

  1. No config changes required — your existing JSON settings will be auto-migrated on import.
  2. Optional: adopt env-var-based configuration (AIO_*) for easier container/Helm deployments.
  3. Note that any settings exported from v2.1 use new field names and won't re-import into a pre-v2.1 instance.

New Features

  • Gateway API support — connect through gateway APIs (#408) @anders-swanson
  • Pull Ollama models from the GUI — no more CLI-only model management (#420) @ViliTajnic
  • AgentSpec exposed in GUI — configure agent specifications directly from the UI (#441) @gotsysdba
  • Testbed: multi-file QA generation — add more than one file when generating Q&A pairs (#440) @gotsysdba
  • Pre-configured databases for SQL query embedding (#444) @gotsysdba
  • Dynamic registration (DynReg) for databases and models (#437) @gotsysdba
  • IDE integration guide — new documentation for IDE setup @ViliTajnic
  • TLS documentation added @gotsysdba
  • Spring AI upgraded to 2.0.0-M2 @ldemarchis

Bug Fixes

  • Fixed AIO startup delays (#431)
  • Five-bug fix: Ollama embed detection, :latest tag lookup, DB usable reset on import, DB alias sync, testbed 503 crash
  • Testbed: fail fast with 503 when CORE DB is unavailable on generate
  • CORE DB connectivity issue resolved
  • 503 regression fixed with additional test coverage
  • Small Ollama models disabled by default to avoid IaC issues
  • Spring AI LOGGER bug resolved
  • Legacy settings import edge cases resolved (#435)

Maintenance & Security

  • Bumped Packages
  • CPU optimization for small models (#161)
  • Versioned documentation infrastructure
  • Improved logging
  • Test suite rewritten (unit tests replaced with integration tests)

New Contributors

Full Changelog: v2.0.3...v2.1.0

v2.0.3

13 Feb 09:29
b50cbdc

Choose a tag to compare

What's Changed

Full Changelog: v2.0.2...v2.0.3

v2.0.2

03 Feb 14:29
4896fbc

Choose a tag to compare

What's Changed

Full Changelog: v2.0.1...v2.0.2

v2.0.1

30 Jan 17:34
ca75ea8

Choose a tag to compare

What's Changed

Full Changelog: v2.0.0...v2.0.1

v2.0.0

27 Jan 14:04
a68eb22

Choose a tag to compare

Major Release

This is a major release with breaking changes; please review these release notes for more information.

What's Changed

  • MCP Capabilities – The AI Optimizer and Toolkit now function as both an MCP client and server.
  • Prompts – Fully accessible via MCP; all prompts are now exposed, giving users more granular control.
  • SelectAI Replacement – Replaced by SQLcl MCP for improved SQL interaction.
  • Multi-Agent Graph – Enables combining Vector Search with NL2SQL for more sophisticated queries.
  • Infrastructure as Code (IaC) – Updates applied for improved deployment and management.
  • Tests – Unit and integration tests have been restructured and expanded for better coverage.
  • Dependencies Upgraded

Breaking Changes

  • Settings exported pre-2.0 will not work with 2.0+

Contributors

Full Changelog: v1.3.1...v2.0.0

v1.3.1

28 Nov 11:19
d2e2fb0

Choose a tag to compare

Breakage

Previous saved configurations will no longer be able to be imported. This is due to the restructuring of prompts to use MCP.

What's Changed

What's New

What's Removed

  • SelectAI (to be replaced by SQLcl MCP for unstructured queries) @gotsysdba

New Contributors

Full Changelog: v1.3.0...v1.3.1

v1.3.0

22 Oct 13:23
8c02efd

Choose a tag to compare

What's Changed

  • Instance/Workload Principal patch for LiteLLM access to OCI GenAI Models
  • Additional IaC Functionality Added
  • Minor GUI bug fixes

Full Changelog: v1.2.0...v1.3.0

v1.2.2

02 Oct 14:02
f20febc

Choose a tag to compare

Minor fixes to K8s deployment:

  • OCI bucket access w/Instance Princpals
  • start.sh for SpringAI Download
  • patch OraOperator

Full Changelog: v1.2.1...v1.2.2