Knowledge and Explore¶
The official MOI Python SDK and Go SDK expose NL2SQL knowledge entries, SQL execution, and streamed Explore/Data Asking analysis. Python passes dictionaries to RawClient; Go uses RawClient with public request types. Their method sets closely correspond.
In the current public SDKs, “knowledge” means an NL2SQL knowledge entry, not a complete Knowledge Base object from the product UI. The SDKs do not currently expose dedicated methods to create a knowledge base, bind its sources, edit file chunks, or switch chunk versions. Use the flows in the Knowledge Bases guide for those operations. This section documents only capabilities verified in the two SDK repositories.
Choose a path¶
Goal |
Start here |
|---|---|
Save business terms, rules, or examples for NL2SQL |
|
Understand the boundary between Catalog sources and NL2SQL entries |
|
Prepare the data scope for an Explore run |
|
Consume retrieval, SQL, and answer events |
Clients and capabilities¶
Capability |
Python |
Go |
|---|---|---|
Create a client |
|
|
NL2SQL knowledge entries |
Six methods including |
Six methods including |
Execute an SQL operation |
|
|
Stream data analysis |
|
|
Cancel analysis |
|
|
On success, Python RawClient returns the data portion of the service envelope; Go returns a typed response. Handle business and HTTP failures separately. See SDK fundamentals for installation, authentication, and common error conventions.
A useful integration boundary¶
Keep knowledge-entry management and online queries in separate application modules:
The management module owns Catalog objects and NL2SQL knowledge entries.
The query module accepts only validated data scopes and owns sessions, streaming events, cancellation, citations, and failures.
This prevents an online request from changing knowledge configuration and makes entry changes easier to review and regression-test.