Tutorials
Build shared upload rules, document workflows and AI features with ADM. Each lesson adds to the same working example. For individual API topics, use the developer guides.
The SQL scripts are in the public ADM repository
and in the examples folder of the delivery archive. Recorded output comes from real runs.
At a glance
Section titled “At a glance”The courses in detail
Section titled “The courses in detail”Build workflows on hooks
Section titled “Build workflows on hooks”An ADM hook applies the same rule across upload paths: the ADM APEX app, REST API, and applications using ADM’s document API. A quick validation can refuse an upload immediately. For shared analysis that can finish later, the hook queues work for a background worker. If one application needs analysis before its next step, it can call that analysis directly in its own upload flow.
You build three useful results without changing ADM’s packages:
- Refuse blocked file types and empty files, and keep a record of the refusal.
- Add category tags and flag files with matching checksums as
duplicate-of. The sample uses a 12-byte text file to demonstrate the match. - Give every new project the same starting folders, regardless of which application creates it.
The queue supports these workflows: it lets uploads finish before processing, keeps pending work, and allows failed processing to be retried. You choose when to use it before building it. The course also shows how to start the worker automatically.
Use a test schema with ADM installed. The recordings use Oracle Database 26ai Free; the scripts target 19c or later, but execution on 19c has not been verified.
Classify uploads with an LLM
Section titled “Classify uploads with an LLM”This course adds a workflow to the hooks demo. A language model reads each new PDF or image and decides its document type. The workflow writes the type into ADM as a tag and as annotations, and it keeps the model’s reason in a table.
You build these results:
- Classify a new upload from a hook, without making the upload wait for the model.
- Measure the classifier against labelled files, find a wrong answer that took effect on its own, and correct it by changing a type description.
- Keep what a person decided when a document is classified again, classify a new version, and record a file that the model cannot read.
- Review the verdicts that wait for a person, accept them with the model’s type or another type, and take a release back.
- Estimate the tokens of a backfill and classify the documents that were in ADM before the classifier.
The course covers the ADM side. It links to the UC AI tutorials for how structured output works. Five lessons, about 115 minutes.
Ask questions across your documents
Section titled “Ask questions across your documents”This course builds a chat page that answers from the contracts and policies of a sample company. The answers come from RAG collections of ADM documents, and every passage passes the ADM access check of the signed-in user.
You build these results:
- Index two groups of documents in RAG collections and ask one of them a question.
- Register a search tool for each collection, and run an agent that picks the collection and answers follow-up questions.
- Put the agent in an APEX page with the UC AI Chat plug-in, and hand the signed-in user to ADM.
- Show with two users that a user gets only the passages of documents that ADM lets them see, why a restricted user sees “nothing found”, and what the trace of a run shows.
- Measure retrieval and answers with a question list, store the score threshold that the measurement supports, and make sure that the stored search settings reach the agent.
- Let an agent in the schema of another application search the collections through one granted package that searches as a fixed ADM user.
The course covers the ADM side: collections, access control and identity. It links to the UC AI tutorials for how agents, tools and the chat region work. Seven lessons, about 3 hours and 30 minutes.
Extract data from PDF forms
Section titled “Extract data from PDF forms”This course configures the form extraction of the AI Pack. ADM reads the values of PDF forms and images into ADM annotations and into a table of your application. Each form is configuration, not code: markers that find it, rules for the prompt, field patterns, and check expressions on the values. You can configure it in the form extraction manager or with SQL. The course uses OpenAI, and the model is a setting: you can use another provider, including an Ollama server that you operate.
You build these results:
- Configure one form and extract its fields and its line table, with a line pattern for long tables.
- Add check expressions, measure a form against a test set, and count the wrong results that pass your checks.
- Add a form and a document type, and make sure that no two forms match one document.
- Read images with a vision model, choose the models with a measurement, and size the context for an Ollama server that you operate.
- Let ADM extract the new documents of an inbox folder in the background, copy the accepted invoices into your own table with a hook, approve the documents that need a person, and watch the review rate.
- Read a summary of a test with five other document types: what carries over from invoices, and which layouts need the file setting.
Six lessons, about two and a half hours. Lesson 6 is a short read with no steps to run.