Skip to content

Oracle Database 26ai: one-call load of the prebuilt ONNX embedding model (in-database embeddings) - #370

Merged
fede-kamel merged 2 commits into
mainfrom
docs/indb-onnx-load
Oct 27, 2026
Merged

fede-kamel merged 2 commits into
mainfrom
docs/indb-onnx-load

Conversation

@fede-kamel

Copy link
Copy Markdown
Member

Summary

Stacked on #369. The Oracle Database 26ai page and notebook 41's prerequisites now show the one-time model load that makes the fully in-database path work on Autonomous Database: a single DBMS_VECTOR.LOAD_ONNX_MODEL_CLOUD call against Oracle's prebuilt all-MiniLM-L12-v2 (pre-authenticated URL from the Oracle Machine Learning blog, no credential), giving a 384-dimension embedding model inside the database; the on-premises directory-object path stays documented next to it.

Verification

Autonomous Database 26ai in eu-frankfurt-1: the load took six seconds (user_mining_models shows ALL_MINILM_L12_V2 / EMBEDDING / ONNX, vector_embedding(...) returns 384 dimensions) and notebook 41 then runs the whole chunk, embed and VECTOR_DISTANCE search inside the database with no external embedding call. mkdocs build --strict, markdownlint and ruff clean.

…s carry their own numbers

OracleAgentMemoryManager defaults to oci/cohere.embed-v4.0 and
oci/openai.gpt-4.1, but litellm's oci/ driver (which oracleagentmemory's
Embedder and Llm wrap) does not read ~/.oci/config, so on any machine
that authenticates with an OCI profile or `oci session authenticate`
token the manager failed with "Missing required parameters: oci_user,
oci_fingerprint, ...". For oci/... specs the manager now derives the
litellm kwargs itself: a SecurityTokenSigner or API-key Signer from the
profile named by OCI_SESSION_PROFILE / OCI_PROFILE (instance and
resource principals via OCI_AUTH_TYPE), plus OCI_REGION and
OCI_COMPARTMENT_ID. litellm's own OCI_USER / OCI_KEY_FILE variables,
when set, are left in charge; `litellm_kwargs=` overrides everything;
`oci_litellm_auth()` is public for callers that build the client
directly. The manager passes MemoryExtractionConfig where
oracleagentmemory provides it instead of the deprecated inline flag.

Notebook 44 is OCI-only by default (LOCUS_OAM_EMBEDDER / LOCUS_OAM_LLM
still switch providers), its diagnostic probe uses the same auth, and
its docstring, banner, thread ids and table prefix carry its own
number. Notebooks 36 to 43 still carried titles, banners, self-filenames
and table names from an earlier numbering (02, 03, 04, 05, 06, 07, 09,
10, 12, 37, 80); they now say 36 to 43, and their cross-references point
at the current numbers.

Verified against a live Autonomous Database 26ai in eu-frankfurt-1 with
a session-token profile and no OpenAI key: notebooks 37 to 44 pass
(44 recalls Alice's preference in a new thread through Oracle agent
memory); the Oracle RAG integration suite passes (6, 1 skip for the
OpenAI-embedding variant); unit tests, mypy and ruff clean.

Signed-off-by: Federico Kamelhar <federico.kamelhar@oracle.com>
…us Database

One DBMS_VECTOR.LOAD_ONNX_MODEL_CLOUD call against Oracle's prebuilt
all-MiniLM-L12-v2 (pre-authenticated URL, no credential) puts a
384-dimension embedding model in the database; the Oracle Database 26ai
page and notebook 41's prerequisites now say so, next to the on-premises
directory-object path. Verified on an Autonomous Database 26ai in
eu-frankfurt-1: the load took six seconds and notebook 41 then runs the
fully in-database chunk, embed and search path.

Signed-off-by: Federico Kamelhar <federico.kamelhar@oracle.com>
@oracle-contributor-agreement oracle-contributor-agreement Bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Oct 27, 2026
@fede-kamel
fede-kamel merged commit 01261cb into main Oct 27, 2026
16 checks passed
@fede-kamel
fede-kamel deleted the docs/indb-onnx-load branch October 27, 2026 21:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

OCA Verified All contributors have signed the Oracle Contributor Agreement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant