Skip to content

Releases: oracle/java-select-ai

Select AI for Java 1.0.0

Choose a tag to compare

@github-actions github-actions released this 30 Sep 19:07
08eb9b7

Select AI for Java 1.0.0

Initial public release

Release Summary

This is the initial public release of Select AI for Java, enabling Java applications to use Oracle Autonomous AI Database Select AI functionality from the DBMS_CLOUD_AI PL/SQL package.

Source repository: oracle/java-select-ai

Highlights

  • Public Java API under com.oracle.database.selectai.
  • Typed models under com.oracle.database.selectai.model.
  • SelectAI client for profiles, credentials, conversations, and vector indexes.
  • Profile operations for SQL generation, execution, narration, explanation, chat, summarization, translation, feedback, and synthetic-data generation.
  • Context-aware conversations through Conversation and Session.
  • Vector-index lifecycle and metadata operations for retrieval-augmented generation.
  • Credential creation and deletion.
  • Administrative operations through DatabaseAdmin.
  • JDBC connection management through DataSource or SDK-owned connections created from DbConnectionConfig.
  • Standalone DbConnection lifecycle API.
  • Configurable JDBC statement query timeout through SelectAIOptions.
  • Input validation, JDBC exception wrapping, and resource lifecycle management.

Compatibility

  • Validated with Oracle Autonomous AI Database 26ai.
  • Validated with Oracle Autonomous AI Database 19c.
  • Other Oracle Database platforms may work with the SDK but have not been validated.
  • Requires JDK 17 or later.
  • Maven 3.8 or later is recommended for building.

Distribution and Installation

Select AI for Java version 1.0.0 is available from Maven Central.

Add the SDK to a Maven application with:

<dependency>
    <groupId>com.oracle.database.selectai</groupId>
    <artifactId>select-ai</artifactId>
    <version>1.0.0</version>
</dependency>

The Maven Central artifact page provides the published JAR, POM, source JAR, Javadoc JAR, signatures, and repository checksums.

To build the SDK from source:

mvn clean install

The locally generated SDK JAR is available at:

target/select-ai-1.0.0.jar

Applications should use the Maven dependency so Maven resolves the SDK's transitive runtime dependencies. The SDK does not include an SLF4J logging provider; applications should configure their preferred SLF4J 2.x provider.

Known Limitations

  • JDK 17 or later is required.
  • Maven 3.8 or later is recommended for building.
  • The SDK has been validated with Oracle Autonomous AI Database 26ai and Oracle Autonomous AI Database 19c. Other Oracle Database platforms may work with the SDK but have not been validated.
  • AI provider model capabilities, AI profile configuration, and the database release determine the available functionality and result quality.
  • Some samples require database profiles, credentials, schema objects, Object Storage content, provider configuration, or administrative privileges. Review the [Samples guide](https://github.com/oracle/java-select-ai/blob/v1.0.0/samples/README.md) and the Javadoc for each sample before running it.
  • These resources must be prepared in the user's database or cloud environment; the SDK does not create every external dependency automatically.
  • DatabaseAdmin operations require explicitly authorized database privileges.
  • Query timeout is a JDBC statement timeout and is not equivalent to an LLM endpoint timeout, HTTP timeout, or remote request cancellation.
  • Classes under com.oracle.database.selectai.impl are internal implementation details and are not supported customer-facing APIs.

Security and Operational Notes

  • Use least-privilege database users for normal application access.
  • Use DatabaseAdmin only for explicitly authorized administrative workflows.
  • Do not log passwords, private keys, access tokens, credential configurations, prompts, generated responses, or customer content.
  • SQL executed through Select AI runs with the privileges of the connected database user.
  • Prompts, database metadata, and retrieved content may be sent to the configured AI provider according to the selected profile and operation.
  • DataSource mode is recommended for pooled and multi-threaded applications.
  • In DbConnectionConfig mode, the SDK owns the JDBC connection. Use Java's try-with-resources statement so the SelectAI client closes the connection automatically.
try (SelectAI selectAI = SelectAI.create(connectionConfig)) {
    Profile profile = selectAI.profile("MY_PROFILE");
    String response = profile.chat("Show the top five products");
}
  • The SDK does not intentionally log sensitive credential material or customer content. Application owners are responsible for log retention, access control, monitoring, and alerting policies.

Developer Resources

The repository also includes runnable samples, unit tests, integration tests, architecture diagrams, and generated Javadoc.

License

Copyright © 2026 Oracle and/or its affiliates.

This project is licensed under the [Universal Permissive License v1.0](https://oss.oracle.com/licenses/upl/).