Skip to content

About

Ask your enterprise data a question in plain language and get governed, deterministic SQL back, compiled from a business-vocabulary semantic layer instead of guessed from raw schema. Includes the open ASK specification and the Onibex Agentic Semantic Knowledge Platform. Source-available; commercial license available.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

1 watching

Forks

Repository files navigation

Onibex ASK, Agentic Semantic Knowledge. Plain-language questions in, governed deterministic SQL out

Onibex Agentic Semantic Knowledge (ASK)

Ask your enterprise data a question in plain language. Get governed, deterministic SQL back, compiled from a business-vocabulary semantic layer and never guessed from raw schema.

Quick start · Where to start · Manual · Specification · FAQ · Support

Specification: ask-spec 1.0 Platform: 1.1.0 Source-available: PolyForm Strict or Free Trial SQL engines: 10

"Based on open sales orders for material ID TG12, do we have enough stock to cover that demand?"

A business user types that into ASK Chat. The question names no table, and answering it takes two things the business tracks separately: what has been ordered, and what is on the shelf. ASK resolves open sales orders, material and stock against a curated semantic layer, computes the join between them deterministically, compiles SQL in your database's own dialect, runs it, and answers.

ASK Chat answering a stock-coverage question: the written answer, the key figures, the results table, and the generated SQL joining two Gold Data Products

The two Data Products are Open Order Tracker and Inventory Position. The join between them was computed, not written, and the SQL is on screen so you can check.


Authored in ASK Studio, asked in ASK Chat

That answer was possible because somebody had already written down what open sales order and stock mean. Authoring is the other half of the product, and it happens in ASK Studio: the workspaces and business domains that scope a question, the Data Products that answer it, and the publish step that makes them queryable.

ASK Studio: a business domain with its Data Products, then the domain canvas showing the declared relationships between them

The relationships on that canvas are declared, not inferred. That is what lets the join behind the answer above be computed by cost rather than written by the model.


Built around two halves

What it is
Onibex Agentic Semantic Knowledge Definition · definition/ The published specification (ask-spec 1.0): a vendor-neutral YAML standard for describing AI-ready data products across Bronze, Silver and Gold. Runtime-neutral, so any vendor can adopt it.
Onibex Agentic Semantic Knowledge Platform · platform/ The product that implements the standard end to end. Author the semantic layer in ASK Studio, then ask questions of it in ASK Chat.

What that changes, next to a tool that reads your database schema directly:

Most text-to-SQL tools ASK
The table and column names Shown to the model, which may invent one Never shown. The model picks from resolved Data Products
The join between two tables Written by the model, by plausibility Computed: the shortest declared path, by cost
What "open order" means Whatever the model infers today A definition you wrote, versioned in your git
What one question can reach The whole schema Only what a workspace allows

Why a semantic layer rather than the schema itself is Why not just point an LLM at the schema?. How much each engine computes rather than concedes to the model is The three chat engines.


Quick start

Docker with Compose v2, and a few minutes for the first build.

git clone https://github.com/Onibex/agentic-semantic-knowledge-ask.git
cd agentic-semantic-knowledge-ask/platform
cp .env.example .env
docker compose up -d

Two values in .env have to be set before that last command gets you anywhere. Getting Started walks them, and the rest of the path from an empty machine to a real answer, in about 45 minutes. Install and run the platform has every variable, the ports, the health checks and what to do when a service will not start.


How to use this repository

  1. Go to the folder for what you want: definition/ for the specification, platform/ for the product.
  2. Start with the README.md inside it. Every folder has one, and it is the index for that folder.
  3. Open the page you need from there.

Everything is Markdown and renders on GitHub. Nothing has to be downloaded to be read.


Contents

definition/, the published specification

  • The layer specifications. The normative Bronze, Silver and Gold rules, and which layer the agent reaches for first
  • Reference examples. Thirty-one Data Products drawn from SAP SD and MM: a shape to copy, not a catalog to deploy

platform/, the product

The manual is the full index: every page, grouped by what you are trying to do.


Where to start

You are… Start here
Evaluating ASK This page, then Concepts and architecture
Here to see the product Using the Chat. Ask a question, read the answer, see the SQL behind it
Asking how governed the answers are The three chat engines. What is computed rather than guessed
Trying it for the first time Getting Started. One guided path, empty machine to a real answer, about 45 minutes
Installing it on one machine Install and run the platform. Every variable, the startup order, the gotchas
Deploying it on a cluster Deploy on Kubernetes with Helm. Six steps, one chart, the published images
Configuring it Configure the platform first · ASK Setup. The database, the model provider, identity
Authoring a semantic layer Author the semantic layer · ASK Studio. The nine flows, and the order to read them in
Reading the whole manual The manual. Every page, grouped by what you are trying to do
Adopting the specification Onibex Agentic Semantic Knowledge Definition
An AI agent llms.txt

FAQ

Is my data sent to the model?

To write SQL, the agent is shown your semantic layer, the Data Products you authored, never the raw schema. Query results are sent: once the SQL has run, the rows go to the model to be written up as the answer you read. The model is whichever one you configured in ASK Setup, and it can be a self-hosted one.

Do I need SAP?

No. Nothing in the specification is SAP-specific. The reference examples are SAP SD and MM because that is where ASK was built, and it is where a semantic layer earns the most, but a CREATE TABLE on PostgreSQL is a valid starting point.

Which databases does it work with?

Ten, each with its own SQL generator and its own execution adapter rather than a generic fallback: SAP HANA, PostgreSQL, Snowflake, Databricks, Google BigQuery, ClickHouse, Microsoft SQL Server, Microsoft Fabric, IBM Db2 and Presto. ASK does not move or copy your data; it connects to the engine you already run and compiles to that engine's dialect. Adding one is Connect a database.

Which models can I use?

SAP AI Core for managed models, or any LiteLLM provider: Anthropic, OpenAI, AWS Bedrock, Databricks and others. Chosen in ASK Setup; changing one reloads the affected services rather than needing a redeploy.

Do I have to write the YAML by hand?

No, and mostly you should not. Import a CREATE TABLE and let AI draft the layer, ingest SAP metadata through OneConnect, or author in the UI, then review the diff. See Add Data Products.

Do I have to author a semantic layer at all?

Yes, and it is the one honest condition. ASK's determinism comes from the contract: if nobody authors one, there is nothing for it to compile against. The drafting is assisted, the review is not.

Is this open source?

No. Source-available. Read it, evaluate it, study it, build against it. Production use needs a commercial licence. The distinction is real and we would rather you learn it here than after a procurement review.

How long does an answer take?

Between roughly fifteen and sixty seconds, depending on the engine. That is a real trade, and The three chat engines is where it is laid out rather than hidden.


License, contributing and support

Source-available, not open source. Both tracks are licensed under PolyForm Strict 1.0.0 OR PolyForm Free Trial 1.0.0, at your option: noncommercial use, research, evaluation and personal study are permitted indefinitely under Strict, or you can evaluate the software for your business for less than 32 consecutive calendar days under Free Trial, for example via docker compose up. Production or any other commercial use requires a commercial license from Onibex.

Found something inaccurate or confusing in the documentation? That is a bug, and reporting it is a contribution.

"Onibex", "ASK", and the Onibex logos are trademarks of Onibex, LLC and are excluded from both licenses. Third-party software referenced but not redistributed here, including SAP HANA, SAP BTP and SAP AI Core (trademarks of SAP SE), OpenSearch (a registered trademark of Amazon Web Services), Keycloak (a trademark of Red Hat, Inc.), Apache Kafka (a trademark of the Apache Software Foundation) and CONFLUENT (a registered trademark of Confluent, Inc.), is listed in THIRD-PARTY-NOTICES.md. All marks are used for identification only.


Maintained by Onibex, LLC, an SAP silver partner and a Confluent gold partner building real-time SAP data hyperconnectivity for the enterprise.

"Tables don't think. Schemas don't reason. ASK is what an agent reads when it needs to know what your data means."

About

Ask your enterprise data a question in plain language and get governed, deterministic SQL back, compiled from a business-vocabulary semantic layer instead of guessed from raw schema. Includes the open ASK specification and the Onibex Agentic Semantic Knowledge Platform. Source-available; commercial license available.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages