1. ProfileAttributes

This class defines attributes to manage and configure the behavior of the AI profile. The ProfileAttributes objects are created by select_ai.ProfileAttributes().

class select_ai.ProfileAttributes(annotations: str | None = None, case_sensitive_values: bool | None = None, comments: bool | None = None, constraints: str | None = None, conversation: bool | None = None, credential_name: str | None = None, enable_custom_source_uri: bool | None = None, enable_sources: bool | None = None, enable_source_offsets: bool | None = None, enforce_object_list: bool | None = None, max_tokens: int | None = 1024, object_list: List[Mapping] | None = None, object_list_mode: str | None = None, provider: Provider | None = None, seed: str | None = None, stop_tokens: str | None = None, streaming: str | None = None, temperature: float | None = None, vector_index_name: str | None = None)

Use this class to define attributes to manage and configure the behavior of an AI profile

Parameters:
  • comments (bool) – True to include column comments in the metadata used for generating SQL queries from natural language prompts.

  • constraints (bool) – True to include referential integrity constraints such as primary and foreign keys in the metadata sent to the LLM.

  • conversation (bool) – Indicates if conversation history is enabled for a profile.

  • credential_name (str) – The name of the credential to access the AI provider APIs.

  • enforce_object_list (bool) – Specifies whether to restrict the LLM to generate SQL that uses only tables covered by the object list.

  • max_tokens (int) – Denotes the number of tokens to return per generation. Default is 1024.

  • object_list (List[Mapping]) – Array of JSON objects specifying the owner and object names that are eligible for natural language translation to SQL.

  • object_list_mode (str) – Specifies whether to send metadata for the most relevant tables or all tables to the LLM. Supported values are - ‘automated’ and ‘all’

  • provider (select_ai.Provider) – AI Provider

  • stop_tokens (str) – The generated text will be terminated at the beginning of the earliest stop sequence. Sequence will be incorporated into the text. The attribute value must be a valid array of string values in JSON format

  • temperature (float) – Temperature is a non-negative float number used to tune the degree of randomness. Lower temperatures mean less random generations.

  • vector_index_name (str) – Name of the vector index