Class VectorIndexAttributes

java.lang.Object
com.oracle.database.selectai.model.VectorIndexAttributes

public final class VectorIndexAttributes extends Object
Attribute payload for creating or updating a Select AI vector index.

Vector-index attributes configure the source content, credential, Select AI profile, text chunking, retrieval behavior, vector configuration, and other settings used by Select AI for retrieval-augmented generation (RAG).

For complete runnable sample sources that build VectorIndexAttributes, see CreateVectorIndexSample source and UpdateVectorIndexAttributesSample source.

The SDK performs basic, deterministic validation and normalization where the constraint is part of the Java API contract. Blank string values are normalized to null. The SDK also prevents database-managed attributes from being supplied where they are not allowed. In particular, pipeline_name is generated by Oracle Database for a vector index and cannot be specified when using the create builder; attempting to set it results in an IllegalArgumentException.

The SDK does not duplicate provider-specific, database-version-specific, value-range, or other database-side semantic validation. These validations are delegated to DBMS_CLOUD_AI and Oracle Database. Therefore, an attribute value accepted by the SDK may still be rejected by the database based on the selected profile, vector provider, database version, or other database-side requirements.

Use builder() when constructing attributes for vector-index creation and updateBuilder() when constructing attributes for DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX. Attributes are included in the generated payload only when explicitly set by the caller.

See Also:
  • Method Details

    • builder

      Creates a builder for vector-index create payloads.

      The builder does not inject database default values. Attributes are included in the generated JSON only when explicitly set by the caller. Database-side validation of required and semantically valid attributes is performed by Oracle Database.

      Returns:
      new builder for vector-index create attribute values
    • updateBuilder

      Creates a builder for update payloads.

      Unlike builder(), this builder does not populate create-time defaults such as chunk_size. Set only the attributes intended for DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX.

      Returns:
      new builder for vector-index update attribute values
    • getChunkSize

      Returns the text chunk size.
      Returns:
      configured chunk size
    • getChunkOverlap

      Returns the chunk overlap.
      Returns:
      configured chunk overlap
    • getEnableSources

      Returns whether source citations are enabled.
      Returns:
      enable-sources flag
    • getLocation

      public String getLocation()
      Returns the source document location.
      Returns:
      location URI/path for source content
    • getMatchLimit

      Returns the retrieval match limit.
      Returns:
      configured match limit
    • getObjectStorageCredentialName

      Returns the credential used to read object storage content.
      Returns:
      object storage credential name
    • getPipelineName

      Returns the pipeline name.
      Returns:
      pipeline name, or null when unset
    • getProfileName

      Returns the associated Select AI profile name.
      Returns:
      profile name associated with this vector index
    • getRefreshRate

      Returns the refresh interval in minutes.
      Returns:
      refresh rate in minutes
    • getSimilarityThreshold

      Returns the similarity threshold.
      Returns:
      similarity threshold value
    • getVectorDistanceMetric

      Returns the vector distance metric.
      Returns:
      vector distance metric name
    • getVectorDbProvider

      Returns the vector database provider.
      Returns:
      vector database provider name
    • getVectorDimension

      Returns the configured vector dimension.
      Returns:
      vector dimension, or null when unset
    • getVectorTableName

      Returns the vector table name.
      Returns:
      vector table name, or null when unset
    • toJson

      public String toJson()
      Serializes attributes using DBMS_CLOUD_AI snake_case JSON names.
      Returns:
      JSON representation of this VectorIndexAttributes instance