abacusai.client
Attributes
Exceptions
Default ApiException raised by APIs |
|
Missing parameter error raised by APIs. This is usually raised when a required parameter is missing in the request. |
|
Raised when an invalid parameter is provided. |
|
Raised when an invalid enumeration parameter is provided. |
|
Raised when a payment method is required. |
|
Invalid request error raised by APIs. This is usually raised when the request is invalid or malformed. |
|
Generic permission denied error raised by APIs. This is usually raised when permission is denied. |
|
Permission denied error raised by APIs. This is usually raised when a specific operation is not permitted. |
|
Paid plan required error raised by APIs. This is usually raised when a paid plan is required for an operation. |
|
Generic 404 error raised by APIs. This is usually raised when a resource is not found. |
|
Data not found error raised by APIs. This is usually raised when specific data is not found. |
|
Method not allowed error raised by APIs. This is usually raised when a specific http method is not allowed for a resource. |
|
Exception raised when a timeout occurs during API request. |
|
Exception raised when a conflict occurs during API request. |
|
Exception raised when the entity being created already exists. |
|
Not ready exception raised by APIs. This is usually raised when the operation requested is not ready. |
|
Failed dependency exception raised by APIs. This is usually raised when the operation failed due to a dependency error. |
|
Too many requests exception raised by APIs. This is usually raised when the rate limit for requests has been exceeded. |
|
InstanceNotModifiedError exception raised by APIs. This is usually raised when an instance is not modified. |
|
Gateway timeout error raised by APIs. This is usually raised when a request |
|
Internal server error raised by APIs. This is usually raised when the server |
|
Error class to indicate that the trigger is unsuccessful for autonomous agents |
Classes
Response object for agent to support attachments, section data and normal data |
|
Options for configuring the ApiClient |
|
Factory class to build exceptions raised by APIs |
|
Abstract Base API Client |
|
Abacus.AI Read Only API Client. Only contains GET methods |
|
Abacus.AI API Client |
Functions
|
Tests if an object is JSON serializable. |
|
|
|
|
|
|
|
|
|
|
|
Module Contents
- abacusai.client.DEFAULT_SERVER = 'https://api.abacus.ai'
- abacusai.client._request_context
- abacusai.client._is_json_serializable(object)
Tests if an object is JSON serializable.
- Parameters:
object (any) – The object to test.
- Returns:
True if the object is JSON serializable, False otherwise.
- Return type:
- async abacusai.client.sse_asynchronous_generator(endpoint, headers, body)
- abacusai.client._requests_retry_session(retries=5, backoff_factor=0.1, status_forcelist=(502, 503, 504), session=None, retry_500=False)
- Parameters:
retry_500 (bool)
- abacusai.client._discover_service_url(service_discovery_url, client_version, deployment_id, deployment_token)
- abacusai.client._cached_endpoints
- class abacusai.client.AgentResponse(*args, **kwargs)
Response object for agent to support attachments, section data and normal data
- data_list = []
- section_data_list = []
- to_dict()
Get a dict representation of the response object
- __getattr__(item)
- class abacusai.client.ClientOptions(exception_on_404=True, server=DEFAULT_SERVER)
Options for configuring the ApiClient
- Parameters:
- exception_on_404
- server
- exception abacusai.client.ApiException(message, http_status, exception=None, request_id=None)
Bases:
Exception
Default ApiException raised by APIs
- Parameters:
- message
- http_status
- exception
- request_id
- __str__()
Return str(self).
- exception abacusai.client.MissingParameterError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Missing parameter error raised by APIs. This is usually raised when a required parameter is missing in the request.
- exception abacusai.client.InvalidParameterError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Raised when an invalid parameter is provided.
- exception abacusai.client.InvalidEnumParameterError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Raised when an invalid enumeration parameter is provided.
- exception abacusai.client.PaymentMethodRequired(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Raised when a payment method is required.
- exception abacusai.client.InvalidRequest(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Invalid request error raised by APIs. This is usually raised when the request is invalid or malformed.
- exception abacusai.client.GenericPermissionDeniedError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Generic permission denied error raised by APIs. This is usually raised when permission is denied.
- exception abacusai.client.PermissionDeniedError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Permission denied error raised by APIs. This is usually raised when a specific operation is not permitted.
- exception abacusai.client.PaidPlanRequired(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Paid plan required error raised by APIs. This is usually raised when a paid plan is required for an operation.
- exception abacusai.client.Generic404Error(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Generic 404 error raised by APIs. This is usually raised when a resource is not found.
- exception abacusai.client.DataNotFoundError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Data not found error raised by APIs. This is usually raised when specific data is not found.
- exception abacusai.client.MethodNotAllowed(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Method not allowed error raised by APIs. This is usually raised when a specific http method is not allowed for a resource.
- exception abacusai.client.RequestTimeoutError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Exception raised when a timeout occurs during API request.
- exception abacusai.client.ConflictError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Exception raised when a conflict occurs during API request.
- exception abacusai.client.AlreadyExistsError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Exception raised when the entity being created already exists.
- exception abacusai.client.NotReadyError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Not ready exception raised by APIs. This is usually raised when the operation requested is not ready.
- exception abacusai.client.FailedDependencyError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Failed dependency exception raised by APIs. This is usually raised when the operation failed due to a dependency error.
- exception abacusai.client.TooManyRequestsError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Too many requests exception raised by APIs. This is usually raised when the rate limit for requests has been exceeded.
- exception abacusai.client.InstanceNotModifiedError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
InstanceNotModifiedError exception raised by APIs. This is usually raised when an instance is not modified.
- exception abacusai.client.GatewayTimeoutError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Gateway timeout error raised by APIs. This is usually raised when a request times out waiting for a response from the gateway.
- exception abacusai.client.InternalServerError(message, http_status, exception=None, request_id=None)
Bases:
ApiException
Internal server error raised by APIs. This is usually raised when the server encounters an unexpected error while processing the request.
- exception abacusai.client.UnsuccessfulTrigger(message)
Bases:
ApiException
Error class to indicate that the trigger is unsuccessful for autonomous agents and avoids execution of the further workflow.
- class abacusai.client._ApiExceptionFactory
Factory class to build exceptions raised by APIs
- class abacusai.client.BaseApiClient(api_key=None, server=None, client_options=None, skip_version_check=False, include_tb=False)
Abstract Base API Client
- Parameters:
api_key (str) – The api key to use as authentication to the server
server (str) – The base server url to use to send API requets to
client_options (ClientOptions) – Optional API client configurations
skip_version_check (bool) – If true, will skip checking the server’s current API version on initializing the client
include_tb (bool)
- client_version = '1.4.20'
- api_key
- notebook_id
- pipeline_id
- web_version = None
- api_endpoint = None
- prediction_endpoint = None
- proxy_endpoint = None
- client_options
- server
- cache_scope = None
- _cache
- service_discovery_url = None
- _get_prediction_endpoint(deployment_id, deployment_token)
- _get_proxy_endpoint(deployment_id, deployment_token)
- _get_streaming_endpoint(streaming_token, model_id=None, feature_group_id=None)
- _clean_api_objects(obj)
- _call_api(action, method, query_params=None, body=None, files=None, parse_type=None, streamable_response=False, server_override=None, timeout=None, retry_500=False, data=None)
- Parameters:
retry_500 (bool)
- _proxy_request(name, method='POST', query_params=None, body=None, data=None, files=None, parse_type=None, is_sync=False, streamable_response=False)
- _build_class(return_class, values)
- _request(url, method, query_params=None, headers=None, body=None, files=None, stream=False, timeout=None, retry_500=False, data=None)
- Parameters:
retry_500 (bool)
- _poll(obj, wait_states, delay=15, timeout=300, poll_args={}, status_field=None)
- _upload_from_pandas(upload, df, clean_column_names=False)
- Return type:
- _upload_from_spark(upload, df)
- Return type:
- class abacusai.client.ReadOnlyClient(api_key=None, server=None, client_options=None, skip_version_check=False, include_tb=False)
Bases:
BaseApiClient
Abacus.AI Read Only API Client. Only contains GET methods
- Parameters:
api_key (str) – The api key to use as authentication to the server
server (str) – The base server url to use to send API requets to
client_options (ClientOptions) – Optional API client configurations
skip_version_check (bool) – If true, will skip checking the server’s current API version on initializing the client
include_tb (bool)
- list_api_keys()
Lists all of the user’s API keys
- list_organization_users()
Retrieves a list of all platform users in the organization, including pending users who have been invited.
- describe_user()
Retrieve the current user’s information, such as their name, email address, and admin status.
- Returns:
An object containing information about the current user.
- Return type:
- list_organization_groups()
Lists all Organizations Groups
- Returns:
A list of all the organization groups within this organization.
- Return type:
- describe_organization_group(organization_group_id)
Returns the specific organization group passed in by the user.
- Parameters:
organization_group_id (str) – The unique identifier of the organization group to be described.
- Returns:
Information about a specific organization group.
- Return type:
- describe_webhook(webhook_id)
Describe the webhook with a given ID.
- list_deployment_webhooks(deployment_id)
List all the webhooks attached to a given deployment.
- list_use_cases()
Retrieves a list of all use cases with descriptions. Use the given mappings to specify a use case when needed.
- describe_problem_type(problem_type)
Describes a problem type
- Parameters:
problem_type (str) – The problem type to get details on
- Returns:
The problem type requirements
- Return type:
- describe_use_case_requirements(use_case)
This API call returns the feature requirements for a specified use case.
- Parameters:
use_case (str) – This contains the Enum String for the use case whose dataset requirements are needed.
- Returns:
The feature requirements of the use case are returned, including all the feature groups required for the use case along with their descriptions and feature mapping details.
- Return type:
- describe_project(project_id)
Returns a description of a project.
- list_projects(limit=100, start_after_id=None)
Retrieves a list of all projects in the current organization.
- get_project_feature_group_config(feature_group_id, project_id)
Gets a feature group’s project config
- Parameters:
- Returns:
The feature group’s project configuration.
- Return type:
- validate_project(project_id, feature_group_ids=None)
Validates that the specified project has all required feature group types for its use case and that all required feature columns are set.
- Parameters:
project_id (str) – The unique ID associated with the project.
feature_group_ids (List) – The list of feature group IDs to validate.
- Returns:
The project validation. If the specified project is missing required columns or feature groups, the response includes an array of objects for each missing required feature group and the missing required features in each feature group.
- Return type:
- infer_feature_mappings(project_id, feature_group_id)
Infer the feature mappings for the feature group in the project based on the problem type.
- Parameters:
- Returns:
A dict that contains the inferred feature mappings.
- Return type:
- verify_and_describe_annotation(feature_group_id, feature_name=None, doc_id=None, feature_group_row_identifier=None)
Get the latest annotation entry for a given feature group, feature, and document along with verification information.
- Parameters:
feature_group_id (str) – The ID of the feature group the annotation is on.
feature_name (str) – The name of the feature the annotation is on.
doc_id (str) – The ID of the primary document the annotation is on. At least one of the doc_id or feature_group_row_identifier must be provided in order to identify the correct annotation.
feature_group_row_identifier (str) – The key value of the feature group row the annotation is on (cast to string). Usually the feature group’s primary / identifier key value. At least one of the doc_id or feature_group_row_identifier must be provided in order to identify the correct annotation.
- Returns:
The latest annotation entry for the given feature group, feature, document, and/or annotation key value. Includes the verification information.
- Return type:
- get_annotations_status(feature_group_id, feature_name=None, check_for_materialization=False)
Get the status of the annotations for a given feature group and feature.
- Parameters:
- Returns:
The status of the annotations for the given feature group and feature.
- Return type:
- get_feature_group_schema(feature_group_id, project_id=None)
Returns a schema for a given FeatureGroup in a project.
- get_point_in_time_feature_group_creation_options()
Returns the options that can be used to generate PIT features.
- Returns:
List of possible generated aggregation function options.
- Return type:
- describe_feature_group(feature_group_id)
Describe a Feature Group.
- Parameters:
feature_group_id (str) – A unique string identifier associated with the feature group.
- Returns:
The feature group object.
- Return type:
- describe_feature_group_by_table_name(table_name)
Describe a Feature Group by its table name.
- Parameters:
table_name (str) – The unique table name of the Feature Group to look up.
- Returns:
The Feature Group.
- Return type:
- list_feature_groups(limit=100, start_after_id=None, feature_group_template_id=None, is_including_detached_from_template=False)
List all the feature groups
- Parameters:
limit (int) – The number of feature groups to retrieve.
start_after_id (str) – An offset parameter to exclude all feature groups up to a specified ID.
feature_group_template_id (str) – If specified, limit the results to feature groups attached to this template ID.
is_including_detached_from_template (bool) – When feature_group_template_id is specified, include feature groups that have been detached from that template ID.
- Returns:
All the feature groups in the organization associated with the specified project.
- Return type:
- describe_project_feature_group(project_id, feature_group_id)
Describe a feature group associated with a project
- Parameters:
- Returns:
The project feature group object.
- Return type:
- list_project_feature_groups(project_id, filter_feature_group_use=None, limit=100, start_after_id=None)
List all the feature groups associated with a project
- Parameters:
project_id (str) – The unique ID associated with the project.
filter_feature_group_use (str) – The feature group use filter, when given as an argument only allows feature groups present in this project to be returned if they are of the given use. Possible values are: ‘USER_CREATED’, ‘BATCH_PREDICTION_OUTPUT’.
limit (int) – The maximum number of feature groups to be retrieved.
start_after_id (str) – An offset parameter to exclude all feature groups up to a specified ID.
- Returns:
All the Feature Groups in a project.
- Return type:
- list_python_function_feature_groups(name, limit=100)
List all the feature groups associated with a python function.
- Parameters:
- Returns:
All the feature groups associated with the specified Python function ID.
- Return type:
- get_execute_feature_group_operation_result_part_count(feature_group_operation_run_id)
Gets the number of parts in the result of the execution of fg operation
- download_execute_feature_group_operation_result_part_chunk(feature_group_operation_run_id, part, offset=0, chunk_size=10485760)
Downloads a chunk of the result of the execution of feature group operation
- Parameters:
- Return type:
- update_feature_group_version_limit(feature_group_id, version_limit)
Updates the version limit for the feature group.
- Parameters:
- Returns:
The updated feature group.
- Return type:
- get_feature_group_version_export_download_url(feature_group_export_id)
Get a link to download the feature group version.
- Parameters:
feature_group_export_id (str) – Unique identifier of the Feature Group Export to get a signed URL for.
- Returns:
Instance containing the download URL and expiration time for the Feature Group Export.
- Return type:
- describe_feature_group_export(feature_group_export_id)
A feature group export
- Parameters:
feature_group_export_id (str) – Unique identifier of the feature group export.
- Returns:
The feature group export object.
- Return type:
- list_feature_group_exports(feature_group_id)
Lists all of the feature group exports for the feature group
- Parameters:
feature_group_id (str) – Unique identifier of the feature group
- Returns:
List of feature group exports
- Return type:
- get_feature_group_export_connector_errors(feature_group_export_id)
Returns a stream containing the write errors of the feature group export database connection, if any writes failed to the database connector.
- Parameters:
feature_group_export_id (str) – Unique identifier of the feature group export to get the errors for.
- Return type:
- list_feature_group_modifiers(feature_group_id)
List the users who can modify a given feature group.
- Parameters:
feature_group_id (str) – Unique string identifier of the feature group.
- Returns:
Information about the modification lock status and groups/organizations added to the feature group.
- Return type:
- get_materialization_logs(feature_group_version, stdout=False, stderr=False)
Returns logs for a materialized feature group version.
- Parameters:
- Returns:
A function logs object.
- Return type:
- list_feature_group_versions(feature_group_id, limit=100, start_after_version=None)
Retrieves a list of all feature group versions for the specified feature group.
- Parameters:
- Returns:
A list of feature group versions.
- Return type:
- describe_feature_group_version(feature_group_version)
Describe a feature group version.
- Parameters:
feature_group_version (str) – The unique identifier associated with the feature group version.
- Returns:
The feature group version.
- Return type:
- get_feature_group_version_metrics(feature_group_version, selected_columns=None, include_charts=False, include_statistics=True)
Get metrics for a specific feature group version.
- Parameters:
feature_group_version (str) – A unique string identifier associated with the feature group version.
selected_columns (List) – A list of columns to order first.
include_charts (bool) – A flag indicating whether charts should be included in the response. Default is false.
include_statistics (bool) – A flag indicating whether statistics should be included in the response. Default is true.
- Returns:
The metrics for the specified feature group version.
- Return type:
- get_feature_group_version_logs(feature_group_version)
Retrieves the feature group materialization logs.
- Parameters:
feature_group_version (str) – The unique version ID of the feature group version.
- Returns:
The logs for the specified feature group version.
- Return type:
- describe_feature_group_template(feature_group_template_id)
Describe a Feature Group Template.
- Parameters:
feature_group_template_id (str) – The unique identifier of a feature group template.
- Returns:
The feature group template object.
- Return type:
- list_feature_group_templates(limit=100, start_after_id=None, feature_group_id=None, should_include_system_templates=False)
List feature group templates, optionally scoped by the feature group that created the templates.
- Parameters:
limit (int) – Maximum number of templates to be retrieved.
start_after_id (str) – Offset parameter to exclude all templates up to the specified feature group template ID.
feature_group_id (str) – If specified, limit to templates created from this feature group.
should_include_system_templates (bool) – If True, will include built-in templates.
- Returns:
All the feature groups in the organization, optionally limited by the feature group that created the template(s).
- Return type:
- list_project_feature_group_templates(project_id, limit=100, start_after_id=None, should_include_all_system_templates=False)
List feature group templates for feature groups associated with the project.
- Parameters:
project_id (str) – Unique string identifier to limit to templates associated with this project, e.g. templates associated with feature groups in this project.
limit (int) – Maximum number of templates to be retrieved.
start_after_id (str) – Offset parameter to exclude all templates till the specified feature group template ID.
should_include_all_system_templates (bool) – If True, will include built-in templates.
- Returns:
All the feature groups in the organization, optionally limited by the feature group that created the template(s).
- Return type:
- suggest_feature_group_template_for_feature_group(feature_group_id)
Suggest values for a feature gruop template, based on a feature group.
- Parameters:
feature_group_id (str) – Unique identifier associated with the feature group to use for suggesting values to use in the template.
- Returns:
The suggested feature group template.
- Return type:
- get_dataset_schema(dataset_id)
Retrieves the column schema of a dataset.
- Parameters:
dataset_id (str) – Unique string identifier of the dataset schema to look up.
- Returns:
List of column schema definitions.
- Return type:
- set_dataset_database_connector_config(dataset_id, database_connector_id, object_name=None, columns=None, query_arguments=None, sql_query=None)
Sets database connector config for a dataset. This method is currently only supported for streaming datasets.
- Parameters:
dataset_id (str) – Unique String Identifier of the dataset_id.
database_connector_id (str) – Unique String Identifier of the Database Connector to import the dataset from.
object_name (str) – If applicable, the name/ID of the object in the service to query.
columns (str) – The columns to query from the external service object.
query_arguments (str) – Additional query arguments to filter the data.
sql_query (str) – The full SQL query to use when fetching data. If present, this parameter will override object_name, columns and query_arguments.
- get_dataset_version_metrics(dataset_version, selected_columns=None, include_charts=False, include_statistics=True)
Get metrics for a specific dataset version.
- Parameters:
dataset_version (str) – A unique string identifier associated with the dataset version.
selected_columns (List) – A list of columns to order first.
include_charts (bool) – A flag indicating whether charts should be included in the response. Default is false.
include_statistics (bool) – A flag indicating whether statistics should be included in the response. Default is true.
- Returns:
The metrics for the specified Dataset version.
- Return type:
- update_dataset_version_limit(dataset_id, version_limit)
Updates the version limit for the specified dataset.
- Parameters:
- Returns:
The updated dataset.
- Return type:
- get_file_connector_instructions(bucket, write_permission=False)
Retrieves verification information to create a data connector to a cloud storage bucket.
- Parameters:
- Returns:
An object with a full description of the cloud storage bucket authentication options and bucket policy. Returns an error message if the parameters are invalid.
- Return type:
- list_database_connectors()
Retrieves a list of all database connectors along with their associated attributes.
- Returns:
An object containing the database connector and its attributes.
- Return type:
- list_file_connectors()
Retrieves a list of all connected services in the organization and their current verification status.
- Returns:
A list of cloud storage buckets connected to the organization.
- Return type:
- list_database_connector_objects(database_connector_id, fetch_raw_data=False)
Lists querable objects in the database connector.
- get_database_connector_object_schema(database_connector_id, object_name=None, fetch_raw_data=False)
Get the schema of an object in an database connector.
- Parameters:
- Returns:
The schema of the object.
- Return type:
- query_database_connector(database_connector_id, query)
Runs a query in the specified database connector.
- list_application_connectors()
Retrieves a list of all application connectors along with their associated attributes.
- Returns:
A list of application connectors.
- Return type:
- list_application_connector_objects(application_connector_id)
Lists querable objects in the application connector.
- get_connector_auth(service=None, application_connector_id=None, scopes=None)
Get the authentication details for a given connector. For user level connectors, the service is required. For org level connectors, the application_connector_id is required.
- Parameters:
service (ApplicationConnectorType) – The service name.
application_connector_id (str) – The unique ID associated with the connector.
scopes (List) – The scopes to request for the connector.
- Returns:
The application connector with the authentication details.
- Return type:
- list_streaming_connectors()
Retrieves a list of all streaming connectors along with their corresponding attributes.
- Returns:
A list of StreamingConnector objects.
- Return type:
- list_streaming_tokens()
Retrieves a list of all streaming tokens.
- Returns:
A list of streaming tokens and their associated attributes.
- Return type:
- get_recent_feature_group_streamed_data(feature_group_id)
Returns recently streamed data to a streaming feature group.
- Parameters:
feature_group_id (str) – Unique string identifier associated with the feature group.
- list_uploads()
Lists all pending uploads
- describe_upload(upload_id)
Retrieves the current upload status (complete or inspecting) and the list of file parts uploaded for a specified dataset upload.
- list_datasets(limit=100, start_after_id=None, exclude_streaming=False)
Retrieves a list of all datasets in the organization.
- describe_dataset(dataset_id)
Retrieves a full description of the specified dataset, with attributes such as its ID, name, source type, etc.
- describe_dataset_version(dataset_version)
Retrieves a full description of the specified dataset version, including its ID, name, source type, and other attributes.
- Parameters:
dataset_version (str) – Unique string identifier associated with the dataset version.
- Returns:
The dataset version.
- Return type:
- list_dataset_versions(dataset_id, limit=100, start_after_version=None)
Retrieves a list of all dataset versions for the specified dataset.
- Parameters:
- Returns:
A list of dataset versions.
- Return type:
- get_dataset_version_logs(dataset_version)
Retrieves the dataset import logs.
- Parameters:
dataset_version (str) – The unique version ID of the dataset version.
- Returns:
The logs for the specified dataset version.
- Return type:
- get_docstore_document(doc_id)
Return a document store document by id.
- Parameters:
doc_id (str) – Unique Docstore string identifier for the document.
- Return type:
- get_docstore_image(doc_id, max_width=None, max_height=None)
Return a document store image by id.
- Parameters:
doc_id (str) – A unique Docstore string identifier for the image.
max_width (int) – Rescales the returned image so the width is less than or equal to the given maximum width, while preserving the aspect ratio.
max_height (int) – Rescales the returned image so the height is less than or equal to the given maximum height, while preserving the aspect ratio.
- Return type:
- describe_train_test_data_split_feature_group(model_id)
Get the train and test data split for a trained model by its unique identifier. This is only supported for models with custom algorithms.
- Parameters:
model_id (str) – The unique ID of the model. By default, the latest model version will be returned if no version is specified.
- Returns:
The feature group containing the training data and fold information.
- Return type:
- describe_train_test_data_split_feature_group_version(model_version)
Get the train and test data split for a trained model by model version. This is only supported for models with custom algorithms.
- Parameters:
model_version (str) – The unique version ID of the model version.
- Returns:
The feature group version containing the training data and folds information.
- Return type:
- list_models(project_id)
Retrieves the list of models in the specified project.
- describe_model(model_id)
Retrieves a full description of the specified model.
- get_model_metrics(model_id, model_version=None, return_graphs=False, validation=False)
Retrieves metrics for all the algorithms trained in this model version.
If only the model’s unique identifier (model_id) is specified, the latest trained version of the model (model_version) is used.
- Parameters:
model_id (str) – Unique string identifier for the model.
model_version (str) – Version of the model.
return_graphs (bool) – If true, will return the information used for the graphs on the model metrics page such as PR Curve per label.
validation (bool) – If true, will return the validation metrics instead of the test metrics.
- Returns:
An object containing the model metrics and explanations for what each metric means.
- Return type:
- get_feature_group_schemas_for_model_version(model_version)
Gets the schema (including feature mappings) for all feature groups used in the model version.
- Parameters:
model_version (str) – Unique string identifier for the version of the model.
- Returns:
List of schema for all feature groups used in the model version.
- Return type:
- list_model_versions(model_id, limit=100, start_after_version=None)
Retrieves a list of versions for a given model.
- Parameters:
- Returns:
An array of model versions.
- Return type:
- describe_model_version(model_version)
Retrieves a full description of the specified model version.
- Parameters:
model_version (str) – Unique string identifier of the model version.
- Returns:
A model version.
- Return type:
- get_feature_importance_by_model_version(model_version)
Gets the feature importance calculated by various methods for the model.
- Parameters:
model_version (str) – Unique string identifier for the model version.
- Returns:
Feature importances for the model.
- Return type:
- get_training_data_logs(model_version)
Retrieves the data preparation logs during model training.
- Parameters:
model_version (str) – The unique version ID of the model version.
- Returns:
A list of logs.
- Return type:
- get_training_logs(model_version, stdout=False, stderr=False)
Returns training logs for the model.
- Parameters:
- Returns:
A function logs object.
- Return type:
- describe_model_artifacts_export(model_artifacts_export_id)
Get the description and status of the model artifacts export.
- Parameters:
model_artifacts_export_id (str) – A unique string identifier for the export.
- Returns:
Object describing the export and its status.
- Return type:
- list_model_artifacts_exports(model_id, limit=25)
List all the model artifacts exports.
- Parameters:
- Returns:
List of model artifacts exports.
- Return type:
- list_model_monitors(project_id)
Retrieves the list of model monitors in the specified project.
- Parameters:
project_id (str) – Unique string identifier associated with the project.
- Returns:
A list of model monitors.
- Return type:
- describe_model_monitor(model_monitor_id)
Retrieves a full description of the specified model monitor.
- Parameters:
model_monitor_id (str) – Unique string identifier associated with the model monitor.
- Returns:
Description of the model monitor.
- Return type:
- get_prediction_drift(model_monitor_version)
Gets the label and prediction drifts for a model monitor.
- Parameters:
model_monitor_version (str) – Unique string identifier for a model monitor version created under the project.
- Returns:
Object describing training and prediction output label and prediction distributions.
- Return type:
- get_model_monitor_summary(model_monitor_id)
Gets the summary of a model monitor across versions.
- Parameters:
model_monitor_id (str) – A unique string identifier associated with the model monitor.
- Returns:
An object describing integrity, bias violations, model accuracy and drift for the model monitor.
- Return type:
- list_model_monitor_versions(model_monitor_id, limit=100, start_after_version=None)
Retrieves a list of versions for a given model monitor.
- Parameters:
- Returns:
A list of model monitor versions.
- Return type:
- describe_model_monitor_version(model_monitor_version)
Retrieves a full description of the specified model monitor version.
- Parameters:
model_monitor_version (str) – The unique version ID of the model monitor version.
- Returns:
A model monitor version.
- Return type:
- model_monitor_version_metric_data(model_monitor_version, metric_type, actual_values_to_detail=None)
Provides the data needed for decile metrics associated with the model monitor.
- Parameters:
- Returns:
Data associated with the metric.
- Return type:
- list_organization_model_monitors(only_starred=False)
Gets a list of Model Monitors for an organization.
- Parameters:
only_starred (bool) – Whether to return only starred Model Monitors. Defaults to False.
- Returns:
A list of Model Monitors.
- Return type:
- get_model_monitor_chart_from_organization(chart_type, limit=15)
Gets a list of model monitor summaries across monitors for an organization.
- Parameters:
- Returns:
List of ModelMonitorSummaryForOrganization objects describing accuracy, bias, drift, or integrity for all model monitors in an organization.
- Return type:
- get_model_monitor_summary_from_organization()
Gets a consolidated summary of model monitors for an organization.
- Returns:
A list of ModelMonitorSummaryForOrganization objects describing accuracy, bias, drift, and integrity for all model monitors in an organization.
- Return type:
- list_eda(project_id)
Retrieves the list of Exploratory Data Analysis (EDA) in the specified project.
- describe_eda(eda_id)
Retrieves a full description of the specified EDA object.
- list_eda_versions(eda_id, limit=100, start_after_version=None)
Retrieves a list of versions for a given EDA object.
- Parameters:
- Returns:
A list of EDA versions.
- Return type:
- describe_eda_version(eda_version)
Retrieves a full description of the specified EDA version.
- Parameters:
eda_version (str) – Unique string identifier of the EDA version.
- Returns:
An EDA version.
- Return type:
- get_eda_collinearity(eda_version)
Gets the Collinearity between all features for the Exploratory Data Analysis.
- Parameters:
eda_version (str) – Unique string identifier associated with the EDA instance.
- Returns:
An object with a record of correlations between each feature for the EDA.
- Return type:
- get_eda_data_consistency(eda_version, transformation_feature=None)
Gets the data consistency for the Exploratory Data Analysis.
- Parameters:
- Returns:
Object with duplication, deletion, and transformation data for data consistency analysis for an EDA.
- Return type:
- get_collinearity_for_feature(eda_version, feature_name=None)
Gets the Collinearity for the given feature from the Exploratory Data Analysis.
- Parameters:
- Returns:
Object with a record of correlations for the provided feature for an EDA.
- Return type:
- get_feature_association(eda_version, reference_feature_name, test_feature_name)
Gets the Feature Association for the given features from the feature group version within the eda_version.
- Parameters:
eda_version (str) – Unique string identifier associated with the EDA instance.
reference_feature_name (str) – Name of the feature for feature association (on x-axis for the plots generated for the Feature association in the product).
test_feature_name (str) – Name of the feature for feature association (on y-axis for the plots generated for the Feature association in the product).
- Returns:
An object with a record of data for the feature association between the two given features for an EDA version.
- Return type:
- get_eda_forecasting_analysis(eda_version)
Gets the Forecasting analysis for the Exploratory Data Analysis.
- Parameters:
eda_version (str) – Unique string identifier associated with the EDA version.
- Returns:
Object with forecasting analysis that includes sales_across_time, cummulative_contribution, missing_value_distribution, history_length, num_rows_histogram, product_maturity data.
- Return type:
- list_holdout_analysis(project_id, model_id=None)
List holdout analyses for a project. Optionally, filter by model.
- Parameters:
- Returns:
The holdout analyses
- Return type:
- describe_holdout_analysis(holdout_analysis_id)
Get a holdout analysis.
- Parameters:
holdout_analysis_id (str) – ID of the holdout analysis to get
- Returns:
The holdout analysis
- Return type:
- list_holdout_analysis_versions(holdout_analysis_id)
List holdout analysis versions for a holdout analysis.
- Parameters:
holdout_analysis_id (str) – ID of the holdout analysis to list holdout analysis versions for
- Returns:
The holdout analysis versions
- Return type:
- describe_holdout_analysis_version(holdout_analysis_version, get_metrics=False)
Get a holdout analysis version.
- Parameters:
- Returns:
The holdout analysis version
- Return type:
- describe_monitor_alert(monitor_alert_id)
Describes a given monitor alert id
- Parameters:
monitor_alert_id (str) – Unique identifier of the monitor alert.
- Returns:
Object containing information about the monitor alert.
- Return type:
- describe_monitor_alert_version(monitor_alert_version)
Describes a given monitor alert version id
- Parameters:
monitor_alert_version (str) – Unique string identifier for the monitor alert.
- Returns:
An object describing the monitor alert version.
- Return type:
- list_monitor_alerts_for_monitor(model_monitor_id=None, realtime_monitor_id=None)
Retrieves the list of monitor alerts for a specified monitor. One of the model_monitor_id or realtime_monitor_id is required but not both.
- Parameters:
- Returns:
A list of monitor alerts.
- Return type:
- list_monitor_alert_versions_for_monitor_version(model_monitor_version)
Retrieves the list of monitor alert versions for a specified monitor instance.
- Parameters:
model_monitor_version (str) – The unique ID associated with the model monitor.
- Returns:
A list of monitor alert versions.
- Return type:
- get_drift_for_feature(model_monitor_version, feature_name, nested_feature_name=None)
Gets the feature drift associated with a single feature in an output feature group from a prediction.
- Parameters:
- Returns:
An object describing the training and prediction output feature distributions.
- Return type:
- get_outliers_for_feature(model_monitor_version, feature_name=None, nested_feature_name=None)
Gets a list of outliers measured by a single feature (or overall) in an output feature group from a prediction.
- Parameters:
- Return type:
Dict
- describe_prediction_operator(prediction_operator_id)
Describe an existing prediction operator.
- Parameters:
prediction_operator_id (str) – The unique ID of the prediction operator.
- Returns:
The requested prediction operator object.
- Return type:
- list_prediction_operators(project_id)
List all the prediction operators inside a project.
- Parameters:
project_id (str) – The unique ID of the project.
- Returns:
A list of prediction operator objects.
- Return type:
- list_prediction_operator_versions(prediction_operator_id)
List all the prediction operator versions for a prediction operator.
- Parameters:
prediction_operator_id (str) – The unique ID of the prediction operator.
- Returns:
A list of prediction operator version objects.
- Return type:
- describe_deployment(deployment_id)
Retrieves a full description of the specified deployment.
- Parameters:
deployment_id (str) – Unique string identifier associated with the deployment.
- Returns:
Description of the deployment.
- Return type:
- list_deployments(project_id)
Retrieves a list of all deployments in the specified project.
- Parameters:
project_id (str) – The unique identifier associated with the project.
- Returns:
An array of deployments.
- Return type:
- list_deployment_tokens(project_id)
Retrieves a list of all deployment tokens associated with the specified project.
- Parameters:
project_id (str) – The unique ID associated with the project.
- Returns:
A list of deployment tokens.
- Return type:
- get_api_endpoint(deployment_token=None, deployment_id=None, streaming_token=None, feature_group_id=None, model_id=None)
Returns the API endpoint specific to an organization. This function can be utilized using either an API Key or a deployment ID and token for authentication.
- Parameters:
deployment_token (str) – Token used for authenticating access to deployed models.
deployment_id (str) – Unique identifier assigned to a deployment created under the specified project.
streaming_token (str) – Token used for authenticating access to streaming data.
feature_group_id (str) – Unique identifier assigned to a feature group.
model_id (str) – Unique identifier assigned to a model.
- Returns:
The API endpoint specific to the organization.
- Return type:
- get_model_training_types_for_deployment(model_id, model_version=None, algorithm=None)
Returns types of models that can be deployed for a given model instance ID.
- Parameters:
- Returns:
Model training types for deployment.
- Return type:
- get_prediction_logs_records(deployment_id, limit=10, last_log_request_id='', last_log_timestamp=None)
Retrieves the prediction request IDs for the most recent predictions made to the deployment.
- Parameters:
deployment_id (str) – The unique identifier of a deployment created under the project.
limit (int) – The number of prediction log entries to retrieve up to the specified limit.
last_log_request_id (str) – The request ID of the last log entry to retrieve.
last_log_timestamp (int) – A Unix timestamp in milliseconds specifying the timestamp for the last log entry.
- Returns:
A list of prediction log records.
- Return type:
- list_deployment_alerts(deployment_id)
List the monitor alerts associated with the deployment id.
- Parameters:
deployment_id (str) – Unique string identifier for the deployment.
- Returns:
An array of deployment alerts.
- Return type:
- list_realtime_monitors(project_id)
List the real-time monitors associated with the deployment id.
- Parameters:
project_id (str) – Unique string identifier for the deployment.
- Returns:
An array of real-time monitors.
- Return type:
- describe_realtime_monitor(realtime_monitor_id)
Get the real-time monitor associated with the real-time monitor id.
- Parameters:
realtime_monitor_id (str) – Unique string identifier for the real-time monitor.
- Returns:
Object describing the real-time monitor.
- Return type:
- describe_refresh_policy(refresh_policy_id)
Retrieve a single refresh policy
- Parameters:
refresh_policy_id (str) – The unique ID associated with this refresh policy.
- Returns:
An object representing the refresh policy.
- Return type:
- describe_refresh_pipeline_run(refresh_pipeline_run_id)
Retrieve a single refresh pipeline run
- Parameters:
refresh_pipeline_run_id (str) – Unique string identifier associated with the refresh pipeline run.
- Returns:
A refresh pipeline run object.
- Return type:
- list_refresh_policies(project_id=None, dataset_ids=[], feature_group_id=None, model_ids=[], deployment_ids=[], batch_prediction_ids=[], model_monitor_ids=[], notebook_ids=[])
List the refresh policies for the organization. If no filters are specified, all refresh policies are returned.
- Parameters:
project_id (str) – Project ID for which we wish to see the refresh policies attached.
dataset_ids (List) – Comma-separated list of Dataset IDs.
feature_group_id (str) – Feature Group ID for which we wish to see the refresh policies attached.
model_ids (List) – Comma-separated list of Model IDs.
deployment_ids (List) – Comma-separated list of Deployment IDs.
batch_prediction_ids (List) – Comma-separated list of Batch Prediction IDs.
model_monitor_ids (List) – Comma-separated list of Model Monitor IDs.
notebook_ids (List) – Comma-separated list of Notebook IDs.
- Returns:
List of all refresh policies in the organization.
- Return type:
- list_refresh_pipeline_runs(refresh_policy_id)
List the the times that the refresh policy has been run
- Parameters:
refresh_policy_id (str) – Unique identifier associated with the refresh policy.
- Returns:
List of refresh pipeline runs for the given refresh policy ID.
- Return type:
- download_batch_prediction_result_chunk(batch_prediction_version, offset=0, chunk_size=10485760)
Returns a stream containing the batch prediction results.
- Parameters:
- Return type:
- get_batch_prediction_connector_errors(batch_prediction_version)
Returns a stream containing the batch prediction database connection write errors, if any writes failed for the specified batch prediction job.
- Parameters:
batch_prediction_version (str) – Unique string identifier of the batch prediction job to get the errors for.
- Return type:
- list_batch_predictions(project_id)
Retrieves a list of batch predictions in the project.
- Parameters:
project_id (str) – Unique string identifier of the project.
- Returns:
List of batch prediction jobs.
- Return type:
- describe_batch_prediction(batch_prediction_id)
Describe the batch prediction.
- Parameters:
batch_prediction_id (str) – The unique identifier associated with the batch prediction.
- Returns:
The batch prediction description.
- Return type:
- list_batch_prediction_versions(batch_prediction_id, limit=100, start_after_version=None)
Retrieves a list of versions of a given batch prediction
- Parameters:
- Returns:
List of batch prediction versions.
- Return type:
- describe_batch_prediction_version(batch_prediction_version)
Describes a Batch Prediction Version.
- Parameters:
batch_prediction_version (str) – Unique string identifier of the Batch Prediction Version.
- Returns:
The Batch Prediction Version.
- Return type:
- get_batch_prediction_version_logs(batch_prediction_version)
Retrieves the batch prediction logs.
- Parameters:
batch_prediction_version (str) – The unique version ID of the batch prediction version.
- Returns:
The logs for the specified batch prediction version.
- Return type:
- get_deployment_statistics_over_time(deployment_id, start_date, end_date)
Return basic access statistics for the given window
- Parameters:
- Returns:
Object describing Time series data of the number of requests and latency over the specified time period.
- Return type:
- get_data(feature_group_id, primary_key=None, num_rows=None)
Gets the feature group rows for online updatable feature groups.
If primary key is set, row corresponding to primary_key is returned. If num_rows is set, we return maximum of num_rows latest updated rows.
- Parameters:
- Returns:
A list of feature group rows.
- Return type:
- describe_python_function(name)
Describe a Python Function.
- Parameters:
name (str) – The name to identify the Python function. Must be a valid Python identifier.
- Returns:
The Python function object.
- Return type:
- list_python_functions(function_type='FEATURE_GROUP')
List all python functions within the organization.
- Parameters:
function_type (str) – Optional argument to specify the type of function to list Python functions for. Default is FEATURE_GROUP, but can also be PLOTLY_FIG.
- Returns:
A list of PythonFunction objects.
- Return type:
- list_pipelines(project_id=None)
Lists the pipelines for an organization or a project
- describe_pipeline_version(pipeline_version)
Describes a specified pipeline version
- Parameters:
pipeline_version (str) – Unique string identifier for the pipeline version
- Returns:
Object describing the pipeline version
- Return type:
- describe_pipeline_step(pipeline_step_id)
Deletes a step from a pipeline.
- Parameters:
pipeline_step_id (str) – The ID of the pipeline step.
- Returns:
An object describing the pipeline step.
- Return type:
- describe_pipeline_step_by_name(pipeline_id, step_name)
Describes a pipeline step by the step name.
- Parameters:
- Returns:
An object describing the pipeline step.
- Return type:
- describe_pipeline_step_version(pipeline_step_version)
Describes a pipeline step version.
- Parameters:
pipeline_step_version (str) – The ID of the pipeline step version.
- Returns:
An object describing the pipeline step version.
- Return type:
- list_pipeline_version_logs(pipeline_version)
Gets the logs for the steps in a given pipeline version.
- Parameters:
pipeline_version (str) – The id of the pipeline version.
- Returns:
Object describing the logs for the steps in the pipeline.
- Return type:
- get_step_version_logs(pipeline_step_version)
Gets the logs for a given step version.
- Parameters:
pipeline_step_version (str) – The id of the pipeline step version.
- Returns:
Object describing the pipeline step logs.
- Return type:
- describe_graph_dashboard(graph_dashboard_id)
Describes a given graph dashboard.
- Parameters:
graph_dashboard_id (str) – Unique identifier for the graph dashboard.
- Returns:
An object containing information about the graph dashboard.
- Return type:
- list_graph_dashboards(project_id=None)
Lists the graph dashboards for a project
- Parameters:
project_id (str) – Unique string identifier for the project to list graph dashboards from.
- Returns:
A list of graph dashboards.
- Return type:
- describe_graph_for_dashboard(graph_reference_id)
Describes a python plot to a graph dashboard
- Parameters:
graph_reference_id (str) – Unique string identifier for the python function id for the graph
- Returns:
An object describing the graph dashboard.
- Return type:
- describe_algorithm(algorithm)
Retrieves a full description of the specified algorithm.
- list_algorithms(problem_type=None, project_id=None)
List all custom algorithms, with optional filtering on Problem Type and Project ID
- Parameters:
problem_type (ProblemType) – The problem type to query. If None, return all algorithms in the organization.
project_id (str) – The ID of the project.
- Returns:
A list of algorithms.
- Return type:
- describe_custom_loss_function(name)
Retrieve a full description of a previously registered custom loss function.
- Parameters:
name (str) – Registered name of the custom loss function.
- Returns:
The description of the custom loss function with the given name.
- Return type:
- list_custom_loss_functions(name_prefix=None, loss_function_type=None)
Retrieves a list of registered custom loss functions and their descriptions.
- Parameters:
- Returns:
The description of the custom loss function with the given name.
- Return type:
- describe_custom_metric(name)
Retrieves a full description of a previously registered custom metric function.
- Parameters:
name (str) – Registered name of the custom metric.
- Returns:
The description of the custom metric with the given name.
- Return type:
- describe_custom_metric_version(custom_metric_version)
Describes a given custom metric version
- Parameters:
custom_metric_version (str) – A unique string identifier for the custom metric version.
- Returns:
An object describing the custom metric version.
- Return type:
- list_custom_metrics(name_prefix=None, problem_type=None)
Retrieves a list of registered custom metrics.
- Parameters:
- Returns:
A list of custom metrics.
- Return type:
- describe_module(name)
Retrieves a full description of the specified module.
- get_organization_secret(secret_key)
Gets a secret.
- Parameters:
secret_key (str) – The secret key.
- Returns:
The secret.
- Return type:
- list_organization_secrets()
Lists all secrets for an organization.
- Returns:
list of secrets belonging to the organization.
- Return type:
- query_feature_group_code_generator(query, language, project_id=None)
Send a query to the feature group code generator tool to generate code for the query.
- Parameters:
- Returns:
The response from the model, raw text and parsed components.
- Return type:
- get_natural_language_explanation(feature_group_id=None, feature_group_version=None, model_id=None)
Returns the saved natural language explanation of an artifact with given ID. The artifact can be - Feature Group or Feature Group Version or Model
- Parameters:
- Returns:
The object containing natural language explanation(s) as field(s).
- Return type:
- generate_natural_language_explanation(feature_group_id=None, feature_group_version=None, model_id=None)
Generates natural language explanation of an artifact with given ID. The artifact can be - Feature Group or Feature Group Version or Model
- Parameters:
- Returns:
The object containing natural language explanation(s) as field(s).
- Return type:
- get_chat_session(chat_session_id)
Gets a chat session from Data Science Co-pilot.
- Parameters:
chat_session_id (str) – Unique ID of the chat session.
- Returns:
The chat session with Data Science Co-pilot
- Return type:
- list_chat_sessions(most_recent_per_project=False)
Lists all chat sessions for the current user
- Parameters:
most_recent_per_project (bool) – An optional parameter whether to only return the most recent chat session per project. Default False.
- Returns:
The chat sessions with Data Science Co-pilot
- Return type:
- get_deployment_conversation(deployment_conversation_id=None, external_session_id=None, deployment_id=None, filter_intermediate_conversation_events=True, get_unused_document_uploads=False)
Gets a deployment conversation.
- Parameters:
deployment_conversation_id (str) – Unique ID of the conversation. One of deployment_conversation_id or external_session_id must be provided.
external_session_id (str) – External session ID of the conversation.
deployment_id (str) – The deployment this conversation belongs to. This is required if not logged in.
filter_intermediate_conversation_events (bool) – If true, intermediate conversation events will be filtered out. Default is true.
get_unused_document_uploads (bool) – If true, unused document uploads will be returned. Default is false.
- Returns:
The deployment conversation.
- Return type:
- list_deployment_conversations(deployment_id=None, external_application_id=None, conversation_type=None, fetch_last_llm_info=False)
Lists all conversations for the given deployment and current user.
- Parameters:
deployment_id (str) – The deployment to get conversations for.
external_application_id (str) – The external application id associated with the deployment conversation. If specified, only conversations created on that application will be listed.
conversation_type (DeploymentConversationType) – The type of the conversation indicating its origin.
fetch_last_llm_info (bool) – If true, the LLM info for the most recent conversation will be fetched. Only applicable for system-created bots.
- Returns:
The deployment conversations.
- Return type:
- export_deployment_conversation(deployment_conversation_id=None, external_session_id=None)
Export a Deployment Conversation.
- Parameters:
- Returns:
The deployment conversation html export.
- Return type:
- get_app_user_group(user_group_id)
Gets an App User Group.
- Parameters:
user_group_id (str) – The ID of the App User Group.
- Returns:
The App User Group.
- Return type:
- describe_external_application(external_application_id)
Describes an External Application.
- Parameters:
external_application_id (str) – The ID of the External Application.
- Returns:
The External Application.
- Return type:
- list_external_applications()
Lists External Applications in an organization.
- Returns:
List of External Applications.
- Return type:
- download_agent_attachment(deployment_id, attachment_id)
Return an agent attachment.
- Parameters:
- Return type:
- describe_agent(agent_id)
Retrieves a full description of the specified model.
- describe_agent_version(agent_version)
Retrieves a full description of the specified agent version.
- Parameters:
agent_version (str) – Unique string identifier of the agent version.
- Returns:
A agent version.
- Return type:
- search_feature_groups(text, num_results=10, project_id=None, feature_group_ids=None)
Search feature groups based on text and filters.
- Parameters:
text (str) – Text to use for approximately matching feature groups.
num_results (int) – The maximum number of search results to retrieve. The length of the returned list is less than or equal to num_results.
project_id (str) – The ID of the project in which to restrict the search, if specified.
feature_group_ids (List) – A list of feagure group IDs to restrict the search to.
- Returns:
A list of search results, each containing the retrieved object and its relevance score
- Return type:
- list_agents(project_id)
Retrieves the list of agents in the specified project.
- list_agent_versions(agent_id, limit=100, start_after_version=None)
List all versions of an agent.
- Parameters:
- Returns:
An array of Agent versions.
- Return type:
- list_llm_apps()
Lists all available LLM Apps, which are LLMs tailored to achieve a specific task like code generation for a specific service’s API.
- list_document_retrievers(project_id, limit=100, start_after_id=None)
List all the document retrievers.
- Parameters:
- Returns:
All the document retrievers in the organization associated with the specified project.
- Return type:
- describe_document_retriever(document_retriever_id)
Describe a Document Retriever.
- Parameters:
document_retriever_id (str) – A unique string identifier associated with the document retriever.
- Returns:
The document retriever object.
- Return type:
- describe_document_retriever_by_name(name)
Describe a document retriever by its name.
- Parameters:
name (str) – The unique name of the document retriever to look up.
- Returns:
The Document Retriever.
- Return type:
- list_document_retriever_versions(document_retriever_id, limit=100, start_after_version=None)
List all the document retriever versions with a given ID.
- Parameters:
document_retriever_id (str) – A unique string identifier associated with the document retriever.
limit (int) – The number of vector store versions to retrieve. The maximum value is 100.
start_after_version (str) – An offset parameter to exclude all document retriever versions up to this specified one.
- Returns:
All the document retriever versions associated with the document retriever.
- Return type:
- abacusai.client.get_source_code_info(train_function, predict_function=None, predict_many_function=None, initialize_function=None, common_functions=None)
- Parameters:
train_function (callable)
predict_function (callable)
predict_many_function (callable)
initialize_function (callable)
common_functions (list)
- abacusai.client.get_module_code_from_notebook(file_path)
- abacusai.client.include_modules(source_code, included_modules)
- class abacusai.client.ApiClient(api_key=None, server=None, client_options=None, skip_version_check=False, include_tb=False)
Bases:
ReadOnlyClient
Abacus.AI API Client
- Parameters:
api_key (str) – The api key to use as authentication to the server
server (str) – The base server url to use to send API requets to
client_options (ClientOptions) – Optional API client configurations
skip_version_check (bool) – If true, will skip checking the server’s current API version on initializing the client
include_tb (bool)
- create_dataset_from_pandas(feature_group_table_name, df, clean_column_names=False)
[Deprecated] Creates a Dataset from a pandas dataframe
- Parameters:
feature_group_table_name (str) – The table name to assign to the feature group created by this call
df (pandas.DataFrame) – The dataframe to upload
clean_column_names (bool) – If true, the dataframe’s column names will be automatically cleaned to be complaint with Abacus.AI’s column requirements. Otherwise it will raise a ValueError.
- Returns:
The dataset object created
- Return type:
- create_dataset_version_from_pandas(table_name_or_id, df, clean_column_names=False)
[Deprecated] Updates an existing dataset from a pandas dataframe
- Parameters:
table_name_or_id (str) – The table name of the feature group or the ID of the dataset to update
df (pandas.DataFrame) – The dataframe to upload
clean_column_names (bool) – If true, the dataframe’s column names will be automatically cleaned to be complaint with Abacus.AI’s column requirements. Otherwise it will raise a ValueError.
- Returns:
The dataset updated
- Return type:
- create_feature_group_from_pandas_df(table_name, df, clean_column_names=False)
Create a Feature Group from a local Pandas DataFrame.
- Parameters:
table_name (str) – The table name to assign to the feature group created by this call
df (pandas.DataFrame) – The dataframe to upload and use as the data source for the feature group
clean_column_names (bool) – If true, the dataframe’s column names will be automatically cleaned to be complaint with Abacus.AI’s column requirements. Otherwise it will raise a ValueError.
- Return type:
- update_feature_group_from_pandas_df(table_name, df, clean_column_names=False)
Updates a DATASET Feature Group from a local Pandas DataFrame.
- Parameters:
table_name (str) – The table name to assign to the feature group created by this call
df (pandas.DataFrame) – The dataframe to upload
clean_column_names (bool) – If true, the dataframe’s column names will be automatically cleaned to be complaint with Abacus.AI’s column requirements. Otherwise it will raise a ValueError.
- Return type:
- create_feature_group_from_spark_df(table_name, df)
Create a Feature Group from a local Spark DataFrame.
- Parameters:
df (pyspark.sql.DataFrame) – The dataframe to upload
table_name (str) – The table name to assign to the feature group created by this call
- Return type:
- update_feature_group_from_spark_df(table_name, df)
Create a Feature Group from a local Spark DataFrame.
- Parameters:
df (pyspark.sql.DataFrame) – The dataframe to upload
table_name (str) – The table name to assign to the feature group created by this call
should_wait_for_upload (bool) – Wait for dataframe to upload before returning. Some FeatureGroup methods, like materialization, may not work until upload is complete.
timeout (int) – If waiting for upload, time out after this limit.
- Return type:
- create_spark_df_from_feature_group_version(session, feature_group_version)
Create a Spark Dataframe in the provided Spark Session context, for a materialized Abacus Feature Group Version.
- Parameters:
session (pyspark.sql.SparkSession) – Spark session
feature_group_version (str) – Feature group version to load from
- Returns:
pyspark.sql.DataFrame
- create_prediction_operator_from_functions(name, project_id, predict_function=None, initialize_function=None, feature_group_ids=None, cpu_size=None, memory=None, included_modules=None, package_requirements=None, use_gpu=False)
Create a new prediction operator.
- Parameters:
name (str) – Name of the prediction operator.
project_id (str) – The unique ID of the associated project.
predict_function (callable) – The function that will be executed to run predictions.
initialize_function (callable) – The initialization function that can generate anything used by predictions, based on input feature groups.
feature_group_ids (list) – List of feature groups that are supplied to the initialize function as parameters. Each of the parameters are materialized Dataframes.
cpu_size (str) – Size of the CPU for the prediction operator.
memory (int) – Memory (in GB) for the prediction operator.
included_modules (list) – List of names of user-created modules that will be included, which is equivalent to ‘from module import *’
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
use_gpu (bool) – Whether this rediction operator needs gpu.
- Returns
PredictionOperator: The updated prediction operator object.
- update_prediction_operator_from_functions(prediction_operator_id, name=None, predict_function=None, initialize_function=None, feature_group_ids=None, cpu_size=None, memory=None, included_modules=None, package_requirements=None, use_gpu=False)
Update an existing prediction operator.
- Parameters:
prediction_operator_id (str) – The unique ID of the prediction operator.
name (str) – The name of the prediction operator
predict_function (callable) – The predict function callable to serialize and upload
initialize_function (callable) – The initialize function callable to serialize and upload
feature_group_ids (list) – List of feature groups that are supplied to the initialize function as parameters. Each of the parameters are materialized Dataframes. The order should match the initialize function’s parameters.
cpu_size (str) – Size of the cpu for the training function
memory (int) – Memory (in GB) for the training function
included_modules (list) – List of names of user-created modules that will be included, which is equivalent to ‘from module import *’
package_requirements (List) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
use_gpu (bool) – Whether this prediction needs gpu
- create_model_from_functions(project_id, train_function, predict_function=None, training_input_tables=None, predict_many_function=None, initialize_function=None, cpu_size=None, memory=None, training_config=None, exclusive_run=False, included_modules=None, package_requirements=None, name=None, use_gpu=False, is_thread_safe=None)
Creates a model from a python function
- Parameters:
project_id (str) – The project to create the model in
train_function (callable) – The training fucntion callable to serialize and upload
predict_function (callable) – The predict function callable to serialize and upload
predict_many_function (callable) – The predict many function callable to serialize and upload
initialize_function (callable) – The initialize function callable to serialize and upload
training_input_tables (list) – The input table names of the feature groups to pass to the train function
cpu_size (str) – Size of the cpu for the training function
memory (int) – Memory (in GB) for the training function
training_config (TrainingConfig) – Training configuration
exclusive_run (bool) – Decides if this model will be run exclusively or along with other Abacus.AI algorithms
package_requirements (List) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
included_modules (list) – List of names of user-created modules that will be included, which is equivalent to ‘from module import *’
name (str) – The name of the model
use_gpu (bool) – Whether this model needs gpu
is_thread_safe (bool) – Whether the model is thread safe
- update_model_from_functions(model_id, train_function, predict_function=None, predict_many_function=None, initialize_function=None, training_input_tables=None, cpu_size=None, memory=None, included_modules=None, package_requirements=None, use_gpu=False, is_thread_safe=None)
Creates a model from a python function. Please pass in all the functions, even if you don’t update it.
- Parameters:
model_id (str) – The id of the model to update
train_function (callable) – The training fucntion callable to serialize and upload
predict_function (callable) – The predict function callable to serialize and upload
predict_many_function (callable) – The predict many function callable to serialize and upload
initialize_function (callable) – The initialize function callable to serialize and upload
training_input_tables (list) – The input table names of the feature groups to pass to the train function
cpu_size (str) – Size of the cpu for the training function
memory (int) – Memory (in GB) for the training function
package_requirements (List) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
included_modules (list) – List of names of user-created modules that will be included, which is equivalent to ‘from module import *’
use_gpu (bool) – Whether this model needs gpu
is_thread_safe (bool) – Whether the model is thread safe
- create_pipeline_step_from_function(pipeline_id, step_name, function, step_input_mappings=None, output_variable_mappings=None, step_dependencies=None, package_requirements=None, cpu_size=None, memory=None, included_modules=None, timeout=None)
Creates a step in a given pipeline from a python function.
- Parameters:
pipeline_id (str) – The ID of the pipeline to add the step to.
step_name (str) – The name of the step.
function (callable) – The python function.
step_input_mappings (List[PythonFunctionArguments]) – List of Python function arguments.
output_variable_mappings (List[OutputVariableMapping]) – List of Python function ouputs.
step_dependencies (List[str]) – List of step names this step depends on.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
cpu_size (str) – Size of the CPU for the step function.
memory (int) – Memory (in GB) for the step function.
included_modules (list) – List of names of user-created modules that will be included, which is equivalent to ‘from module import *’
timeout (int) – Timeout for how long the step can run in minutes, default is 300 minutes.
- update_pipeline_step_from_function(pipeline_step_id, function, step_input_mappings=None, output_variable_mappings=None, step_dependencies=None, package_requirements=None, cpu_size=None, memory=None, included_modules=None, timeout=None)
Updates a pipeline step from a python function.
- Parameters:
pipeline_step_id (str) – The ID of the pipeline_step to update.
function (callable) – The python function.
step_input_mappings (List[PythonFunctionArguments]) – List of Python function arguments.
output_variable_mappings (List[OutputVariableMapping]) – List of Python function ouputs.
step_dependencies (List[str]) – List of step names this step depends on.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
cpu_size (str) – Size of the CPU for the step function.
memory (int) – Memory (in GB) for the step function.
included_modules (list) – List of names of user-created modules that will be included, which is equivalent to ‘from module import *’
timeout (int) – Timeout for the step in minutes, default is 300 minutes.
- create_python_function_from_function(name, function, function_variable_mappings=None, package_requirements=None, function_type=PythonFunctionType.FEATURE_GROUP.value)
Creates a custom Python function
- Parameters:
name (str) – The name to identify the Python function.
function (callable) – The function callable to serialize and upload.
function_variable_mappings (List<PythonFunctionArguments>) – List of Python function arguments.
package_requirements (List) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
function_type (PythonFunctionType) – Type of Python function to create. Default is FEATURE_GROUP, but can also be PLOTLY_FIG.
- create_feature_group_from_python_function(function, table_name, input_tables=None, python_function_name=None, python_function_bindings=None, cpu_size=None, memory=None, package_requirements=None, included_modules=None)
Creates a feature group from a python function
- Parameters:
function (callable) – The function callable for the feature group
table_name (str) – The table name to give the feature group
input_tables (list) – The input table names of the feature groups as input to the feature group function
python_function_name (str) – The name of the python function to create a feature group from.
python_function_bindings (List<PythonFunctionArguments>) – List of python function arguments
cpu_size (str) – Size of the cpu for the feature group function
memory (int) – Memory (in GB) for the feature group function
package_requirements (List) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
included_modules (list) – List of names of user-created modules that will be included, which is equivalent to ‘from module import *’
- update_python_function_code(name, function=None, function_variable_mappings=None, package_requirements=None, included_modules=None)
Update custom python function with user inputs for the given python function.
- Parameters:
name (String) – The unique name to identify the python function in an organization.
function (callable) – The function callable to serialize and upload.
function_variable_mappings (List<PythonFunctionArguments>) – List of python function arguments
package_requirements (List) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
included_modules (list) – List of names of user-created modules that will be included, which is equivalent to ‘from module import *’
- Returns:
The python_function object.
- Return type:
- create_algorithm_from_function(name, problem_type, training_data_parameter_names_mapping=None, training_config_parameter_name=None, train_function=None, predict_function=None, predict_many_function=None, initialize_function=None, common_functions=None, config_options=None, is_default_enabled=False, project_id=None, use_gpu=False, package_requirements=None, included_modules=None)
Create a new algorithm, or update existing algorithm if the name already exists
- Parameters:
name (String) – The name to identify the algorithm, only uppercase letters, numbers and underscore allowed
problem_type (str) – The type of the problem this algorithm will work on
train_function (callable) – The training function callable to serialize and upload
predict_function (callable) – The predict function callable to serialize and upload
predict_many_function (callable) – The predict many function callable to serialize and upload
initialize_function (callable) – The initialize function callable to serialize and upload
common_functions (List of callables) – A list of functions that will be used by both train and predict functions, e.g. some data processing utilities
training_data_parameter_names_mapping (Dict) – The mapping from feature group types to training data parameter names in the train function
training_config_parameter_name (string) – The train config parameter name in the train function
config_options (Dict) – Map dataset types and configs to train function parameter names
is_default_enabled (bool) – Whether train with the algorithm by default
project_id (Unique String Identifier) – The unique version ID of the project
use_gpu (Boolean) – Whether this algorithm needs to run on GPU
package_requirements (List) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
included_modules (list) – List of names of user-created modules that will be included, which is equivalent to ‘from module import *’
- update_algorithm_from_function(algorithm, training_data_parameter_names_mapping=None, training_config_parameter_name=None, train_function=None, predict_function=None, predict_many_function=None, initialize_function=None, common_functions=None, config_options=None, is_default_enabled=None, use_gpu=None, package_requirements=None, included_modules=None)
Create a new algorithm, or update existing algorithm if the name already exists
- Parameters:
algorithm (String) – The name to identify the algorithm, only uppercase letters, numbers and underscore allowed
train_function (callable) – The training fucntion callable to serialize and upload
predict_function (callable) – The predict function callable to serialize and upload
predict_many_function (callable) – The predict many function callable to serialize and upload
initialize_function (callable) – The initialize function callable to serialize and upload
common_functions (List of callables) – A list of functions that will be used by both train and predict functions, e.g. some data processing utilities
training_data_parameter_names_mapping (Dict) – The mapping from feature group types to training data parameter names in the train function
training_config_parameter_name (string) – The train config parameter name in the train function
config_options (Dict) – Map dataset types and configs to train function parameter names
is_default_enabled (Boolean) – Whether train with the algorithm by default
use_gpu (Boolean) – Whether this algorithm needs to run on GPU
package_requirements (List) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
included_modules (list) – List of names of user-created modules that will be included, which is equivalent to ‘from module import *’
- get_train_function_input(project_id, training_table_names=None, training_data_parameter_name_override=None, training_config_parameter_name_override=None, training_config=None, custom_algorithm_config=None)
Get the input data for the train function to test locally.
- Parameters:
project_id (String) – The id of the project
training_table_names (List) – A list of feature group tables used for training
training_data_parameter_name_override (Dict) – The mapping from feature group types to training data parameter names in the train function
training_config_parameter_name_override (String) – The train config parameter name in the train function
training_config (Dict) – A dictionary for Abacus.AI defined training options and values
custom_algorithm_config (Any) – User-defined config that can be serialized by JSON
- Returns:
A dictionary that maps train function parameter names to their values.
- get_train_function_input_from_model_version(model_version, algorithm=None, training_config=None, custom_algorithm_config=None)
Get the input data for the train function to test locally, based on a trained model version.
- Parameters:
model_version (String) – The string identifier of the model version
algorithm (String) – The particular algorithm’s name, whose train function to test with
training_config (Dict) – A dictionary for Abacus.AI defined training options and values
custom_algorithm_config (Any) – User-defined config that can be serialized by JSON
- Returns:
A dictionary that maps train function parameter names to their values.
- create_custom_loss_function(name, loss_function_type, loss_function)
Registers a new custom loss function which can be used as an objective function during model training.
- Parameters:
name (String) – A name for the loss. Should be unique per organization. Limit - 50 chars. Only underscores, numbers, uppercase alphabets allowed
loss_function_type (String) – The category of problems that this loss would be applicable to. Ex - REGRESSION_DL_TF, CLASSIFICATION_DL_TF, etc.
loss_function (Callable) – A python functor which can take required arguments (Ex - (y_true, y_pred)) and returns loss value(s) (Ex - An array of loss values of size batch size)
- Returns:
A description of the registered custom loss function
- Return type:
- Raises:
InvalidParameterError – If either loss function name or type or the passed function is invalid/incompatible
AlreadyExistsError – If the loss function with the same name already exists in the organization
- update_custom_loss_function(name, loss_function)
Updates a previously registered custom loss function with a new function implementation.
- Parameters:
name (String) – name of the registered custom loss.
loss_function (Callable) – A python functor which can take required arguments (Ex - (y_true, y_pred)) and returns loss value(s) (Ex - An array of loss values of size batch size)
- Returns:
A description of the updated custom loss function
- Return type:
- Raises:
InvalidParameterError – If either loss function name or type or the passed function is invalid/incompatible
DataNotFoundError – If a loss function with given name is not found in the organization
- create_custom_metric_from_function(name, problem_type, custom_metric_function)
Registers a new custom metric which can be used as an evaluation metric for the trained model.
- Parameters:
name (String) – A name for the metric. Should be unique per organization. Limit - 50 chars. Only underscores, numbers, uppercase alphabets allowed.
problem_type (String) – The problem type that this metric would be applicable to. e.g. - REGRESSION, FORECASTING, etc.
custom_metric_function (Callable) – A python functor which can take required arguments e.g. (y_true, y_pred) and returns the metric value.
- Returns:
The newly created custom metric.
- Return type:
- Raises:
InvalidParameterError – If either custom metric name or type or the passed function is invalid/incompatible.
AlreadyExistsError – If a custom metric with given name already exists in the organization.
- update_custom_metric_from_function(name, custom_metric_function)
Updates a previously registered custom metric.
- Parameters:
name (String) – A name for the metric. Should be unique per organization. Limit - 50 chars. Only underscores, numbers, uppercase alphabets allowed.
custom_metric_function (Callable) – A python functor which can take required arguments e.g. (y_true, y_pred) and returns the metric value.
- Returns:
The updated custom metric.
- Return type:
- Raises:
InvalidParameterError – If either custom metric name or type or the passed function is invalid/incompatible.
DataNotFoundError – If a custom metric with given name is not found in the organization.
- create_module_from_notebook(file_path, name)
Create a module with the code marked in the notebook. Use ‘#module_start#’ to mark the starting code cell and ‘#module_end#’ for the ending code cell.
- Parameters:
file_path (String) – Notebook’s relative path to the root directory, e.g. ‘n1.ipynb’
name (String) – Name of the module to create.
- Returns:
the created Abacus.ai module object
- Return type:
- update_module_from_notebook(file_path, name)
Update the module with the code marked in the notebook. Use ‘#module_start#’ to mark the starting code cell and ‘#module_end#’ for the ending code cell.
- Parameters:
file_path (String) – Notebook’s relative path to the root directory, e.g. ‘n1.ipynb’
name (String) – Name of the module to create.
- Returns:
the created Abacus.ai module object
- Return type:
- import_module(name)
Import a module created previously. It will reload if has been imported before. This will be equivalent to including from that module file.
- Parameters:
name (String) – Name of the module to import.
- Returns:
the imported python module
- Return type:
module
- run_workflow_graph(workflow_graph, sample_user_inputs={}, agent_workflow_node_id=None, agent_interface=None, package_requirements=None)
Validates the workflow graph by running the flow using sample user inputs for an AI Agent.
- Parameters:
workflow_graph (WorkflowGraph) – The workflow graph to validate.
sample_user_inputs (dict) – Contains sample values for variables of type user_input for starting node
agent_workflow_node_id (str) – Node id from which we want to run workflow
agent_interface (AgentInterface) – The interface that the agent will be deployed with.
package_requirements (list) – A list of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
- Returns:
The output variables for every node in workflow which has executed.
- Return type:
- execute_workflow_node(node, inputs)
Execute the workflow node given input arguments.
- Parameters:
node (WorkflowGraphNode) – The workflow node to be executed.
inputs (dict) – The inputs to be passed to the node function.
- Returns:
The outputs returned by node execution.
- Return type:
- create_agent_from_function(project_id, agent_function, name=None, memory=None, package_requirements=None, description=None, evaluation_feature_group_id=None, workflow_graph=None)
[Deprecated] Creates the agent from a python function
- Parameters:
project_id (str) – The project to create the model in
agent_function (callable) – The agent function callable to serialize and upload
name (str) – The name of the agent
memory (int) – Memory (in GB) for hosting the agent
package_requirements (List) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
description (str) – A description of the agent.
evaluation_feature_group_id (str) – The ID of the feature group to use for evaluation.
workflow_graph (WorkflowGraph) – The workflow graph for the agent.
- update_agent_with_function(model_id, agent_function, memory=None, package_requirements=None, enable_binary_input=None, description=None, workflow_graph=None)
[Deprecated] Updates the agent with a new agent function.
- Parameters:
model_id (str) – The unique ID associated with the AI Agent to be changed.
agent_function (callable) – The new agent function callable to serialize and upload
memory (int) – Memory (in GB) for hosting the agent
package_requirements (List) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
enable_binary_input (bool) – If True, the agent will be able to accept binary data as inputs.
description (str) – A description of the agent.
workflow_graph (WorkflowGraph) – The workflow graph for the agent.
- _attempt_deployment_sql_execution(sql)
- execute_feature_group_sql(sql, fix_query_on_error=False, timeout=3600, delay=2, use_latest_version=True)
Execute a SQL query on the feature groups
- Parameters:
sql (str) – The SQL query to execute.
fix_query_on_error (bool) – If enabled, SQL query is auto fixed if parsing fails.
use_latest_version (bool) – If enabled, executes the query on the latest version of the feature group, and if version doesn’t exist, FailedDependencyError is sent. If disabled, query is executed considering the latest feature group state irrespective of the latest version of the feature group. Defaults to True
- Returns:
The result of the query.
- Return type:
pandas.DataFrame
- get_agent_context_chat_history()
Gets a history of chat messages from the current request context. Applicable within a AIAgent execute function.
- Returns:
The chat history for the current request being processed by the Agent.
- Return type:
List[AgentChatMessage]
- set_agent_context_chat_history(chat_history)
Sets the history of chat messages from the current request context.
- Parameters:
chat_history (List[AgentChatMessage]) – The chat history associated with the current request context.
- get_agent_context_chat_history_for_llm()
Gets a history of chat messages from the current request context. Applicable within a AIAgent execute function.
- Returns:
The messages in format suitable for llm.
- Return type:
- get_agent_context_conversation_id()
Gets the deployment conversation ID from the current request context. Applicable within a AIAgent execute function.
- Returns:
The deployment conversation ID for the current request being processed by the Agent.
- Return type:
- set_agent_context_conversation_id(conversation_id)
Sets the deployment conversation ID from the current request context.
- Parameters:
conversation_id (str) – The deployment conversation ID for the current request being processed by the Agent.
- get_agent_context_external_session_id()
Gets the external session ID from the current request context if it has been set with the request. Applicable within a AIAgent execute function.
- Returns:
The external session ID for the current request being processed by the Agent.
- Return type:
- set_agent_context_external_session_id(external_session_id)
Sets the external session ID from the current request context if it has been set with the request.
- Parameters:
external_session_id (str) – The external session ID for the current request being processed by the Agent.
- get_agent_context_doc_ids()
Gets the document ID from the current request context if a document has been uploaded with the request. Applicable within a AIAgent execute function.
- Returns:
The document IDs the current request being processed by the Agent.
- Return type:
List[str]
- set_agent_context_doc_ids(doc_ids)
Sets the doc_ids from the current request context.
- Parameters:
doc_ids (List[str]) – The doc_ids associated with the current request context.
- get_agent_context_doc_infos()
Gets the document information from the current request context if documents have been uploaded with the request. Applicable within a AIAgent execute function.
- Returns:
The document information for the current request being processed by the Agent.
- Return type:
List[dict]
- set_agent_context_doc_infos(doc_infos)
Sets the doc_infos in the current request context.
- Parameters:
doc_infos (List[dict]) – The document information associated with the current request context.
- get_agent_context_blob_inputs()
Gets the BlobInputs from the current request context if a document has been uploaded with the request. Applicable within a AIAgent execute function.
- Returns:
The BlobInput the current request being processed by the Agent.
- Return type:
List[BlobInput]
- get_agent_context_user_info()
Gets information about the user interacting with the agent. Applicable within a AIAgent execute function.
- Returns:
Containing email and name of the end user.
- Return type:
- clear_agent_context()
Clears the current request context.
- streaming_evaluate_prompt(prompt=None, system_message=None, llm_name=None, max_tokens=None, temperature=0.0, messages=None, response_type=None, json_response_schema=None, section_key=None)
Generate response to the prompt using the specified model. This works the same as evaluate_prompt but would stream the text to the UI section while generating and returns the streamed text as an object of a str subclass.
- Parameters:
prompt (str) – Prompt to use for generation.
system_message (str) – System prompt for models that support it.
llm_name (LLMName) – Name of the underlying LLM to be used for generation. Default is auto selection.
max_tokens (int) – Maximum number of tokens to generate. If set, the model will just stop generating after this token limit is reached.
temperature (float) – Temperature to use for generation. Higher temperature makes more non-deterministic responses, a value of zero makes mostly deterministic reponses. Default is 0.0. A range of 0.0 - 2.0 is allowed.
messages (list) – A list of messages to use as conversation history. For completion models like OPENAI_GPT3_5_TEXT and PALM_TEXT this should not be set. A message is a dict with attributes: is_user (bool): Whether the message is from the user. text (str): The message’s text.
response_type (str) – Specifies the type of response to request from the LLM. One of ‘text’ and ‘json’. If set to ‘json’, the LLM will respond with a json formatted string whose schema can be specified json_response_schema. Defaults to ‘text’
json_response_schema (dict) – A dictionary specifying the keys/schema/parameters which LLM should adhere to in its response when response_type is ‘json’. Each parameter is mapped to a dict with the following info - type (str) (required): Data type of the parameter description (str) (required): Description of the parameter is_required (bool) (optional): Whether the parameter is required or not. Example: json_response_schema={ ‘title’: {‘type’: ‘string’, ‘description’: ‘Article title’, ‘is_required’: true}, ‘body’: {‘type’: ‘string’, ‘description’: ‘Article body’}, }
section_key (str) – Key to identify output schema section.
- Returns:
The response from the model.
- Return type:
text (str)
- execute_python(source_code)
Executes the given source code.
- Parameters:
source_code (str) – The source code to execute.
- Returns:
stdout, stderr, exception for source_code execution
- _get_agent_app_request_id()
Gets the current request ID for the current request context of async app. Applicable within a AIAgent execute function.
- Returns:
The request ID for the current request being processed by the Agent.
- Return type:
- _get_agent_async_app_caller()
Gets the caller for the current request context of async app. Applicable within a AIAgent execute function.
- Returns:
The caller for the current request being processed by the Agent.
- Return type:
- _is_proxy_app_caller()
Gets the caller for the current request context of async app. Applicable within a AIAgent execute function.
- Returns:
True if the caller is proxy app.
- Return type:
- stream_message(message, is_transient=False)
Streams a message to the current request context. Applicable within a AIAgent execute function. If the request is from the abacus.ai app, the response will be streamed to the UI. otherwise would be logged info if used from notebook or python script.
- stream_section_output(section_key, value)
Streams value corresponding to a particular section to the current request context. Applicable within a AIAgent execute function. If the request is from the abacus.ai app, the response will be streamed to the UI. otherwise would be logged info if used from notebook or python script.
- Parameters:
section_key (str) – The section key to which the output corresponds.
value (Any) – The output contents.
- Return type:
None
- stream_response_section(response_section)
Streams a response section to the current request context. Applicable within a AIAgent execute function. If the request is from the abacus.ai app, the response will be streamed to the UI. otherwise returned as part of response if used from notebook or python script.
- Parameters:
response_section (ResponseSection) – The response section to be streamed.
- _stream_llm_call(section_key=None, **kwargs)
- _call_aiagent_app_send_message(request_id, caller, message=None, segment=None, llm_args=None, message_args=None, extra_args=None, proxy_caller=False)
Calls the AI Agent app send message endpoint.
- Parameters:
- Returns:
The response from the AsyncApp.
- Return type:
- _status_poll(url, wait_states, method, body={}, headers=None, delay=1, timeout=1200)
- execute_data_query_using_llm(query, feature_group_ids, prompt_context=None, llm_name=None, temperature=None, preview=False, schema_document_retriever_ids=None, timeout=3600, delay=2, use_latest_version=True)
Execute a data query using a large language model.
- Parameters:
query (str) – The natural language query to execute. The query is converted to a SQL query using the language model.
feature_group_ids (List[str]) – A list of feature group IDs that the query should be executed against.
prompt_context (str) – The context message used to construct the prompt for the language model. If not provide, a default context message is used.
llm_name (str) – The name of the language model to use. If not provided, the default language model is used.
temperature (float) – The temperature to use for the language model if supported. If not provided, the default temperature is used.
preview (bool) – If True, a preview of the query execution is returned.
schema_document_retriever_ids (List[str]) – A list of document retrievers to retrieve schema information for the data query. Otherwise, they are retrieved from the feature group metadata.
timeout (int) – Time limit for the call.
delay (int) – Polling interval for checking timeout.
use_latest_version (bool) – If enabled, executes the query on the latest version of the feature group, and if version doesn’t exist, FailedDependencyError is sent. If disabled, query is executed considering the latest feature group state irrespective of the latest version of the feature group. Defaults to True.
- Returns:
The result of the query execution. Execution results could be loaded as pandas using ‘load_as_pandas’, i.e., result.execution.load_as_pandas().
- Return type:
- get_matching_documents(document_retriever_id, query, filters=None, limit=None, result_columns=None, max_words=None, num_retrieval_margin_words=None, max_words_per_chunk=None, score_multiplier_column=None, min_score=None, required_phrases=None, filter_clause=None, crowding_limits=None, include_text_search=False)
Lookup document retrievers and return the matching documents from the document retriever deployed with given query.
Original documents are splitted into chunks and stored in the document retriever. This lookup function will return the relevant chunks from the document retriever. The returned chunks could be expanded to include more words from the original documents and merged if they are overlapping, and permitted by the settings provided. The returned chunks are sorted by relevance.
- Parameters:
document_retriever_id (str) – A unique string identifier associated with the document retriever.
query (str) – The query to search for.
filters (dict) – A dictionary mapping column names to a list of values to restrict the retrieved search results.
limit (int) – If provided, will limit the number of results to the value specified.
result_columns (list) – If provided, will limit the column properties present in each result to those specified in this list.
max_words (int) – If provided, will limit the total number of words in the results to the value specified.
num_retrieval_margin_words (int) – If provided, will add this number of words from left and right of the returned chunks.
max_words_per_chunk (int) – If provided, will limit the number of words in each chunk to the value specified. If the value provided is smaller than the actual size of chunk on disk, which is determined during document retriever creation, the actual size of chunk will be used. I.e, chunks looked up from document retrievers will not be split into smaller chunks during lookup due to this setting.
score_multiplier_column (str) – If provided, will use the values in this column to modify the relevance score of the returned chunks. Values in this column must be numeric.
min_score (float) – If provided, will filter out the results with score lower than the value specified.
required_phrases (list) – If provided, each result will have at least one of the phrases.
filter_clause (str) – If provided, filter the results of the query using this sql where clause.
crowding_limits (dict) – A dictionary mapping metadata columns to the maximum number of results per unique value of the column. This is used to ensure diversity of metadata attribute values in the results. If a particular attribute value has already reached its maximum count, further results with that same attribute value will be excluded from the final result set.
include_text_search (bool) – If true, combine the ranking of results from a BM25 text search over the documents with the vector search using reciprocal rank fusion. It leverages both lexical and semantic matching for better overall results. It’s particularly valuable in professional, technical, or specialized fields where both precision in terminology and understanding of context are important.
- Returns:
The relevant documentation results found from the document retriever.
- Return type:
- create_model_from_files(project_id, location, name=None, custom_artifact_filenames={}, model_config={})
Creates a new Model and returns Upload IDs for uploading the model artifacts.
Use this in supported use cases to provide a pre-trained model and supporting artifacts to be hosted on our platform.
- Parameters:
project_id (str) – Unique string identifier associated with the project.
location (str) – Cloud location for the model.
name (str) – Name you want your model to have. Defaults to “<Project Name> Model”.
custom_artifact_filenames (dict) – Optional mapping to specify which filename should be used for a given model artifact type.
model_config (dict) – Extra configurations that are specific to the model being created.
- Returns:
The new model which is being trained.
- Return type:
- create_model_from_local_files(project_id, name=None, optional_artifacts=None, model_config={})
Creates a new Model and returns Upload IDs for uploading the model artifacts.
Use this in supported use cases to provide a pre-trained model and supporting artifacts to be hosted on our platform.
- Parameters:
project_id (str) – The unique ID associated with the project.
name (str) – The name you want your model to have. Defaults to “<Project Name> Model”.
optional_artifacts (list) – A list of strings describing additional artifacts for the model. An example would be a verification file.
model_config (dict) – Extra configurations that are specific to the model being created.
- Returns:
Collection of upload IDs to upload the model artifacts.
- Return type:
- create_model_version_from_files(model_id)
Creates a new Model Version by re-importing from the paths specified when the model was created.
- Parameters:
model_id (str) – Unique string identifier of the model to create a new version of with the new model artifacts.
- Returns:
The updated model.
- Return type:
- create_model_version_from_local_files(model_id, optional_artifacts=None)
Creates a new Model Version and returns Upload IDs for uploading the associated model artifacts.
- Parameters:
- Returns:
Collection of upload IDs to upload the model artifacts.
- Return type:
- get_streaming_chat_response(deployment_token, deployment_id, messages, llm_name=None, num_completion_tokens=None, system_message=None, temperature=0.0, filter_key_values=None, search_score_cutoff=None, chat_config=None, ignore_documents=False, include_search_results=False)
Return an asynchronous generator which continues the conversation based on the input messages and search results.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
messages (list) – A list of chronologically ordered messages, starting with a user message and alternating sources. A message is a dict with attributes: is_user (bool): Whether the message is from the user. text (str): The message’s text.
llm_name (str) – Name of the specific LLM backend to use to power the chat experience
num_completion_tokens (int) – Default for maximum number of tokens for chat answers
system_message (str) – The generative LLM system message
temperature (float) – The generative LLM temperature
filter_key_values (dict) – A dictionary mapping column names to a list of values to restrict the retrieved search results.
search_score_cutoff (float) – Cutoff for the document retriever score. Matching search results below this score will be ignored.
chat_config (dict) – A dictionary specifying the query chat config override.
ignore_documents (bool) – If True, will ignore any documents and search results, and only use the messages to generate a response.
include_search_results (bool) – If True, will also return search results, if relevant.
- get_streaming_conversation_response(deployment_token, deployment_id, message, deployment_conversation_id=None, external_session_id=None, llm_name=None, num_completion_tokens=None, system_message=None, temperature=0.0, filter_key_values=None, search_score_cutoff=None, chat_config=None, ignore_documents=False, include_search_results=False)
Return an asynchronous generator which continues the conversation based on the input messages and search results.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
message (str) – A message from the user
deployment_conversation_id (str) – The unique identifier of a deployment conversation to continue. If not specified, a new one will be created.
external_session_id (str) – The user supplied unique identifier of a deployment conversation to continue. If specified, we will use this instead of a internal deployment conversation id.
llm_name (str) – Name of the specific LLM backend to use to power the chat experience
num_completion_tokens (int) – Default for maximum number of tokens for chat answers
system_message (str) – The generative LLM system message
temperature (float) – The generative LLM temperature
filter_key_values (dict) – A dictionary mapping column names to a list of values to restrict the retrieved search results.
search_score_cutoff (float) – Cutoff for the document retriever score. Matching search results below this score will be ignored.
chat_config (dict) – A dictionary specifying the query chat config override.
ignore_documents (bool) – If True, will ignore any documents and search results, and only use the messages to generate a response.
include_search_results (bool) – If True, will also return search results, if relevant.
- execute_conversation_agent_streaming(deployment_token, deployment_id, arguments=None, keyword_arguments=None, deployment_conversation_id=None, external_session_id=None, regenerate=False, doc_infos=None, agent_workflow_node_id=None)
Return an asynchronous generator which gives out the agent response stream.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
arguments (list) – A list of arguments to pass to the agent.
keyword_arguments (dict) – A dictionary of keyword arguments to pass to the agent.
deployment_conversation_id (str) – The unique identifier of a deployment conversation to continue. If not specified, a new one will be created.
external_session_id (str) – The user supplied unique identifier of a deployment conversation to continue. If specified, we will use this instead of a internal deployment conversation id.
regenerate (bool) – If True, will regenerate the conversation from the start.
doc_infos (list) – A list of dictionaries containing information about the documents uploaded with the request.
agent_workflow_node_id (str) – The unique identifier of the agent workflow node to trigger. If not specified, the primary node will be used.
- set_cache_scope(scope)
Set the scope of the cache, for example, deployment id.
- Parameters:
scope (String) – The key of the cache entry.
- Returns:
None
- clear_cache_scope()
Clear the scope set before, and let it to automatically figure out the scope to use. If nothing found, will run in local.
- set_scoped_cache_value(key, value, expiration_time=21600)
Set the value to key in the cache scope. Scope will be automatically figured out inside a deployment, or set with set_cache_scope. If no scope found, will run in local.
- Parameters:
key (String) – The key of the cache entry.
value (String) – The value of the cache entry. Only string, integer and float numbers are supported now.
expiration_time (int) – How long to keep the cache key before expire, in seconds. Default is 6h.
- Returns:
None
- Raises:
InvalidParameterError – If key, value or expiration_time is invalid.
- get_scoped_cache_value(key)
Get the value of the key in the cache scope. Scope will be automatically figured out inside a deployment, or set with set_cache_scope. If no scope found, will run in local.
- Parameters:
key (String) – The key of the cache entry.
- Returns:
The value of the key
- Return type:
value (String)
- Raises:
Generic404Error – if the key doesn’t exist.
- delete_scoped_cache_key(key)
Delete the value of the key in the cache scope. Scope will be automatically figured out inside a deployment, or set with set_cache_scope. If no scope found, will run in local.
- Parameters:
key (String) – The key of the cache entry.
- Returns:
None
- set_agent_response_document_sources(response_document_sources)
Sets the document sources to be shown with the response on the conversation UI.
- Parameters:
response_document_sources (List) – List of document retriever results to be displayed in order.
- Returns:
None
- get_initialized_data()
Returns the object returned by the initialize_function during agent creation. :returns: Object returned in the initialize_function.
- add_user_to_organization(email)
Invite a user to your organization. This method will send the specified email address an invitation link to join your organization.
- Parameters:
email (str) – The email address to invite to your organization.
- create_organization_group(group_name, permissions, default_group=False)
Creates a new Organization Group.
- Parameters:
- Returns:
Information about the created Organization Group.
- Return type:
- add_organization_group_permission(organization_group_id, permission)
Adds a permission to the specified Organization Group.
- remove_organization_group_permission(organization_group_id, permission)
Removes a permission from the specified Organization Group.
- delete_organization_group(organization_group_id)
Deletes the specified Organization Group
- Parameters:
organization_group_id (str) – Unique string identifier of the organization group.
- add_user_to_organization_group(organization_group_id, email)
Adds a user to the specified Organization Group.
- remove_user_from_organization_group(organization_group_id, email)
Removes a user from an Organization Group.
- set_default_organization_group(organization_group_id)
Sets the default Organization Group to which all new users joining an organization are automatically added.
- Parameters:
organization_group_id (str) – Unique string identifier of the Organization Group.
- delete_api_key(api_key_id)
Delete a specified API key.
- Parameters:
api_key_id (str) – The ID of the API key to delete.
- remove_user_from_organization(email)
Removes the specified user from the organization. You can remove yourself; otherwise, you must be an organization administrator to use this method to remove other users from the organization.
- Parameters:
email (str) – The email address of the user to remove from the organization.
- send_email(email, subject, body, is_html=False)
Send an email to the specified email address with provided subject and contents.
- create_deployment_webhook(deployment_id, endpoint, webhook_event_type, payload_template=None)
Create a webhook attached to a given deployment ID.
- Parameters:
deployment_id (str) – Unique string identifier for the deployment this webhook will attach to.
endpoint (str) – URI that the webhook will send HTTP POST requests to.
webhook_event_type (str) – One of ‘DEPLOYMENT_START’, ‘DEPLOYMENT_SUCCESS’, or ‘DEPLOYMENT_FAILED’.
payload_template (dict) – Template for the body of the HTTP POST requests. Defaults to {}.
- Returns:
The webhook attached to the deployment.
- Return type:
- update_webhook(webhook_id, endpoint=None, webhook_event_type=None, payload_template=None)
Update the webhook
- delete_webhook(webhook_id)
Delete the webhook
- Parameters:
webhook_id (str) – Unique identifier of the target webhook.
- create_project(name, use_case)
Creates a project with the specified project name and use case. Creating a project creates a container for all datasets and models associated with a particular problem/project. For example, if you want to create a model to detect fraud, you need to first create a project, upload datasets, create feature groups, and then create one or more models to get predictions for your use case.
- Parameters:
name (str) – The project’s name.
use_case (str) – The use case that the project solves. Refer to our [guide on use cases](https://api.abacus.ai/app/help/useCases) for further details of each use case. The following enums are currently available for you to choose from: LANGUAGE_DETECTION, NLP_SENTIMENT, NLP_SEARCH, NLP_CHAT, CHAT_LLM, NLP_SENTENCE_BOUNDARY_DETECTION, NLP_CLASSIFICATION, NLP_SUMMARIZATION, NLP_DOCUMENT_VISUALIZATION, AI_AGENT, EMBEDDINGS_ONLY, MODEL_WITH_EMBEDDINGS, TORCH_MODEL, TORCH_MODEL_WITH_EMBEDDINGS, PYTHON_MODEL, NOTEBOOK_PYTHON_MODEL, DOCKER_MODEL, DOCKER_MODEL_WITH_EMBEDDINGS, CUSTOMER_CHURN, ENERGY, EVENT_ANOMALY_DETECTION, FINANCIAL_METRICS, CUMULATIVE_FORECASTING, FRAUD_ACCOUNT, FRAUD_TRANSACTIONS, CLOUD_SPEND, TIMESERIES_ANOMALY, OPERATIONS_MAINTENANCE, PERS_PROMOTIONS, PREDICTING, FEATURE_STORE, RETAIL, SALES_FORECASTING, SALES_SCORING, FEED_RECOMMEND, USER_RANKINGS, NAMED_ENTITY_RECOGNITION, USER_RECOMMENDATIONS, USER_RELATED, VISION, VISION_REGRESSION, VISION_OBJECT_DETECTION, FEATURE_DRIFT, SCHEDULING, GENERIC_FORECASTING, PRETRAINED_IMAGE_TEXT_DESCRIPTION, PRETRAINED_SPEECH_RECOGNITION, PRETRAINED_STYLE_TRANSFER, PRETRAINED_TEXT_TO_IMAGE_GENERATION, PRETRAINED_OCR_DOCUMENT_TO_TEXT, THEME_ANALYSIS, CLUSTERING, CLUSTERING_TIMESERIES, FINETUNED_LLM, PRETRAINED_INSTRUCT_PIX2PIX, PRETRAINED_TEXT_CLASSIFICATION.
- Returns:
This object represents the newly created project.
- Return type:
- rename_project(project_id, name)
This method renames a project after it is created.
- delete_project(project_id)
Delete a specified project from your organization.
This method deletes the project, its associated trained models, and deployments. The datasets attached to the specified project remain available for use with other projects in the organization.
This method will not delete a project that contains active deployments. Ensure that all active deployments are stopped before using the delete option.
Note: All projects, models, and deployments cannot be recovered once they are deleted.
- Parameters:
project_id (str) – The unique ID of the project to delete.
- add_project_tags(project_id, tags)
This method adds a tag to a project.
- remove_project_tags(project_id, tags)
This method removes a tag from a project.
- add_feature_group_to_project(feature_group_id, project_id, feature_group_type='CUSTOM_TABLE')
Adds a feature group to a project.
- set_project_feature_group_config(feature_group_id, project_id, project_config=None)
Sets a feature group’s project config
- Parameters:
feature_group_id (str) – Unique string identifier for the feature group.
project_id (str) – Unique string identifier for the project.
project_config (ProjectFeatureGroupConfig) – Feature group’s project configuration.
- remove_feature_group_from_project(feature_group_id, project_id)
Removes a feature group from a project.
- set_feature_group_type(feature_group_id, project_id, feature_group_type='CUSTOM_TABLE')
Update the feature group type in a project. The feature group must already be added to the project.
- set_feature_mapping(project_id, feature_group_id, feature_name, feature_mapping=None, nested_column_name=None)
Set a column’s feature mapping. If the column mapping is single-use and already set in another column in this feature group, this call will first remove the other column’s mapping and move it to this column.
- Parameters:
project_id (str) – The unique ID associated with the project.
feature_group_id (str) – The unique ID associated with the feature group.
feature_name (str) – The name of the feature.
feature_mapping (str) – The mapping of the feature in the feature group.
nested_column_name (str) – The name of the nested column if the input feature is part of a nested feature group for the given feature_group_id.
- Returns:
A list of objects that describes the resulting feature group’s schema after the feature’s featureMapping is set.
- Return type:
- add_annotation(annotation, feature_group_id, feature_name, doc_id=None, feature_group_row_identifier=None, annotation_source='ui', status=None, comments=None, project_id=None, save_metadata=False, pages=None)
Add an annotation entry to the database.
- Parameters:
annotation (dict) – The annotation to add. Format of the annotation is determined by its annotation type.
feature_group_id (str) – The ID of the feature group the annotation is on.
feature_name (str) – The name of the feature the annotation is on.
doc_id (str) – The ID of the primary document the annotation is on. At least one of the doc_id or feature_group_row_identifier must be provided in order to identify the correct annotation.
feature_group_row_identifier (str) – The key value of the feature group row the annotation is on (cast to string). Usually the feature group’s primary / identifier key value. At least one of the doc_id or feature_group_row_identifier must be provided in order to identify the correct annotation.
annotation_source (str) – Indicator of whether the annotation came from the UI, bulk upload, etc.
status (str) – The status of the annotation. Can be one of ‘todo’, ‘in_progress’, ‘done’. This is optional.
comments (dict) – Comments for the annotation. This is a dictionary of feature name to the corresponding comment. This is optional.
project_id (str) – The ID of the project that the annotation is associated with. This is optional.
save_metadata (bool) – Whether to save the metadata for the annotation. This is optional.
pages (list) – pages (list): List of page numbers to consider while processing the annotation. This is optional. doc_id must be provided if pages is provided.
- Returns:
The annotation entry that was added.
- Return type:
- describe_annotation(feature_group_id, feature_name=None, doc_id=None, feature_group_row_identifier=None)
Get the latest annotation entry for a given feature group, feature, and document.
- Parameters:
feature_group_id (str) – The ID of the feature group the annotation is on.
feature_name (str) – The name of the feature the annotation is on.
doc_id (str) – The ID of the primary document the annotation is on. At least one of the doc_id or feature_group_row_identifier must be provided in order to identify the correct annotation.
feature_group_row_identifier (str) – The key value of the feature group row the annotation is on (cast to string). Usually the feature group’s primary / identifier key value. At least one of the doc_id or feature_group_row_identifier must be provided in order to identify the correct annotation.
- Returns:
The latest annotation entry for the given feature group, feature, document, and/or annotation key value.
- Return type:
- update_annotation_status(feature_group_id, feature_name, status, doc_id=None, feature_group_row_identifier=None, save_metadata=False)
Update the status of an annotation entry.
- Parameters:
feature_group_id (str) – The ID of the feature group the annotation is on.
feature_name (str) – The name of the feature the annotation is on.
status (str) – The new status of the annotation. Must be one of the following: ‘TODO’, ‘IN_PROGRESS’, ‘DONE’.
doc_id (str) – The ID of the primary document the annotation is on. At least one of the doc_id or feature_group_row_identifier must be provided in order to identify the correct annotation.
feature_group_row_identifier (str) – The key value of the feature group row the annotation is on (cast to string). Usually the feature group’s primary / identifier key value. At least one of the doc_id or feature_group_row_identifier must be provided in order to identify the correct annotation.
save_metadata (bool) – If True, save the metadata for the annotation entry.
- Returns:
The updated annotation entry.
- Return type:
- get_document_to_annotate(feature_group_id, project_id, feature_name, feature_group_row_identifier=None, get_previous=False)
Get an available document that needs to be annotated for a annotation feature group.
- Parameters:
feature_group_id (str) – The ID of the feature group the annotation is on.
project_id (str) – The ID of the project that the annotation is associated with.
feature_name (str) – The name of the feature the annotation is on.
feature_group_row_identifier (str) – The key value of the feature group row the annotation is on (cast to string). Usually the primary key value. If provided, fetch the immediate next (or previous) available document.
get_previous (bool) – If True, get the previous document instead of the next document. Applicable if feature_group_row_identifier is provided.
- Returns:
The document to annotate.
- Return type:
- import_annotation_labels(feature_group_id, file, annotation_type)
Imports annotation labels from csv file. All valid values in the file will be imported as labels (including header row if present).
- Parameters:
feature_group_id (str) – The unique string identifier of the feature group.
file (io.TextIOBase) – The file to import. Must be a csv file.
annotation_type (str) – The type of the annotation.
- Returns:
The annotation config for the feature group.
- Return type:
- create_feature_group(table_name, sql, description=None, version_limit=30)
Creates a new FeatureGroup from a SQL statement.
- Parameters:
table_name (str) – The unique name to be given to the FeatureGroup. Can be up to 120 characters long and can only contain alphanumeric characters and underscores.
sql (str) – Input SQL statement for forming the FeatureGroup.
description (str) – The description about the FeatureGroup.
version_limit (int) – The number of versions to preserve for the FeatureGroup (minimum 30).
- Returns:
The created FeatureGroup.
- Return type:
- create_feature_group_from_template(table_name, feature_group_template_id, template_bindings=None, should_attach_feature_group_to_template=True, description=None, version_limit=30)
Creates a new feature group from a SQL statement.
- Parameters:
table_name (str) – The unique name to be given to the feature group. Can be up to 120 characters long and can only contain alphanumeric characters and underscores.
feature_group_template_id (str) – The unique ID associated with the template that will be used to create this feature group.
template_bindings (list) – Variable bindings that override the template’s variable values.
should_attach_feature_group_to_template (bool) – Set to False to create a feature group but not leave it attached to the template that created it.
description (str) – A user-friendly description of this feature group.
version_limit (int) – The number of versions to preserve for the feature group (minimum 30).
- Returns:
The created feature group.
- Return type:
- create_feature_group_from_function(table_name, function_source_code=None, function_name=None, input_feature_groups=None, description=None, cpu_size=None, memory=None, package_requirements=None, use_original_csv_names=False, python_function_name=None, python_function_bindings=None, use_gpu=None, version_limit=30)
Creates a new feature in a Feature Group from user-provided code. Currently supported code languages are Python.
If a list of input feature groups are supplied, we will provide DataFrames (pandas, in the case of Python) with the materialized feature groups for those input feature groups as arguments to the function.
This method expects the source code to be a valid language source file containing a function. This function needs to return a DataFrame when executed; this DataFrame will be used as the materialized version of this feature group table.
- Parameters:
table_name (str) – The unique name to be given to the feature group. Can be up to 120 characters long and can only contain alphanumeric characters and underscores.
function_source_code (str) – Contents of a valid source code file in a supported Feature Group specification language (currently only Python). The source code should contain a function called function_name. A list of allowed import and system libraries for each language is specified in the user functions documentation section.
function_name (str) – Name of the function found in the source code that will be executed (on the optional inputs) to materialize this feature group.
input_feature_groups (list) – List of feature group names that are supplied to the function as parameters. Each of the parameters are materialized Dataframes (same type as the functions return value).
description (str) – The description for this feature group.
cpu_size (CPUSize) – Size of the CPU for the feature group function.
memory (MemorySize) – Memory (in GB) for the feature group function.
package_requirements (list) – List of package requirements for the feature group function. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
use_original_csv_names (bool) – Defaults to False, if set it uses the original column names for input feature groups from CSV datasets.
python_function_name (str) – Name of Python Function that contains the source code and function arguments.
python_function_bindings (List) – List of python function arguments.
use_gpu (bool) – Whether the feature group needs a gpu or not. Otherwise default to CPU.
version_limit (int) – The number of versions to preserve for the feature group (minimum 30).
- Returns:
The created feature group
- Return type:
- create_sampling_feature_group(feature_group_id, table_name, sampling_config, description=None)
Creates a new Feature Group defined as a sample of rows from another Feature Group.
For efficiency, sampling is approximate unless otherwise specified. (e.g. the number of rows may vary slightly from what was requested).
- Parameters:
feature_group_id (str) – The unique ID associated with the pre-existing Feature Group that will be sampled by this new Feature Group. i.e. the input for sampling.
table_name (str) – The unique name to be given to this sampling Feature Group. Can be up to 120 characters long and can only contain alphanumeric characters and underscores.
sampling_config (SamplingConfig) – Dictionary defining the sampling method and its parameters.
description (str) – A human-readable description of this Feature Group.
- Returns:
The created Feature Group.
- Return type:
- create_merge_feature_group(source_feature_group_id, table_name, merge_config, description=None)
Creates a new feature group defined as the union of other feature group versions.
- Args:
source_feature_group_id (str): Unique string identifier corresponding to the dataset feature group that will have its versions merged into this feature group. table_name (str): Unique string identifier to be given to this merge feature group. Can be up to 120 characters long and can only contain alphanumeric characters and underscores. merge_config (MergeConfig): JSON object defining the merging method and its parameters. description (str): Human-readable description of this feature group.
- Returns:
FeatureGroup: The created feature group.
Description: Creates a new feature group defined as the union of other feature group versions.
- Parameters:
source_feature_group_id (str)
table_name (str)
merge_config (Union[dict, abacusai.api_class.MergeConfig])
description (str)
- Return type:
- create_operator_feature_group(source_feature_group_id, table_name, operator_config, description=None)
Creates a new Feature Group defined by a pre-defined operator applied to another Feature Group.
- Parameters:
source_feature_group_id (str) – Unique string identifier corresponding to the Feature Group to which the operator will be applied.
table_name (str) – Unique string identifier for the operator Feature Group. Can be up to 120 characters long and can only contain alphanumeric characters and underscores.
operator_config (OperatorConfig) – The operator config is used to define the operator and its parameters.
description (str) – Human-readable description of the Feature Group.
- Returns:
The created Feature Group.
- Return type:
- create_snapshot_feature_group(feature_group_version, table_name)
Creates a Snapshot Feature Group corresponding to a specific Feature Group version.
- Parameters:
- Returns:
Feature Group corresponding to the newly created Snapshot.
- Return type:
- create_online_feature_group(table_name, primary_key, description=None)
Creates an Online Feature Group.
- Parameters:
- Returns:
The created online feature group.
- Return type:
- set_feature_group_sampling_config(feature_group_id, sampling_config)
Set a FeatureGroup’s sampling to the config values provided, so that the rows the FeatureGroup returns will be a sample of those it would otherwise have returned.
- Parameters:
feature_group_id (str) – The unique identifier associated with the FeatureGroup.
sampling_config (SamplingConfig) – A JSON string object specifying the sampling method and parameters specific to that sampling method. An empty sampling_config indicates no sampling.
- Returns:
The updated FeatureGroup.
- Return type:
- set_feature_group_merge_config(feature_group_id, merge_config)
Set a MergeFeatureGroup’s merge config to the values provided, so that the feature group only returns a bounded range of an incremental dataset.
- Parameters:
feature_group_id (str) – Unique identifier associated with the feature group.
merge_config (MergeConfig) – JSON object string specifying the merge rule. An empty merge_config will default to only including the latest dataset version.
- Returns:
The updated FeatureGroup.
- Return type:
- set_feature_group_operator_config(feature_group_id, operator_config)
Set a OperatorFeatureGroup’s operator config to the values provided.
- Parameters:
feature_group_id (str) – A unique string identifier associated with the feature group.
operator_config (OperatorConfig) – A dictionary object specifying the pre-defined operations.
- Returns:
The updated FeatureGroup.
- Return type:
- set_feature_group_schema(feature_group_id, schema)
Creates a new schema and points the feature group to the new feature group schema ID.
- create_feature(feature_group_id, name, select_expression)
Creates a new feature in a Feature Group from a SQL select statement.
- Parameters:
- Returns:
A Feature Group object with the newly added feature.
- Return type:
- add_feature_group_tag(feature_group_id, tag)
Adds a tag to the feature group
- remove_feature_group_tag(feature_group_id, tag)
Removes a tag from the specified feature group.
- add_annotatable_feature(feature_group_id, name, annotation_type)
Add an annotatable feature in a Feature Group
- Parameters:
- Returns:
The feature group after the feature has been set
- Return type:
- set_feature_as_annotatable_feature(feature_group_id, feature_name, annotation_type, feature_group_row_identifier_feature=None, doc_id_feature=None)
Sets an existing feature as an annotatable feature (Feature that can be annotated).
- Parameters:
feature_group_id (str) – The unique ID associated with the feature group.
feature_name (str) – The name of the feature to set as annotatable.
annotation_type (str) – The type of annotation label to add.
feature_group_row_identifier_feature (str) – The key value of the feature group row the annotation is on (cast to string) and uniquely identifies the feature group row. At least one of the doc_id or key value must be provided so that the correct annotation can be identified.
doc_id_feature (str) – The name of the document ID feature.
- Returns:
A feature group object with the newly added annotatable feature.
- Return type:
- set_annotation_status_feature(feature_group_id, feature_name)
Sets a feature as the annotation status feature for a feature group.
- Parameters:
- Returns:
The updated feature group.
- Return type:
- unset_feature_as_annotatable_feature(feature_group_id, feature_name)
Unsets a feature as annotatable
- Parameters:
- Returns:
The feature group after unsetting the feature
- Return type:
- add_feature_group_annotation_label(feature_group_id, label_name, annotation_type, label_definition=None)
Adds an annotation label
- Parameters:
- Returns:
The feature group after adding the annotation label
- Return type:
- remove_feature_group_annotation_label(feature_group_id, label_name)
Removes an annotation label
- Parameters:
- Returns:
The feature group after adding the annotation label
- Return type:
- add_feature_tag(feature_group_id, feature, tag)
Adds a tag on a feature
- remove_feature_tag(feature_group_id, feature, tag)
Removes a tag from a feature
- create_nested_feature(feature_group_id, nested_feature_name, table_name, using_clause, where_clause=None, order_clause=None)
Creates a new nested feature in a feature group from a SQL statement.
- Parameters:
feature_group_id (str) – The unique ID associated with the feature group.
nested_feature_name (str) – The name of the feature.
table_name (str) – The table name of the feature group to nest. Can be up to 120 characters long and can only contain alphanumeric characters and underscores.
using_clause (str) – The SQL join column or logic to join the nested table with the parent.
where_clause (str) – A SQL WHERE statement to filter the nested rows.
order_clause (str) – A SQL clause to order the nested rows.
- Returns:
A feature group object with the newly added nested feature.
- Return type:
- update_nested_feature(feature_group_id, nested_feature_name, table_name=None, using_clause=None, where_clause=None, order_clause=None, new_nested_feature_name=None)
Updates a previously existing nested feature in a feature group.
- Parameters:
feature_group_id (str) – The unique ID associated with the feature group.
nested_feature_name (str) – The name of the feature to be updated.
table_name (str) – The name of the table. Can be up to 120 characters long and can only contain alphanumeric characters and underscores.
using_clause (str) – The SQL join column or logic to join the nested table with the parent.
where_clause (str) – An SQL WHERE statement to filter the nested rows.
order_clause (str) – An SQL clause to order the nested rows.
new_nested_feature_name (str) – New name for the nested feature.
- Returns:
A feature group object with the updated nested feature.
- Return type:
- delete_nested_feature(feature_group_id, nested_feature_name)
Delete a nested feature.
- Parameters:
- Returns:
A feature group object without the specified nested feature.
- Return type:
- create_point_in_time_feature(feature_group_id, feature_name, history_table_name, aggregation_keys, timestamp_key, historical_timestamp_key, expression, lookback_window_seconds=None, lookback_window_lag_seconds=0, lookback_count=None, lookback_until_position=0)
Creates a new point in time feature in a feature group using another historical feature group, window spec, and aggregate expression.
We use the aggregation keys and either the lookbackWindowSeconds or the lookbackCount values to perform the window aggregation for every row in the current feature group.
If the window is specified in seconds, then all rows in the history table which match the aggregation keys and with historicalTimeFeature greater than or equal to lookbackStartCount and less than the value of the current rows timeFeature are considered. An optional lookbackWindowLagSeconds (+ve or -ve) can be used to offset the current value of the timeFeature. If this value is negative, we will look at the future rows in the history table, so care must be taken to ensure that these rows are available in the online context when we are performing a lookup on this feature group. If the window is specified in counts, then we order the historical table rows aligning by time and consider rows from the window where the rank order is greater than or equal to lookbackCount and includes the row just prior to the current one. The lag is specified in terms of positions using lookbackUntilPosition.
- Parameters:
feature_group_id (str) – The unique ID associated with the feature group.
feature_name (str) – The name of the feature to create.
history_table_name (str) – The table name of the history table.
aggregation_keys (list) – List of keys to use for joining the historical table and performing the window aggregation.
timestamp_key (str) – Name of feature which contains the timestamp value for the point in time feature.
historical_timestamp_key (str) – Name of feature which contains the historical timestamp.
expression (str) – SQL aggregate expression which can convert a sequence of rows into a scalar value.
lookback_window_seconds (float) – If window is specified in terms of time, number of seconds in the past from the current time for start of the window.
lookback_window_lag_seconds (float) – Optional lag to offset the closest point for the window. If it is positive, we delay the start of window. If it is negative, we are looking at the “future” rows in the history table.
lookback_count (int) – If window is specified in terms of count, the start position of the window (0 is the current row).
lookback_until_position (int) – Optional lag to offset the closest point for the window. If it is positive, we delay the start of window by that many rows. If it is negative, we are looking at those many “future” rows in the history table.
- Returns:
A feature group object with the newly added nested feature.
- Return type:
- update_point_in_time_feature(feature_group_id, feature_name, history_table_name=None, aggregation_keys=None, timestamp_key=None, historical_timestamp_key=None, expression=None, lookback_window_seconds=None, lookback_window_lag_seconds=None, lookback_count=None, lookback_until_position=None, new_feature_name=None)
Updates an existing Point-in-Time (PiT) feature in a feature group. See createPointInTimeFeature for detailed semantics.
- Parameters:
feature_group_id (str) – The unique ID associated with the feature group.
feature_name (str) – The name of the feature.
history_table_name (str) – The table name of the history table. If not specified, we use the current table to do a self join.
aggregation_keys (list) – List of keys to use for joining the historical table and performing the window aggregation.
timestamp_key (str) – Name of the feature which contains the timestamp value for the PiT feature.
historical_timestamp_key (str) – Name of the feature which contains the historical timestamp.
expression (str) – SQL Aggregate expression which can convert a sequence of rows into a scalar value.
lookback_window_seconds (float) – If the window is specified in terms of time, the number of seconds in the past from the current time for the start of the window.
lookback_window_lag_seconds (float) – Optional lag to offset the closest point for the window. If it is positive, we delay the start of the window. If it is negative, we are looking at the “future” rows in the history table.
lookback_count (int) – If the window is specified in terms of count, the start position of the window (0 is the current row).
lookback_until_position (int) – Optional lag to offset the closest point for the window. If it is positive, we delay the start of the window by that many rows. If it is negative, we are looking at those many “future” rows in the history table.
new_feature_name (str) – New name for the PiT feature.
- Returns:
A feature group object with the newly added nested feature.
- Return type:
- create_point_in_time_group(feature_group_id, group_name, window_key, aggregation_keys, history_table_name=None, history_window_key=None, history_aggregation_keys=None, lookback_window=None, lookback_window_lag=0, lookback_count=None, lookback_until_position=0)
Create a Point-in-Time Group
- Parameters:
feature_group_id (str) – The unique ID associated with the feature group to add the point in time group to.
group_name (str) – The name of the point in time group.
window_key (str) – Name of feature to use for ordering the rows on the source table.
aggregation_keys (list) – List of keys to perform on the source table for the window aggregation.
history_table_name (str) – The table to use for aggregating, if not provided, the source table will be used.
history_window_key (str) – Name of feature to use for ordering the rows on the history table. If not provided, the windowKey from the source table will be used.
history_aggregation_keys (list) – List of keys to use for join the historical table and performing the window aggregation. If not provided, the aggregationKeys from the source table will be used. Must be the same length and order as the source table’s aggregationKeys.
lookback_window (float) – Number of seconds in the past from the current time for the start of the window. If 0, the lookback will include all rows.
lookback_window_lag (float) – Optional lag to offset the closest point for the window. If it is positive, the start of the window is delayed. If it is negative, “future” rows in the history table are used.
lookback_count (int) – If window is specified in terms of count, the start position of the window (0 is the current row).
lookback_until_position (int) – Optional lag to offset the closest point for the window. If it is positive, the start of the window is delayed by that many rows. If it is negative, those many “future” rows in the history table are used.
- Returns:
The feature group after the point in time group has been created.
- Return type:
- generate_point_in_time_features(feature_group_id, group_name, columns, window_functions, prefix=None)
Generates and adds PIT features given the selected columns to aggregate over, and the operations to include.
- Parameters:
feature_group_id (str) – Unique string identifier associated with the feature group.
group_name (str) – Name of the point-in-time group.
columns (list) – List of columns to generate point-in-time features for.
window_functions (list) – List of window functions to operate on.
prefix (str) – Prefix for generated features, defaults to group name
- Returns:
Feature group object with newly added point-in-time features.
- Return type:
- update_point_in_time_group(feature_group_id, group_name, window_key=None, aggregation_keys=None, history_table_name=None, history_window_key=None, history_aggregation_keys=None, lookback_window=None, lookback_window_lag=None, lookback_count=None, lookback_until_position=None)
Update Point-in-Time Group
- Parameters:
feature_group_id (str) – The unique ID associated with the feature group.
group_name (str) – The name of the point-in-time group.
window_key (str) – Name of feature which contains the timestamp value for the point-in-time feature.
aggregation_keys (list) – List of keys to use for joining the historical table and performing the window aggregation.
history_table_name (str) – The table to use for aggregating, if not provided, the source table will be used.
history_window_key (str) – Name of feature to use for ordering the rows on the history table. If not provided, the windowKey from the source table will be used.
history_aggregation_keys (list) – List of keys to use for joining the historical table and performing the window aggregation. If not provided, the aggregationKeys from the source table will be used. Must be the same length and order as the source table’s aggregationKeys.
lookback_window (float) – Number of seconds in the past from the current time for the start of the window.
lookback_window_lag (float) – Optional lag to offset the closest point for the window. If it is positive, the start of the window is delayed. If it is negative, future rows in the history table are looked at.
lookback_count (int) – If window is specified in terms of count, the start position of the window (0 is the current row).
lookback_until_position (int) – Optional lag to offset the closest point for the window. If it is positive, the start of the window is delayed by that many rows. If it is negative, those many future rows in the history table are looked at.
- Returns:
The feature group after the update has been applied.
- Return type:
- delete_point_in_time_group(feature_group_id, group_name)
Delete point in time group
- Parameters:
- Returns:
The feature group after the point in time group has been deleted.
- Return type:
- create_point_in_time_group_feature(feature_group_id, group_name, name, expression)
Create point in time group feature
- Parameters:
feature_group_id (str) – A unique string identifier associated with the feature group.
group_name (str) – The name of the point-in-time group.
name (str) – The name of the feature to add to the point-in-time group.
expression (str) – A SQL aggregate expression which can convert a sequence of rows into a scalar value.
- Returns:
The feature group after the update has been applied.
- Return type:
- update_point_in_time_group_feature(feature_group_id, group_name, name, expression)
Update a feature’s SQL expression in a point in time group
- Parameters:
feature_group_id (str) – The unique ID associated with the feature group.
group_name (str) – The name of the point-in-time group.
name (str) – The name of the feature to add to the point-in-time group.
expression (str) – SQL aggregate expression which can convert a sequence of rows into a scalar value.
- Returns:
The feature group after the update has been applied.
- Return type:
- set_feature_type(feature_group_id, feature, feature_type, project_id=None)
Set the type of a feature in a feature group. Specify the feature group ID, feature name, and feature type, and the method will return the new column with the changes reflected.
- Parameters:
- Returns:
The feature group after the data_type is applied.
- Return type:
- concatenate_feature_group_data(feature_group_id, source_feature_group_id, merge_type='UNION', replace_until_timestamp=None, skip_materialize=False)
Concatenates data from one Feature Group to another. Feature Groups can be merged if their schemas are compatible, they have the special updateTimestampKey column, and (if set) the primaryKey column. The second operand in the concatenate operation will be appended to the first operand (merge target).
- Parameters:
feature_group_id (str) – The destination Feature Group.
source_feature_group_id (str) – The Feature Group to concatenate with the destination Feature Group.
merge_type (str) – UNION or INTERSECTION.
replace_until_timestamp (int) – The UNIX timestamp to specify the point until which we will replace data from the source Feature Group.
skip_materialize (bool) – If True, will not materialize the concatenated Feature Group.
- remove_concatenation_config(feature_group_id)
Removes the concatenation config on a destination feature group.
- Parameters:
feature_group_id (str) – Unique identifier of the destination feature group to remove the concatenation configuration from.
- set_feature_group_indexing_config(feature_group_id, primary_key=None, update_timestamp_key=None, lookup_keys=None)
Sets various attributes of the feature group used for primary key, deployment lookups and streaming updates.
- Parameters:
feature_group_id (str) – Unique string identifier for the feature group.
primary_key (str) – Name of the feature which defines the primary key of the feature group.
update_timestamp_key (str) – Name of the feature which defines the update timestamp of the feature group. Used in concatenation and primary key deduplication.
lookup_keys (list) – List of feature names which can be used in the lookup API to restrict the computation to a set of dataset rows. These feature names have to correspond to underlying dataset columns.
- execute_async_feature_group_operation(query=None, fix_query_on_error=False, use_latest_version=True)
Starts the execution of fg operation
- Parameters:
query (str) – The SQL to be executed.
fix_query_on_error (bool) – If enabled, SQL query is auto fixed if parsing fails.
use_latest_version (bool) – If enabled, executes the query on the latest version of the feature group, and if version doesn’t exist, FailedDependencyError is sent. If disabled, query is executed considering the latest feature group state irrespective of the latest version of the feature group.
- Returns:
A dict that contains the execution status
- Return type:
- describe_async_feature_group_operation(feature_group_operation_run_id)
Gets the status of the execution of fg operation
- Parameters:
feature_group_operation_run_id (str) – The unique ID associated with the execution.
- Returns:
A dict that contains the execution status
- Return type:
- update_feature_group(feature_group_id, description=None)
Modify an existing Feature Group.
- Parameters:
- Returns:
Updated Feature Group object.
- Return type:
- detach_feature_group_from_template(feature_group_id)
Update a feature group to detach it from a template.
- Parameters:
feature_group_id (str) – Unique string identifier associated with the feature group.
- Returns:
The updated feature group.
- Return type:
- update_feature_group_template_bindings(feature_group_id, template_bindings=None)
Update the feature group template bindings for a template feature group.
- Parameters:
- Returns:
Updated feature group.
- Return type:
- update_feature_group_python_function_bindings(feature_group_id, python_function_bindings)
Updates an existing Feature Group’s Python function bindings from a user-provided Python Function. If a list of feature groups are supplied within the Python function bindings, we will provide DataFrames (Pandas in the case of Python) with the materialized feature groups for those input feature groups as arguments to the function.
- Parameters:
feature_group_id (str) – The unique ID associated with the feature group.
python_function_bindings (List) – List of python function arguments.
- update_feature_group_python_function(feature_group_id, python_function_name, python_function_bindings=None, cpu_size=None, memory=None, use_gpu=None, use_original_csv_names=None)
Updates an existing Feature Group’s python function from a user provided Python Function. If a list of feature groups are supplied within the python function
bindings, we will provide as arguments to the function DataFrame’s (pandas in the case of Python) with the materialized feature groups for those input feature groups.
- Parameters:
feature_group_id (str) – The unique ID associated with the feature group.
python_function_name (str) – The name of the python function to be associated with the feature group.
python_function_bindings (List) – List of python function arguments.
cpu_size (CPUSize) – Size of the CPU for the feature group python function.
memory (MemorySize) – Memory (in GB) for the feature group python function.
use_gpu (bool) – Whether the feature group needs a gpu or not. Otherwise default to CPU.
use_original_csv_names (bool) – If enabled, it uses the original column names for input feature groups from CSV datasets.
- update_feature_group_sql_definition(feature_group_id, sql)
Updates the SQL statement for a feature group.
- Parameters:
- Returns:
The updated feature group.
- Return type:
- update_dataset_feature_group_feature_expression(feature_group_id, feature_expression)
Updates the SQL feature expression for a Dataset FeatureGroup’s custom features
- Parameters:
- Returns:
The updated feature group.
- Return type:
- update_feature(feature_group_id, name, select_expression=None, new_name=None)
Modifies an existing feature in a feature group.
- Parameters:
- Returns:
Updated feature group object.
- Return type:
- export_feature_group_version_to_file_connector(feature_group_version, location, export_file_format, overwrite=False)
Export Feature group to File Connector.
- Parameters:
feature_group_version (str) – Unique string identifier for the feature group instance to export.
location (str) – Cloud file location to export to.
export_file_format (str) – Enum string specifying the file format to export to.
overwrite (bool) – If true and a file exists at this location, this process will overwrite the file.
- Returns:
The FeatureGroupExport instance.
- Return type:
- export_feature_group_version_to_database_connector(feature_group_version, database_connector_id, object_name, write_mode, database_feature_mapping, id_column=None, additional_id_columns=None)
Export Feature group to Database Connector.
- Parameters:
feature_group_version (str) – Unique string identifier for the Feature Group instance to export.
database_connector_id (str) – Unique string identifier for the Database Connector to export to.
object_name (str) – Name of the database object to write to.
write_mode (str) – Enum string indicating whether to use INSERT or UPSERT.
database_feature_mapping (dict) – Key/value pair JSON object of “database connector column” -> “feature name” pairs.
id_column (str) – Required if write_mode is UPSERT. Indicates which database column should be used as the lookup key.
additional_id_columns (list) – For database connectors which support it, additional ID columns to use as a complex key for upserting.
- Returns:
The FeatureGroupExport instance.
- Return type:
- export_feature_group_version_to_console(feature_group_version, export_file_format)
Export Feature group to console.
- Parameters:
- Returns:
The FeatureGroupExport instance.
- Return type:
- set_feature_group_modifier_lock(feature_group_id, locked=True)
Lock a feature group to prevent modification.
- add_user_to_feature_group_modifiers(feature_group_id, email)
Adds a user to a feature group.
- add_organization_group_to_feature_group_modifiers(feature_group_id, organization_group_id)
Add OrganizationGroup to a feature group modifiers list
- remove_user_from_feature_group_modifiers(feature_group_id, email)
Removes a user from a specified feature group.
- remove_organization_group_from_feature_group_modifiers(feature_group_id, organization_group_id)
Removes an OrganizationGroup from a feature group modifiers list
- delete_feature(feature_group_id, name)
Removes a feature from the feature group.
- Parameters:
- Returns:
Updated feature group object.
- Return type:
- delete_feature_group(feature_group_id)
Deletes a Feature Group.
- Parameters:
feature_group_id (str) – Unique string identifier for the feature group to be removed.
- delete_feature_group_version(feature_group_version)
Deletes a Feature Group Version.
- Parameters:
feature_group_version (str) – String identifier for the feature group version to be removed.
- create_feature_group_version(feature_group_id, variable_bindings=None)
Creates a snapshot for a specified feature group. Triggers materialization of the feature group. The new version of the feature group is created after it has materialized.
- Parameters:
- Returns:
A feature group version.
- Return type:
- set_feature_group_export_connector_config(feature_group_id, feature_group_export_config=None)
Sets FG export config for the given feature group.
- Parameters:
feature_group_id (str) – The unique ID associated with the pre-existing Feature Group for which export config is to be set.
feature_group_export_config (FeatureGroupExportConfig) – The export config to be set for the given feature group.
- set_export_on_materialization(feature_group_id, enable)
Can be used to enable or disable exporting feature group data to the export connector associated with the feature group.
- create_feature_group_template(feature_group_id, name, template_sql, template_variables, description=None, template_bindings=None, should_attach_feature_group_to_template=False)
Create a feature group template.
- Parameters:
feature_group_id (str) – Unique identifier of the feature group this template was created from.
name (str) – User-friendly name for this feature group template.
template_sql (str) – The template SQL that will be resolved by applying values from the template variables to generate SQL for a feature group.
template_variables (list) – The template variables for resolving the template.
description (str) – Description of this feature group template.
template_bindings (list) – If the feature group will be attached to the newly created template, set these variable bindings on that feature group.
should_attach_feature_group_to_template (bool) – Set to True to convert the feature group to a template feature group and attach it to the newly created template.
- Returns:
The created feature group template.
- Return type:
- delete_feature_group_template(feature_group_template_id)
Delete an existing feature group template.
- Parameters:
feature_group_template_id (str) – Unique string identifier associated with the feature group template.
- update_feature_group_template(feature_group_template_id, template_sql=None, template_variables=None, description=None, name=None)
Update a feature group template.
- Parameters:
feature_group_template_id (str) – Unique identifier of the feature group template to update.
template_sql (str) – If provided, the new value to use for the template SQL.
template_variables (list) – If provided, the new value to use for the template variables.
description (str) – Description of this feature group template.
name (str) – User-friendly name for this feature group template.
- Returns:
The updated feature group template.
- Return type:
- preview_feature_group_template_resolution(feature_group_template_id=None, template_bindings=None, template_sql=None, template_variables=None, should_validate=True)
Resolve template sql using template variables and template bindings.
- Parameters:
feature_group_template_id (str) – Unique string identifier. If specified, use this template, otherwise assume an empty template.
template_bindings (list) – Values to override the template variable values specified by the template.
template_sql (str) – If specified, use this as the template SQL instead of the feature group template’s SQL.
template_variables (list) – Template variables to use. If a template is provided, this overrides the template’s template variables.
should_validate (bool) – If true, validates the resolved SQL.
- Returns:
The resolved template
- Return type:
- cancel_upload(upload_id)
Cancels an upload.
- Parameters:
upload_id (str) – A unique string identifier for the upload.
- upload_part(upload_id, part_number, part_data)
Uploads part of a large dataset file from your bucket to our system. Our system currently supports parts of up to 5GB and full files of up to 5TB. Note that each part must be at least 5MB in size, unless it is the last part in the sequence of parts for the full file.
- Parameters:
upload_id (str) – A unique identifier for this upload.
part_number (int) – The 1-indexed number denoting the position of the file part in the sequence of parts for the full file.
part_data (io.TextIOBase) – The multipart/form-data for the current part of the full file.
- Returns:
The object ‘UploadPart’ which encapsulates the hash and the etag for the part that got uploaded.
- Return type:
- mark_upload_complete(upload_id)
Marks an upload process as complete.
- create_dataset_from_file_connector(table_name, location, file_format=None, refresh_schedule=None, csv_delimiter=None, filename_column=None, start_prefix=None, until_prefix=None, sql_query=None, location_date_format=None, date_format_lookback_days=None, incremental=False, is_documentset=False, extract_bounding_boxes=False, document_processing_config=None, merge_file_schemas=False, reference_only_documentset=False, parsing_config=None, version_limit=30)
Creates a dataset from a file located in a cloud storage, such as Amazon AWS S3, using the specified dataset name and location.
- Parameters:
table_name (str) – Organization-unique table name or the name of the feature group table to create using the source table.
location (str) – The URI location format of the dataset source. The URI location format needs to be specified to match the location_date_format when location_date_format is specified. For example, Location = s3://bucket1/dir1/dir2/event_date=YYYY-MM-DD/* when location_date_format is specified. The URI location format needs to include both the start_prefix and until_prefix when both are specified. For example, Location s3://bucket1/dir1/* includes both s3://bucket1/dir1/dir2/event_date=2021-08-02/* and s3://bucket1/dir1/dir2/event_date=2021-08-08/*
file_format (str) – The file format of the dataset.
refresh_schedule (str) – The Cron time string format that describes a schedule to retrieve the latest version of the imported dataset. The time is specified in UTC.
csv_delimiter (str) – If the file format is CSV, use a specific csv delimiter.
filename_column (str) – Adds a new column to the dataset with the external URI path.
start_prefix (str) – The start prefix (inclusive) for a range based search on a cloud storage location URI.
until_prefix (str) – The end prefix (exclusive) for a range based search on a cloud storage location URI.
sql_query (str) – The SQL query to use when fetching data from the specified location. Use __TABLE__ as a placeholder for the table name. For example: “SELECT * FROM __TABLE__ WHERE event_date > ‘2021-01-01’”. If not provided, the entire dataset from the specified location will be imported.
location_date_format (str) – The date format in which the data is partitioned in the cloud storage location. For example, if the data is partitioned as s3://bucket1/dir1/dir2/event_date=YYYY-MM-DD/dir4/filename.parquet, then the location_date_format is YYYY-MM-DD. This format needs to be consistent across all files within the specified location.
date_format_lookback_days (int) – The number of days to look back from the current day for import locations that are date partitioned. For example, import date 2021-06-04 with date_format_lookback_days = 3 will retrieve data for all the dates in the range [2021-06-02, 2021-06-04].
incremental (bool) – Signifies if the dataset is an incremental dataset.
is_documentset (bool) – Signifies if the dataset is docstore dataset. A docstore dataset contains documents like images, PDFs, audio files etc. or is tabular data with links to such files.
extract_bounding_boxes (bool) – Signifies whether to extract bounding boxes out of the documents. Only valid if is_documentset if True.
document_processing_config (DatasetDocumentProcessingConfig) – The document processing configuration. Only valid if is_documentset is True.
merge_file_schemas (bool) – Signifies if the merge file schema policy is enabled. If is_documentset is True, this is also set to True by default.
reference_only_documentset (bool) – Signifies if the data reference only policy is enabled.
parsing_config (ParsingConfig) – Custom config for dataset parsing.
version_limit (int) – The number of recent versions to preserve for the dataset (minimum 30).
- Returns:
The dataset created.
- Return type:
- create_dataset_version_from_file_connector(dataset_id, location=None, file_format=None, csv_delimiter=None, merge_file_schemas=None, parsing_config=None, sql_query=None)
Creates a new version of the specified dataset.
- Parameters:
dataset_id (str) – Unique string identifier associated with the dataset.
location (str) – External URI to import the dataset from. If not specified, the last location will be used.
file_format (str) – File format to be used. If not specified, the service will try to detect the file format.
csv_delimiter (str) – If the file format is CSV, use a specific CSV delimiter.
merge_file_schemas (bool) – Signifies if the merge file schema policy is enabled.
parsing_config (ParsingConfig) – Custom config for dataset parsing.
sql_query (str) – The SQL query to use when fetching data from the specified location. Use __TABLE__ as a placeholder for the table name. For example: “SELECT * FROM __TABLE__ WHERE event_date > ‘2021-01-01’”. If not provided, the entire dataset from the specified location will be imported.
- Returns:
The new Dataset Version created.
- Return type:
- create_dataset_from_database_connector(table_name, database_connector_id, object_name=None, columns=None, query_arguments=None, refresh_schedule=None, sql_query=None, incremental=False, attachment_parsing_config=None, incremental_database_connector_config=None, document_processing_config=None, version_limit=30)
Creates a dataset from a Database Connector.
- Parameters:
table_name (str) – Organization-unique table name.
database_connector_id (str) – Unique String Identifier of the Database Connector to import the dataset from.
object_name (str) – If applicable, the name/ID of the object in the service to query.
columns (str) – The columns to query from the external service object.
query_arguments (str) – Additional query arguments to filter the data.
refresh_schedule (str) – The Cron time string format that describes a schedule to retrieve the latest version of the imported dataset. The time is specified in UTC.
sql_query (str) – The full SQL query to use when fetching data. If present, this parameter will override object_name, columns, timestamp_column, and query_arguments.
incremental (bool) – Signifies if the dataset is an incremental dataset.
attachment_parsing_config (AttachmentParsingConfig) – The attachment parsing configuration. Only valid when attachments are being imported, either will take fg name and column name, or we will take list of urls to import (e.g. importing attachments via Salesforce).
incremental_database_connector_config (IncrementalDatabaseConnectorConfig) – The config for incremental datasets. Only valid if incremental is True
document_processing_config (DatasetDocumentProcessingConfig) – The document processing configuration. Only valid when documents are being imported (e.g. importing KnowledgeArticleDescriptions via Salesforce).
version_limit (int) – The number of recent versions to preserve for the dataset (minimum 30).
- Returns:
The created dataset.
- Return type:
- create_dataset_from_application_connector(table_name, application_connector_id, dataset_config=None, refresh_schedule=None, version_limit=30)
Creates a dataset from an Application Connector.
- Parameters:
table_name (str) – Organization-unique table name.
application_connector_id (str) – Unique string identifier of the application connector to download data from.
dataset_config (ApplicationConnectorDatasetConfig) – Dataset config for the application connector.
refresh_schedule (str) – Cron time string format that describes a schedule to retrieve the latest version of the imported dataset. The time is specified in UTC.
version_limit (int) – The number of recent versions to preserve for the dataset (minimum 30).
- Returns:
The created dataset.
- Return type:
- create_dataset_version_from_database_connector(dataset_id, object_name=None, columns=None, query_arguments=None, sql_query=None)
Creates a new version of the specified dataset.
- Parameters:
dataset_id (str) – The unique ID associated with the dataset.
object_name (str) – The name/ID of the object in the service to query. If not specified, the last name will be used.
columns (str) – The columns to query from the external service object. If not specified, the last columns will be used.
query_arguments (str) – Additional query arguments to filter the data. If not specified, the last arguments will be used.
sql_query (str) – The full SQL query to use when fetching data. If present, this parameter will override object_name, columns, and query_arguments.
- Returns:
The new Dataset Version created.
- Return type:
- create_dataset_version_from_application_connector(dataset_id, dataset_config=None)
Creates a new version of the specified dataset.
- Parameters:
dataset_id (str) – The unique ID associated with the dataset.
dataset_config (ApplicationConnectorDatasetConfig) – Dataset config for the application connector. If any of the fields are not specified, the last values will be used.
- Returns:
The new Dataset Version created.
- Return type:
- create_dataset_from_upload(table_name, file_format=None, csv_delimiter=None, is_documentset=False, extract_bounding_boxes=False, parsing_config=None, merge_file_schemas=False, document_processing_config=None, version_limit=30)
Creates a dataset and returns an upload ID that can be used to upload a file.
- Parameters:
table_name (str) – Organization-unique table name for this dataset.
file_format (str) – The file format of the dataset.
csv_delimiter (str) – If the file format is CSV, use a specific CSV delimiter.
is_documentset (bool) – Signifies if the dataset is a docstore dataset. A docstore dataset contains documents like images, PDFs, audio files etc. or is tabular data with links to such files.
extract_bounding_boxes (bool) – Signifies whether to extract bounding boxes out of the documents. Only valid if is_documentset if True.
parsing_config (ParsingConfig) – Custom config for dataset parsing.
merge_file_schemas (bool) – Signifies whether to merge the schemas of all files in the dataset. If is_documentset is True, this is also set to True by default.
document_processing_config (DatasetDocumentProcessingConfig) – The document processing configuration. Only valid if is_documentset is True.
version_limit (int) – The number of recent versions to preserve for the dataset (minimum 30).
- Returns:
A reference to be used when uploading file parts.
- Return type:
- create_dataset_version_from_upload(dataset_id, file_format=None)
Creates a new version of the specified dataset using a local file upload.
- create_dataset_version_from_document_reprocessing(dataset_id, document_processing_config=None)
Creates a new dataset version for a source docstore dataset with the provided document processing configuration. This does not re-import the data but uses the same data which is imported in the latest dataset version and only performs document processing on it.
- Parameters:
dataset_id (str) – The unique ID associated with the dataset to use as the source dataset.
document_processing_config (DatasetDocumentProcessingConfig) – The document processing configuration to use for the new dataset version. If not specified, the document processing configuration from the source dataset will be used.
- Returns:
The new dataset version created.
- Return type:
- create_streaming_dataset(table_name, primary_key=None, update_timestamp_key=None, lookup_keys=None, version_limit=30)
Creates a streaming dataset. Use a streaming dataset if your dataset is receiving information from multiple sources over an extended period of time.
- Parameters:
table_name (str) – The feature group table name to create for this dataset.
primary_key (str) – The optional primary key column name for the dataset.
update_timestamp_key (str) – Name of the feature which defines the update timestamp of the feature group. Used in concatenation and primary key deduplication. Only relevant if lookup keys are set.
lookup_keys (list) – List of feature names which can be used in the lookup API to restrict the computation to a set of dataset rows. These feature names have to correspond to underlying dataset columns.
version_limit (int) – The number of recent versions to preserve for the dataset (minimum 30).
- Returns:
The streaming dataset created.
- Return type:
- create_realtime_content_store(table_name, application_connector_id, dataset_config=None)
Creates a real-time content store dataset.
- Parameters:
table_name (str) – Organization-unique table name.
application_connector_id (str) – Unique string identifier of the application connector to download data from.
dataset_config (ApplicationConnectorDatasetConfig) – Dataset config for the application connector.
- Returns:
The created dataset.
- Return type:
- snapshot_streaming_data(dataset_id)
Snapshots the current data in the streaming dataset.
- Parameters:
dataset_id (str) – The unique ID associated with the dataset.
- Returns:
The new Dataset Version created by taking a snapshot of the current data in the streaming dataset.
- Return type:
- set_dataset_column_data_type(dataset_id, column, data_type)
Set a Dataset’s column type.
- Parameters:
- Returns:
The dataset and schema after the data type has been set.
- Return type:
- create_dataset_from_streaming_connector(table_name, streaming_connector_id, dataset_config=None, refresh_schedule=None, version_limit=30)
Creates a dataset from a Streaming Connector
- Parameters:
table_name (str) – Organization-unique table name
streaming_connector_id (str) – Unique String Identifier for the Streaming Connector to import the dataset from
dataset_config (StreamingConnectorDatasetConfig) – Streaming dataset config
refresh_schedule (str) – Cron time string format that describes a schedule to retrieve the latest version of the imported dataset. Time is specified in UTC.
version_limit (int) – The number of recent versions to preserve for the dataset (minimum 30).
- Returns:
The created dataset.
- Return type:
- set_streaming_retention_policy(dataset_id, retention_hours=None, retention_row_count=None, ignore_records_before_timestamp=None)
Sets the streaming retention policy.
- Parameters:
dataset_id (str) – Unique string identifier for the streaming dataset.
retention_hours (int) – Number of hours to retain streamed data in memory.
retention_row_count (int) – Number of rows to retain streamed data in memory.
ignore_records_before_timestamp (int) – The Unix timestamp (in seconds) to use as a cutoff to ignore all entries sent before it
- rename_database_connector(database_connector_id, name)
Renames a Database Connector
- rename_application_connector(application_connector_id, name)
Renames a Application Connector
- verify_database_connector(database_connector_id)
Checks if Abacus.AI can access the specified database.
- Parameters:
database_connector_id (str) – Unique string identifier for the database connector.
- verify_file_connector(bucket)
Checks to see if Abacus.AI can access the given bucket.
- Parameters:
bucket (str) – The bucket to test.
- Returns:
The result of the verification.
- Return type:
- delete_database_connector(database_connector_id)
Delete a database connector.
- Parameters:
database_connector_id (str) – The unique identifier for the database connector.
- delete_application_connector(application_connector_id)
Delete an application connector.
- Parameters:
application_connector_id (str) – The unique identifier for the application connector.
- delete_file_connector(bucket)
Deletes a file connector
- Parameters:
bucket (str) – The fully qualified URI of the bucket to remove.
- verify_application_connector(application_connector_id)
Checks if Abacus.AI can access the application using the provided application connector ID.
- Parameters:
application_connector_id (str) – Unique string identifier for the application connector.
- set_azure_blob_connection_string(bucket, connection_string)
Authenticates the specified Azure Blob Storage bucket using an authenticated Connection String.
- Parameters:
- Returns:
An object with the roleArn and verification status for the specified bucket.
- Return type:
- verify_streaming_connector(streaming_connector_id)
Checks to see if Abacus.AI can access the streaming connector.
- Parameters:
streaming_connector_id (str) – Unique string identifier for the streaming connector to be checked for Abacus.AI access.
- rename_streaming_connector(streaming_connector_id, name)
Renames a Streaming Connector
- delete_streaming_connector(streaming_connector_id)
Delete a streaming connector.
- Parameters:
streaming_connector_id (str) – The unique identifier for the streaming connector.
- create_streaming_token()
Creates a streaming token for the specified project. Streaming tokens are used to authenticate requests when appending data to streaming datasets.
- Returns:
The generated streaming token.
- Return type:
- delete_streaming_token(streaming_token)
Deletes the specified streaming token.
- Parameters:
streaming_token (str) – The streaming token to delete.
- delete_dataset(dataset_id)
Deletes the specified dataset from the organization.
- Parameters:
dataset_id (str) – Unique string identifier of the dataset to delete.
- delete_dataset_version(dataset_version)
Deletes the specified dataset version from the organization.
- Parameters:
dataset_version (str) – String identifier of the dataset version to delete.
- get_docstore_page_data(doc_id, page, document_processing_config=None, document_processing_version=None)
Returns the extracted page data for a document page.
- Parameters:
doc_id (str) – A unique Docstore string identifier for the document.
page (int) – The page number to retrieve. Page numbers start from 0.
document_processing_config (DocumentProcessingConfig) – The document processing configuration to use for returning the data when the document is processed via EXTRACT_DOCUMENT_DATA Feature Group Operator. If Feature Group Operator is not used, this parameter should be kept as None. If Feature Group Operator is used but this parameter is not provided, the latest available data or the default configuration will be used.
document_processing_version (str) – The document processing version to use for returning the data when the document is processed via EXTRACT_DOCUMENT_DATA Feature Group Operator. If Feature Group Operator is not used, this parameter should be kept as None. If Feature Group Operator is used but this parameter is not provided, the latest version will be used.
- Returns:
The extracted page data.
- Return type:
- get_docstore_document_data(doc_id, document_processing_config=None, document_processing_version=None, return_extracted_page_text=False)
Returns the extracted data for a document.
- Parameters:
doc_id (str) – A unique Docstore string identifier for the document.
document_processing_config (DocumentProcessingConfig) – The document processing configuration to use for returning the data when the document is processed via EXTRACT_DOCUMENT_DATA Feature Group Operator. If Feature Group Operator is not used, this parameter should be kept as None. If Feature Group Operator is used but this parameter is not provided, the latest available data or the default configuration will be used.
document_processing_version (str) – The document processing version to use for returning the data when the document is processed via EXTRACT_DOCUMENT_DATA Feature Group Operator. If Feature Group Operator is not used, this parameter should be kept as None. If Feature Group Operator is used but this parameter is not provided, the latest version will be used.
return_extracted_page_text (bool) – Specifies whether to include a list of extracted text for each page in the response. Defaults to false if not provided.
- Returns:
The extracted document data.
- Return type:
- extract_document_data(document=None, doc_id=None, document_processing_config=None, start_page=None, end_page=None, return_extracted_page_text=False)
Extracts data from a document.
- Parameters:
document (io.TextIOBase) – The document to extract data from. One of document or doc_id must be provided.
doc_id (str) – A unique Docstore string identifier for the document. One of document or doc_id must be provided.
document_processing_config (DocumentProcessingConfig) – The document processing configuration.
start_page (int) – The starting page to extract data from. Pages are indexed starting from 0. If not provided, the first page will be used.
end_page (int) – The last page to extract data from. Pages are indexed starting from 0. If not provided, the last page will be used.
return_extracted_page_text (bool) – Specifies whether to include a list of extracted text for each page in the response. Defaults to false if not provided.
- Returns:
The extracted document data.
- Return type:
- get_training_config_options(project_id, feature_group_ids=None, for_retrain=False, current_training_config=None)
Retrieves the full initial description of the model training configuration options available for the specified project. The configuration options available are determined by the use case associated with the specified project. Refer to the [Use Case Documentation]({USE_CASES_URL}) for more information on use cases and use case-specific configuration options.
- Parameters:
project_id (str) – The unique ID associated with the project.
feature_group_ids (List) – The feature group IDs to be used for training.
for_retrain (bool) – Whether the training config options are used for retraining.
current_training_config (TrainingConfig) – The current state of the training config, with some options set, which shall be used to get new options after refresh. This is None by default initially.
- Returns:
An array of options that can be specified when training a model in this project.
- Return type:
- create_train_test_data_split_feature_group(project_id, training_config, feature_group_ids)
Get the train and test data split without training the model. Only supported for models with custom algorithms.
- Parameters:
project_id (str) – The unique ID associated with the project.
training_config (TrainingConfig) – The training config used to influence how the split is calculated.
feature_group_ids (List) – List of feature group IDs provided by the user, including the required one for data split and others to influence how to split.
- Returns:
The feature group containing the training data and folds information.
- Return type:
- train_model(project_id, name=None, training_config=None, feature_group_ids=None, refresh_schedule=None, custom_algorithms=None, custom_algorithms_only=False, custom_algorithm_configs=None, builtin_algorithms=None, cpu_size=None, memory=None, algorithm_training_configs=None)
Create a new model and start its training in the given project.
- Parameters:
project_id (str) – The unique ID associated with the project.
name (str) – The name of the model. Defaults to “<Project Name> Model”.
training_config (TrainingConfig) – The training config used to train this model.
feature_group_ids (List) – List of feature group IDs provided by the user to train the model on.
refresh_schedule (str) – A cron-style string that describes a schedule in UTC to automatically retrain the created model.
custom_algorithms (list) – List of user-defined algorithms to train. If not set, the default enabled custom algorithms will be used.
custom_algorithms_only (bool) – Whether to only run custom algorithms.
custom_algorithm_configs (dict) – Configs for each user-defined algorithm; key is the algorithm name, value is the config serialized to JSON.
builtin_algorithms (list) – List of algorithm names or algorithm IDs of the builtin algorithms provided by Abacus.AI to train. If not set, all applicable builtin algorithms will be used.
cpu_size (str) – Size of the CPU for the user-defined algorithms during training.
memory (int) – Memory (in GB) for the user-defined algorithms during training.
algorithm_training_configs (list) – List of algorithm specifc training configs that will be part of the model training AutoML run.
- Returns:
The new model which is being trained.
- Return type:
- create_model_from_python(project_id, function_source_code, train_function_name, training_input_tables, predict_function_name=None, predict_many_function_name=None, initialize_function_name=None, name=None, cpu_size=None, memory=None, training_config=None, exclusive_run=False, package_requirements=None, use_gpu=False, is_thread_safe=None)
Initializes a new Model from user-provided Python code. If a list of input feature groups is supplied, they will be provided as arguments to the train and predict functions with the materialized feature groups for those input feature groups.
This method expects functionSourceCode to be a valid language source file which contains the functions named trainFunctionName and predictFunctionName. trainFunctionName returns the ModelVersion that is the result of training the model using trainFunctionName and predictFunctionName has no well-defined return type, as it returns the prediction made by the predictFunctionName, which can be anything.
- Parameters:
project_id (str) – The unique ID associated with the project.
function_source_code (str) – Contents of a valid Python source code file. The source code should contain the functions named trainFunctionName and predictFunctionName. A list of allowed import and system libraries for each language is specified in the user functions documentation section.
train_function_name (str) – Name of the function found in the source code that will be executed to train the model. It is not executed when this function is run.
training_input_tables (list) – List of feature groups that are supplied to the train function as parameters. Each of the parameters are materialized Dataframes (same type as the functions return value).
predict_function_name (str) – Name of the function found in the source code that will be executed to run predictions through the model. It is not executed when this function is run.
predict_many_function_name (str) – Name of the function found in the source code that will be executed for batch prediction of the model. It is not executed when this function is run.
initialize_function_name (str) – Name of the function found in the source code to initialize the trained model before using it to make predictions using the model
name (str) – The name you want your model to have. Defaults to “<Project Name> Model”
cpu_size (str) – Size of the CPU for the model training function
memory (int) – Memory (in GB) for the model training function
training_config (TrainingConfig) – Training configuration
exclusive_run (bool) – Decides if this model will be run exclusively or along with other Abacus.AI algorithms
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
use_gpu (bool) – Whether this model needs gpu
is_thread_safe (bool) – Whether this model is thread safe
- Returns:
The new model, which has not been trained.
- Return type:
- rename_model(model_id, name)
Renames a model
- update_python_model(model_id, function_source_code=None, train_function_name=None, predict_function_name=None, predict_many_function_name=None, initialize_function_name=None, training_input_tables=None, cpu_size=None, memory=None, package_requirements=None, use_gpu=None, is_thread_safe=None, training_config=None)
Updates an existing Python Model using user-provided Python code. If a list of input feature groups is supplied, they will be provided as arguments to the train and predict functions with the materialized feature groups for those input feature groups.
This method expects functionSourceCode to be a valid language source file which contains the functions named trainFunctionName and predictFunctionName. trainFunctionName returns the ModelVersion that is the result of training the model using trainFunctionName. predictFunctionName has no well-defined return type, as it returns the prediction made by the predictFunctionName, which can be anything.
- Parameters:
model_id (str) – The unique ID associated with the Python model to be changed.
function_source_code (str) – Contents of a valid Python source code file. The source code should contain the functions named trainFunctionName and predictFunctionName. A list of allowed import and system libraries for each language is specified in the user functions documentation section.
train_function_name (str) – Name of the function found in the source code that will be executed to train the model. It is not executed when this function is run.
predict_function_name (str) – Name of the function found in the source code that will be executed to run predictions through the model. It is not executed when this function is run.
predict_many_function_name (str) – Name of the function found in the source code that will be executed to run batch predictions through the model. It is not executed when this function is run.
initialize_function_name (str) – Name of the function found in the source code to initialize the trained model before using it to make predictions using the model.
training_input_tables (list) – List of feature groups that are supplied to the train function as parameters. Each of the parameters are materialized DataFrames (same type as the functions return value).
cpu_size (str) – Size of the CPU for the model training function.
memory (int) – Memory (in GB) for the model training function.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
use_gpu (bool) – Whether this model needs gpu
is_thread_safe (bool) – Whether this model is thread safe
training_config (TrainingConfig) – The training config used to train this model.
- Returns:
The updated model.
- Return type:
- update_python_model_zip(model_id, train_function_name=None, predict_function_name=None, predict_many_function_name=None, train_module_name=None, predict_module_name=None, training_input_tables=None, cpu_size=None, memory=None, package_requirements=None, use_gpu=None)
Updates an existing Python Model using a provided zip file. If a list of input feature groups are supplied, they will be provided as arguments to the train and predict functions with the materialized feature groups for those input feature groups.
This method expects trainModuleName and predictModuleName to be valid language source files which contain the functions named trainFunctionName and predictFunctionName, respectively. trainFunctionName returns the ModelVersion that is the result of training the model using trainFunctionName, and predictFunctionName has no well-defined return type, as it returns the prediction made by the predictFunctionName, which can be anything.
- Parameters:
model_id (str) – The unique ID associated with the Python model to be changed.
train_function_name (str) – Name of the function found in the train module that will be executed to train the model. It is not executed when this function is run.
predict_function_name (str) – Name of the function found in the predict module that will be executed to run predictions through the model. It is not executed when this function is run.
predict_many_function_name (str) – Name of the function found in the predict module that will be executed to run batch predictions through the model. It is not executed when this function is run.
train_module_name (str) – Full path of the module that contains the train function from the root of the zip.
predict_module_name (str) – Full path of the module that contains the predict function from the root of the zip.
training_input_tables (list) – List of feature groups that are supplied to the train function as parameters. Each of the parameters are materialized Dataframes (same type as the function’s return value).
cpu_size (str) – Size of the CPU for the model training function.
memory (int) – Memory (in GB) for the model training function.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
use_gpu (bool) – Whether this model needs gpu
- Returns:
The updated model.
- Return type:
- update_python_model_git(model_id, application_connector_id=None, branch_name=None, python_root=None, train_function_name=None, predict_function_name=None, predict_many_function_name=None, train_module_name=None, predict_module_name=None, training_input_tables=None, cpu_size=None, memory=None, use_gpu=None)
Updates an existing Python model using an existing Git application connector. If a list of input feature groups are supplied, these will be provided as arguments to the train and predict functions with the materialized feature groups for those input feature groups.
This method expects trainModuleName and predictModuleName to be valid language source files which contain the functions named trainFunctionName and predictFunctionName, respectively. trainFunctionName returns the ModelVersion that is the result of training the model using trainFunctionName, and predictFunctionName has no well-defined return type, as it returns the prediction made by the predictFunctionName, which can be anything.
- Parameters:
model_id (str) – The unique ID associated with the Python model to be changed.
application_connector_id (str) – The unique ID associated with the Git application connector.
branch_name (str) – Name of the branch in the Git repository to be used for training.
python_root (str) – Path from the top level of the Git repository to the directory containing the Python source code. If not provided, the default is the root of the Git repository.
train_function_name (str) – Name of the function found in train module that will be executed to train the model. It is not executed when this function is run.
predict_function_name (str) – Name of the function found in the predict module that will be executed to run predictions through model. It is not executed when this function is run.
predict_many_function_name (str) – Name of the function found in the predict module that will be executed to run batch predictions through model. It is not executed when this function is run.
train_module_name (str) – Full path of the module that contains the train function from the root of the zip.
predict_module_name (str) – Full path of the module that contains the predict function from the root of the zip.
training_input_tables (list) – List of feature groups that are supplied to the train function as parameters. Each of the parameters are materialized Dataframes (same type as the functions return value).
cpu_size (str) – Size of the CPU for the model training function.
memory (int) – Memory (in GB) for the model training function.
use_gpu (bool) – Whether this model needs gpu
- Returns:
The updated model.
- Return type:
- set_model_training_config(model_id, training_config, feature_group_ids=None)
Edits the default model training config
- Parameters:
model_id (str) – A unique string identifier of the model to update.
training_config (TrainingConfig) – The training config used to train this model.
feature_group_ids (List) – The list of feature groups used as input to the model.
- Returns:
The model object corresponding to the updated training config.
- Return type:
- set_model_objective(model_version, metric=None)
Sets the best model for all model instances of the model based on the specified metric, and updates the training configuration to use the specified metric for any future model versions.
If metric is set to None, then just use the default selection
- set_model_prediction_params(model_id, prediction_config)
Sets the model prediction config for the model
- retrain_model(model_id, deployment_ids=None, feature_group_ids=None, custom_algorithms=None, builtin_algorithms=None, custom_algorithm_configs=None, cpu_size=None, memory=None, training_config=None, algorithm_training_configs=None)
Retrains the specified model, with an option to choose the deployments to which the retraining will be deployed.
- Parameters:
model_id (str) – Unique string identifier of the model to retrain.
deployment_ids (List) – List of unique string identifiers of deployments to automatically deploy to.
feature_group_ids (List) – List of feature group IDs provided by the user to train the model on.
custom_algorithms (list) – List of user-defined algorithms to train. If not set, will honor the runs from the last time and applicable new custom algorithms.
builtin_algorithms (list) – List of algorithm names or algorithm IDs of Abacus.AI built-in algorithms to train. If not set, will honor the runs from the last time and applicable new built-in algorithms.
custom_algorithm_configs (dict) – User-defined training configs for each custom algorithm.
cpu_size (str) – Size of the CPU for the user-defined algorithms during training.
memory (int) – Memory (in GB) for the user-defined algorithms during training.
training_config (TrainingConfig) – The training config used to train this model.
algorithm_training_configs (list) – List of algorithm specifc training configs that will be part of the model training AutoML run.
- Returns:
The model that is being retrained.
- Return type:
- delete_model(model_id)
Deletes the specified model and all its versions. Models which are currently used in deployments cannot be deleted.
- Parameters:
model_id (str) – Unique string identifier of the model to delete.
- delete_model_version(model_version)
Deletes the specified model version. Model versions which are currently used in deployments cannot be deleted.
- Parameters:
model_version (str) – The unique identifier of the model version to delete.
- export_model_artifact_as_feature_group(model_version, table_name, artifact_type=None)
Exports metric artifact data for a model as a feature group.
- Parameters:
model_version (str) – Unique string identifier for the version of the model.
table_name (str) – Name of the feature group table to create.
artifact_type (EvalArtifactType) – eval artifact type to export.
- Returns:
The created feature group.
- Return type:
- set_default_model_algorithm(model_id, algorithm=None, data_cluster_type=None)
Sets the model’s algorithm to default for all new deployments
- get_custom_train_function_info(project_id, feature_group_names_for_training=None, training_data_parameter_name_override=None, training_config=None, custom_algorithm_config=None)
Returns information about how to call the custom train function.
- Parameters:
project_id (str) – The unique version ID of the project.
feature_group_names_for_training (list) – A list of feature group table names to be used for training.
training_data_parameter_name_override (dict) – Override from feature group type to parameter name in the train function.
training_config (TrainingConfig) – Training config for the options supported by the Abacus.AI platform.
custom_algorithm_config (dict) – User-defined config that can be serialized by JSON.
- Returns:
Information about how to call the customer-provided train function.
- Return type:
- export_custom_model_version(model_version, output_location, algorithm=None)
Bundle custom model artifacts to a zip file, and export to the specified location.
- Parameters:
- Returns:
Object describing the export and its status.
- Return type:
- create_model_monitor(project_id, prediction_feature_group_id, training_feature_group_id=None, name=None, refresh_schedule=None, target_value=None, target_value_bias=None, target_value_performance=None, feature_mappings=None, model_id=None, training_feature_mappings=None, feature_group_base_monitor_config=None, feature_group_comparison_monitor_config=None, exclude_interactive_performance_analysis=True, exclude_bias_analysis=None, exclude_performance_analysis=None, exclude_feature_drift_analysis=None, exclude_data_integrity_analysis=None)
Runs a model monitor for the specified project.
- Parameters:
project_id (str) – The unique ID associated with the project.
prediction_feature_group_id (str) – The unique ID of the prediction data feature group.
training_feature_group_id (str) – The unique ID of the training data feature group.
name (str) – The name you want your model monitor to have. Defaults to “<Project Name> Model Monitor”.
refresh_schedule (str) – A cron-style string that describes a schedule in UTC to automatically retrain the created model monitor.
target_value (str) – A target positive value for the label to compute bias and PR/AUC for performance page.
target_value_bias (str) – A target positive value for the label to compute bias.
target_value_performance (str) – A target positive value for the label to compute PR curve/AUC for performance page.
feature_mappings (dict) – A JSON map to override features for prediction_feature_group, where keys are column names and the values are feature data use types.
model_id (str) – The unique ID of the model.
training_feature_mappings (dict) – A JSON map to override features for training_fature_group, where keys are column names and the values are feature data use types.
feature_group_base_monitor_config (dict) – Selection strategy for the feature_group 1 with the feature group version if selected.
feature_group_comparison_monitor_config (dict) – Selection strategy for the feature_group 1 with the feature group version if selected.
exclude_interactive_performance_analysis (bool) – Whether to exclude interactive performance analysis. Defaults to True if not provided.
exclude_bias_analysis (bool) – Whether to exclude bias analysis in the model monitor. For default value bias analysis is included.
exclude_performance_analysis (bool) – Whether to exclude performance analysis in the model monitor. For default value performance analysis is included.
exclude_feature_drift_analysis (bool) – Whether to exclude feature drift analysis in the model monitor. For default value feature drift analysis is included.
exclude_data_integrity_analysis (bool) – Whether to exclude data integrity analysis in the model monitor. For default value data integrity analysis is included.
- Returns:
The new model monitor that was created.
- Return type:
- rerun_model_monitor(model_monitor_id)
Re-runs the specified model monitor.
- Parameters:
model_monitor_id (str) – Unique string identifier of the model monitor to re-run.
- Returns:
The model monitor that is being re-run.
- Return type:
- rename_model_monitor(model_monitor_id, name)
Renames a model monitor
- delete_model_monitor(model_monitor_id)
Deletes the specified Model Monitor and all its versions.
- Parameters:
model_monitor_id (str) – Unique identifier of the Model Monitor to delete.
- delete_model_monitor_version(model_monitor_version)
Deletes the specified model monitor version.
- Parameters:
model_monitor_version (str) – Unique identifier of the model monitor version to delete.
- create_vision_drift_monitor(project_id, prediction_feature_group_id, training_feature_group_id, name, feature_mappings, training_feature_mappings, target_value_performance=None, refresh_schedule=None)
Runs a vision drift monitor for the specified project.
- Parameters:
project_id (str) – Unique string identifier of the project.
prediction_feature_group_id (str) – Unique string identifier of the prediction data feature group.
training_feature_group_id (str) – Unique string identifier of the training data feature group.
name (str) – The name you want your model monitor to have. Defaults to “<Project Name> Model Monitor”.
feature_mappings (dict) – A JSON map to override features for prediction_feature_group, where keys are column names and the values are feature data use types.
training_feature_mappings (dict) – A JSON map to override features for training_feature_group, where keys are column names and the values are feature data use types.
target_value_performance (str) – A target positive value for the label to compute precision-recall curve/area under curve for performance page.
refresh_schedule (str) – A cron-style string that describes a schedule in UTC to automatically rerun the created vision drift monitor.
- Returns:
The new model monitor that was created.
- Return type:
- create_nlp_drift_monitor(project_id, prediction_feature_group_id, training_feature_group_id, name, feature_mappings, training_feature_mappings, target_value_performance=None, refresh_schedule=None)
Runs an NLP drift monitor for the specified project.
- Parameters:
project_id (str) – Unique string identifier of the project.
prediction_feature_group_id (str) – Unique string identifier of the prediction data feature group.
training_feature_group_id (str) – Unique string identifier of the training data feature group.
name (str) – The name you want your model monitor to have. Defaults to “<Project Name> Model Monitor”.
feature_mappings (dict) – A JSON map to override features for prediction_feature_group, where keys are column names and the values are feature data use types.
training_feature_mappings (dict) – A JSON map to override features for training_feature_group, where keys are column names and the values are feature data use types.
target_value_performance (str) – A target positive value for the label to compute precision-recall curve/area under curve for performance page.
refresh_schedule (str) – A cron-style string that describes a schedule in UTC to automatically rerun the created nlp drift monitor.
- Returns:
The new model monitor that was created.
- Return type:
- create_forecasting_monitor(project_id, name, prediction_feature_group_id, training_feature_group_id, training_forecast_config, prediction_forecast_config, forecast_frequency, refresh_schedule=None)
Runs a forecasting monitor for the specified project.
- Parameters:
project_id (str) – Unique string identifier of the project.
name (str) – The name you want your model monitor to have. Defaults to “<Project Name> Model Monitor”.
prediction_feature_group_id (str) – Unique string identifier of the prediction data feature group.
training_feature_group_id (str) – Unique string identifier of the training data feature group.
training_forecast_config (ForecastingMonitorConfig) – The configuration for the training data.
prediction_forecast_config (ForecastingMonitorConfig) – The configuration for the prediction data.
forecast_frequency (str) – The frequency of the forecast. Defaults to the frequency of the prediction data.
refresh_schedule (str) – A cron-style string that describes a schedule in UTC to automatically rerun the created forecasting monitor.
- Returns:
The new model monitor that was created.
- Return type:
- create_eda(project_id, feature_group_id, name, refresh_schedule=None, include_collinearity=False, include_data_consistency=False, collinearity_keys=None, primary_keys=None, data_consistency_test_config=None, data_consistency_reference_config=None, feature_mappings=None, forecast_frequency=None)
Run an Exploratory Data Analysis (EDA) for the specified project.
- Parameters:
project_id (str) – The unique ID associated with the project.
feature_group_id (str) – The unique ID of the prediction data feature group.
name (str) – The name you want your model monitor to have. Defaults to “<Project Name> EDA”.
refresh_schedule (str) – A cron-style string that describes a schedule in UTC to automatically retrain the created EDA.
include_collinearity (bool) – Set to True if the EDA type is collinearity.
include_data_consistency (bool) – Set to True if the EDA type is data consistency.
collinearity_keys (list) – List of features to use for collinearity
primary_keys (list) – List of features that corresponds to the primary keys or item ids for the given feature group for Data Consistency analysis or Forecasting analysis respectively.
data_consistency_test_config (dict) – Test feature group version selection strategy for Data Consistency EDA type.
data_consistency_reference_config (dict) – Reference feature group version selection strategy for Data Consistency EDA type.
feature_mappings (dict) – A JSON map to override features for the given feature_group, where keys are column names and the values are feature data use types. (In forecasting, used to set the timestamp column and target value)
forecast_frequency (str) – The frequency of the data. It can be either HOURLY, DAILY, WEEKLY, MONTHLY, QUARTERLY, YEARLY.
- Returns:
The new EDA object that was created.
- Return type:
- rerun_eda(eda_id)
Reruns the specified EDA object.
- rename_eda(eda_id, name)
Renames an EDA
- delete_eda(eda_id)
Deletes the specified EDA and all its versions.
- Parameters:
eda_id (str) – Unique string identifier of the EDA to delete.
- delete_eda_version(eda_version)
Deletes the specified EDA version.
- Parameters:
eda_version (str) – Unique string identifier of the EDA version to delete.
- create_holdout_analysis(name, model_id, feature_group_ids, model_version=None, algorithm=None)
Create a holdout analysis for a model
- Parameters:
name (str) – Name of the holdout analysis
model_id (str) – ID of the model to create a holdout analysis for
feature_group_ids (List) – List of feature group IDs to use for the holdout analysis
model_version (str) – (optional) Version of the model to use for the holdout analysis
algorithm (str) – (optional) ID of algorithm to use for the holdout analysis
- Returns:
The created holdout analysis
- Return type:
- rerun_holdout_analysis(holdout_analysis_id, model_version=None, algorithm=None)
Rerun a holdout analysis. A different model version and algorithm can be specified which should be under the same model.
- Parameters:
- Returns:
The created holdout analysis version
- Return type:
- create_monitor_alert(project_id, alert_name, condition_config, action_config, model_monitor_id=None, realtime_monitor_id=None)
Create a monitor alert for the given conditions and monitor. We can create monitor alert either for model monitor or real-time monitor.
- Parameters:
project_id (str) – Unique string identifier for the project.
alert_name (str) – Name of the alert.
condition_config (AlertConditionConfig) – Condition to run the actions for the alert.
action_config (AlertActionConfig) – Configuration for the action of the alert.
model_monitor_id (str) – Unique string identifier for the model monitor created under the project.
realtime_monitor_id (str) – Unique string identifier for the real-time monitor for the deployment created under the project.
- Returns:
Object describing the monitor alert.
- Return type:
- update_monitor_alert(monitor_alert_id, alert_name=None, condition_config=None, action_config=None)
Update monitor alert
- Parameters:
monitor_alert_id (str) – Unique identifier of the monitor alert.
alert_name (str) – Name of the alert.
condition_config (AlertConditionConfig) – Condition to run the actions for the alert.
action_config (AlertActionConfig) – Configuration for the action of the alert.
- Returns:
Object describing the monitor alert.
- Return type:
- run_monitor_alert(monitor_alert_id)
Reruns a given monitor alert from latest monitor instance
- Parameters:
monitor_alert_id (str) – Unique identifier of a monitor alert.
- Returns:
Object describing the monitor alert.
- Return type:
- delete_monitor_alert(monitor_alert_id)
Delets a monitor alert
- Parameters:
monitor_alert_id (str) – The unique string identifier of the alert to delete.
- create_prediction_operator(name, project_id, source_code=None, predict_function_name=None, initialize_function_name=None, feature_group_ids=None, cpu_size=None, memory=None, package_requirements=None, use_gpu=False)
Create a new prediction operator.
- Parameters:
name (str) – Name of the prediction operator.
project_id (str) – The unique ID of the associated project.
source_code (str) – Contents of a valid Python source code file. The source code should contain the function predictFunctionName, and the function ‘initializeFunctionName’ if defined.
predict_function_name (str) – Name of the function found in the source code that will be executed to run predictions.
initialize_function_name (str) – Name of the optional initialize function found in the source code. This function will generate anything used by predictions, based on input feature groups.
feature_group_ids (List) – List of feature groups that are supplied to the initialize function as parameters. Each of the parameters are materialized Dataframes. The order should match the initialize function’s parameters.
cpu_size (str) – Size of the CPU for the prediction operator.
memory (int) – Memory (in GB) for the prediction operator.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
use_gpu (bool) – Whether this prediction operator needs gpu.
- Returns:
The created prediction operator object.
- Return type:
- update_prediction_operator(prediction_operator_id, name=None, feature_group_ids=None, source_code=None, initialize_function_name=None, predict_function_name=None, cpu_size=None, memory=None, package_requirements=None, use_gpu=None)
Update an existing prediction operator. This does not create a new version.
- Parameters:
prediction_operator_id (str) – The unique ID of the prediction operator.
name (str) – Name of the prediction operator.
feature_group_ids (List) – List of feature groups that are supplied to the initialize function as parameters. Each of the parameters are materialized Dataframes. The order should match the initialize function’s parameters.
source_code (str) – Contents of a valid Python source code file. The source code should contain the function predictFunctionName, and the function ‘initializeFunctionName’ if defined.
initialize_function_name (str) – Name of the optional initialize function found in the source code. This function will generate anything used by predictions, based on input feature groups.
predict_function_name (str) – Name of the function found in the source code that will be executed to run predictions.
cpu_size (str) – Size of the CPU for the prediction operator.
memory (int) – Memory (in GB) for the prediction operator.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’]
use_gpu (bool) – Whether this prediction operator needs gpu.
- Returns:
The updated prediction operator object.
- Return type:
- delete_prediction_operator(prediction_operator_id)
Delete an existing prediction operator.
- Parameters:
prediction_operator_id (str) – The unique ID of the prediction operator.
- deploy_prediction_operator(prediction_operator_id, auto_deploy=True)
Deploy the prediction operator.
- Parameters:
- Returns:
The created deployment object.
- Return type:
- create_prediction_operator_version(prediction_operator_id)
Create a new version of the prediction operator.
- Parameters:
prediction_operator_id (str) – The unique ID of the prediction operator.
- Returns:
The created prediction operator version object.
- Return type:
- delete_prediction_operator_version(prediction_operator_version)
Delete a prediction operator version.
- Parameters:
prediction_operator_version (str) – The unique ID of the prediction operator version.
- create_deployment(name=None, model_id=None, model_version=None, algorithm=None, feature_group_id=None, project_id=None, description=None, calls_per_second=None, auto_deploy=True, start=True, enable_batch_streaming_updates=False, skip_metrics_check=False, model_deployment_config=None)
Creates a deployment with the specified name and description for the specified model or feature group.
A Deployment makes the trained model or feature group available for prediction requests.
- Parameters:
name (str) – The name of the deployment.
model_id (str) – The unique ID associated with the model.
model_version (str) – The unique ID associated with the model version to deploy.
algorithm (str) – The unique ID associated with the algorithm to deploy.
feature_group_id (str) – The unique ID associated with a feature group.
project_id (str) – The unique ID associated with a project.
description (str) – The description for the deployment.
calls_per_second (int) – The number of calls per second the deployment can handle.
auto_deploy (bool) – Flag to enable the automatic deployment when a new Model Version finishes training.
start (bool) – If true, will start the deployment; otherwise will create offline
enable_batch_streaming_updates (bool) – Flag to enable marking the feature group deployment to have a background process cache streamed in rows for quicker lookup.
skip_metrics_check (bool) – Flag to skip metric regression with this current deployment
model_deployment_config (dict) – The deployment config for model to deploy
- Returns:
The new model or feature group deployment.
- Return type:
- create_deployment_token(project_id, name=None)
Creates a deployment token for the specified project.
Deployment tokens are used to authenticate requests to the prediction APIs and are scoped to the project level.
- Parameters:
- Returns:
The deployment token.
- Return type:
- update_deployment(deployment_id, description=None, auto_deploy=None, skip_metrics_check=None)
Updates a deployment’s properties.
- Parameters:
deployment_id (str) – Unique identifier of the deployment to update.
description (str) – The new description for the deployment.
auto_deploy (bool) – Flag to enable the automatic deployment when a new Model Version finishes training.
skip_metrics_check (bool) – Flag to skip metric regression with this current deployment. This field is only relevant when auto_deploy is on
- rename_deployment(deployment_id, name)
Updates a deployment’s name
- set_auto_deployment(deployment_id, enable=None)
Enable or disable auto deployment for the specified deployment.
When a model is scheduled to retrain, deployments with auto deployment enabled will be marked to automatically promote the new model version. After the newly trained model completes, a check on its metrics in comparison to the currently deployed model version will be performed. If the metrics are comparable or better, the newly trained model version is automatically promoted. If not, it will be marked as a failed model version promotion with an error indicating poor metrics performance.
- set_deployment_model_version(deployment_id, model_version, algorithm=None, model_deployment_config=None)
Promotes a model version and/or algorithm to be the active served deployment version
- Parameters:
deployment_id (str) – A unique identifier for the deployment.
model_version (str) – A unique identifier for the model version.
algorithm (str) – The algorithm to use for the model version. If not specified, the algorithm will be inferred from the model version.
model_deployment_config (dict) – The deployment configuration for the model to deploy.
- set_deployment_feature_group_version(deployment_id, feature_group_version)
Promotes a feature group version to be served in the deployment.
- set_deployment_prediction_operator_version(deployment_id, prediction_operator_version)
Promotes a prediction operator version to be served in the deployment.
- start_deployment(deployment_id)
Restarts the specified deployment that was previously suspended.
- Parameters:
deployment_id (str) – A unique string identifier associated with the deployment.
- stop_deployment(deployment_id)
Stops the specified deployment.
- Parameters:
deployment_id (str) – Unique string identifier of the deployment to be stopped.
- delete_deployment(deployment_id)
Deletes the specified deployment. The deployment’s models will not be affected. Note that the deployments are not recoverable after they are deleted.
- Parameters:
deployment_id (str) – Unique string identifier of the deployment to delete.
- delete_deployment_token(deployment_token)
Deletes the specified deployment token.
- Parameters:
deployment_token (str) – The deployment token to delete.
- set_deployment_feature_group_export_file_connector_output(deployment_id, file_format=None, output_location=None)
Sets the export output for the Feature Group Deployment to be a file connector.
- set_deployment_feature_group_export_database_connector_output(deployment_id, database_connector_id, object_name, write_mode, database_feature_mapping, id_column=None, additional_id_columns=None)
Sets the export output for the Feature Group Deployment to a Database connector.
- Parameters:
deployment_id (str) – The ID of the deployment for which the export type is set.
database_connector_id (str) – The unique string identifier of the database connector used.
object_name (str) – The object of the database connector to write to.
write_mode (str) – The write mode to use when writing to the database connector, either UPSERT or INSERT.
database_feature_mapping (dict) – The column/feature pairs mapping the features to the database columns.
id_column (str) – The id column to use as the upsert key.
additional_id_columns (list) – For database connectors which support it, a list of additional ID columns to use as a complex key for upserting.
- remove_deployment_feature_group_export_output(deployment_id)
Removes the export type that is set for the Feature Group Deployment
- Parameters:
deployment_id (str) – The ID of the deployment for which the export type is set.
- set_default_prediction_arguments(deployment_id, prediction_arguments, set_as_override=False)
Sets the deployment config.
- Parameters:
deployment_id (str) – The unique identifier for a deployment created under the project.
prediction_arguments (PredictionArguments) – The prediction arguments to set.
set_as_override (bool) – If True, use these arguments as overrides instead of defaults for predict calls
- Returns:
description of the updated deployment.
- Return type:
- create_deployment_alert(deployment_id, alert_name, condition_config, action_config)
Create a deployment alert for the given conditions.
Only support batch prediction usage now.
- Parameters:
deployment_id (str) – Unique string identifier for the deployment.
alert_name (str) – Name of the alert.
condition_config (AlertConditionConfig) – Condition to run the actions for the alert.
action_config (AlertActionConfig) – Configuration for the action of the alert.
- Returns:
Object describing the deployment alert.
- Return type:
- create_realtime_monitor(deployment_id, realtime_monitor_schedule=None, lookback_time=None)
Real time monitors compute and monitor metrics of real time prediction data.
- Parameters:
- Returns:
Object describing the real-time monitor.
- Return type:
- update_realtime_monitor(realtime_monitor_id, realtime_monitor_schedule=None, lookback_time=None)
Update the real-time monitor associated with the real-time monitor id.
- Parameters:
- Returns:
Object describing the realtime monitor.
- Return type:
- delete_realtime_monitor(realtime_monitor_id)
Delete the real-time monitor associated with the real-time monitor id.
- Parameters:
realtime_monitor_id (str) – Unique string identifier for the real-time monitor.
- create_refresh_policy(name, cron, refresh_type, project_id=None, dataset_ids=[], feature_group_id=None, model_ids=[], deployment_ids=[], batch_prediction_ids=[], model_monitor_ids=[], notebook_id=None, prediction_operator_id=None, feature_group_export_config=None)
Creates a refresh policy with a particular cron pattern and refresh type. The cron is specified in UTC time.
A refresh policy allows for the scheduling of a set of actions at regular intervals. This can be useful for periodically updating data that needs to be re-imported into the project for retraining.
- Parameters:
name (str) – The name of the refresh policy.
cron (str) – A cron-like string specifying the frequency of the refresh policy in UTC time.
refresh_type (str) – The refresh type used to determine what is being refreshed, such as a single dataset, dataset and model, or more.
project_id (str) – Optionally, a project ID can be specified so that all datasets, models, deployments, batch predictions, prediction metrics, model monitrs, and notebooks are captured at the instant the policy was created.
dataset_ids (List) – Comma-separated list of dataset IDs.
feature_group_id (str) – Feature Group ID associated with refresh policy.
model_ids (List) – Comma-separated list of model IDs.
deployment_ids (List) – Comma-separated list of deployment IDs.
batch_prediction_ids (List) – Comma-separated list of batch prediction IDs.
model_monitor_ids (List) – Comma-separated list of model monitor IDs.
notebook_id (str) – Notebook ID associated with refresh policy.
prediction_operator_id (str) – Prediction Operator ID associated with refresh policy.
feature_group_export_config (FeatureGroupExportConfig) – Feature group export configuration.
- Returns:
The created refresh policy.
- Return type:
- delete_refresh_policy(refresh_policy_id)
Delete a refresh policy.
- Parameters:
refresh_policy_id (str) – Unique string identifier associated with the refresh policy to delete.
- pause_refresh_policy(refresh_policy_id)
Pauses a refresh policy
- Parameters:
refresh_policy_id (str) – Unique identifier associated with the refresh policy to be paused.
- resume_refresh_policy(refresh_policy_id)
Resumes a refresh policy
- Parameters:
refresh_policy_id (str) – The unique ID associated with this refresh policy.
- run_refresh_policy(refresh_policy_id)
Force a run of the refresh policy.
- Parameters:
refresh_policy_id (str) – Unique string identifier associated with the refresh policy to be run.
- update_refresh_policy(refresh_policy_id, name=None, cron=None, feature_group_export_config=None)
Update the name or cron string of a refresh policy
- Parameters:
refresh_policy_id (str) – Unique string identifier associated with the refresh policy.
name (str) – Name of the refresh policy to be updated.
cron (str) – Cron string describing the schedule from the refresh policy to be updated.
feature_group_export_config (FeatureGroupExportConfig) – Feature group export configuration to update a feature group refresh policy.
- Returns:
Updated refresh policy.
- Return type:
- lookup_features(deployment_token, deployment_id, query_data, limit_results=None, result_columns=None)
Returns the feature group deployed in the feature store project.
- Parameters:
deployment_token (str) – A deployment token used to authenticate access to created deployments. This token only authorizes predictions on deployments in this project, so it can be safely embedded inside an application or website.
deployment_id (str) – A unique identifier for a deployment created under the project.
query_data (dict) – A dictionary where the key is the column name (e.g. a column with name ‘user_id’ in your dataset) mapped to the column mapping USER_ID that uniquely identifies the entity against which a prediction is performed and the value is the unique value of the same entity.
limit_results (int) – If provided, will limit the number of results to the value specified.
result_columns (list) – If provided, will limit the columns present in each result to the columns specified in this list.
- Return type:
Dict
- predict(deployment_token, deployment_id, query_data, **kwargs)
Returns a prediction for Predictive Modeling
- Parameters:
deployment_token (str) – A deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, and is safe to embed in an application or website.
deployment_id (str) – A unique identifier for a deployment created under the project.
query_data (dict) – A dictionary where the key is the column name (e.g. a column with name ‘user_id’ in the dataset) mapped to the column mapping USER_ID that uniquely identifies the entity against which a prediction is performed, and the value is the unique value of the same entity.
- Return type:
Dict
- predict_multiple(deployment_token, deployment_id, query_data)
Returns a list of predictions for predictive modeling.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, and is safe to embed in an application or website.
deployment_id (str) – The unique identifier for a deployment created under the project.
query_data (list) – A list of dictionaries, where the ‘key’ is the column name (e.g. a column with name ‘user_id’ in the dataset) mapped to the column mapping USER_ID that uniquely identifies the entity against which a prediction is performed, and the ‘value’ is the unique value of the same entity.
- Return type:
Dict
- predict_from_datasets(deployment_token, deployment_id, query_data)
Returns a list of predictions for Predictive Modeling.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier for a deployment created under the project.
query_data (dict) – A dictionary where the ‘key’ is the source dataset name, and the ‘value’ is a list of records corresponding to the dataset rows.
- Return type:
Dict
- predict_lead(deployment_token, deployment_id, query_data, explain_predictions=False, explainer_type=None)
Returns the probability of a user being a lead based on their interaction with the service/product and their own attributes (e.g. income, assets, credit score, etc.). Note that the inputs to this method, wherever applicable, should be the column names in the dataset mapped to the column mappings in our system (e.g. column ‘user_id’ mapped to mapping ‘LEAD_ID’ in our system).
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – A dictionary containing user attributes and/or user’s interaction data with the product/service (e.g. number of clicks, items in cart, etc.).
explain_predictions (bool) – Will explain predictions for leads
explainer_type (str) – Type of explainer to use for explanations
- Return type:
Dict
- predict_churn(deployment_token, deployment_id, query_data, explain_predictions=False, explainer_type=None)
Returns the probability of a user to churn out in response to their interactions with the item/product/service. Note that the inputs to this method, wherever applicable, will be the column names in your dataset mapped to the column mappings in our system (e.g. column ‘churn_result’ mapped to mapping ‘CHURNED_YN’ in our system).
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – This will be a dictionary where the ‘key’ will be the column name (e.g. a column with name ‘user_id’ in your dataset) mapped to the column mapping USER_ID that uniquely identifies the entity against which a prediction is performed and the ‘value’ will be the unique value of the same entity.
explain_predictions (bool) – Will explain predictions for churn
explainer_type (str) – Type of explainer to use for explanations
- Return type:
Dict
- predict_takeover(deployment_token, deployment_id, query_data)
Returns a probability for each class label associated with the types of fraud or a ‘yes’ or ‘no’ type label for the possibility of fraud. Note that the inputs to this method, wherever applicable, will be the column names in the dataset mapped to the column mappings in our system (e.g., column ‘account_name’ mapped to mapping ‘ACCOUNT_ID’ in our system).
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – A dictionary containing account activity characteristics (e.g., login id, login duration, login type, IP address, etc.).
- Return type:
Dict
- predict_fraud(deployment_token, deployment_id, query_data)
Returns the probability of a transaction performed under a specific account being fraudulent or not. Note that the inputs to this method, wherever applicable, should be the column names in your dataset mapped to the column mappings in our system (e.g. column ‘account_number’ mapped to the mapping ‘ACCOUNT_ID’ in our system).
- Parameters:
deployment_token (str) – A deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique identifier to a deployment created under the project.
query_data (dict) – A dictionary containing transaction attributes (e.g. credit card type, transaction location, transaction amount, etc.).
- Return type:
Dict
- predict_class(deployment_token, deployment_id, query_data, threshold=None, threshold_class=None, thresholds=None, explain_predictions=False, fixed_features=None, nested=None, explainer_type=None)
Returns a classification prediction
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model within an application or website.
deployment_id (str) – The unique identifier for a deployment created under the project.
query_data (dict) – A dictionary where the ‘Key’ is the column name (e.g. a column with the name ‘user_id’ in your dataset) mapped to the column mapping USER_ID that uniquely identifies the entity against which a prediction is performed and the ‘Value’ is the unique value of the same entity.
threshold (float) – A float value that is applied on the popular class label.
threshold_class (str) – The label upon which the threshold is added (binary labels only).
thresholds (Dict) – Maps labels to thresholds (multi-label classification only). Defaults to F1 optimal threshold if computed for the given class, else uses 0.5.
explain_predictions (bool) – If True, returns the SHAP explanations for all input features.
fixed_features (list) – A set of input features to treat as constant for explanations - only honored when the explainer type is KERNEL_EXPLAINER
nested (str) – If specified generates prediction delta for each index of the specified nested feature.
explainer_type (str) – The type of explainer to use.
- Return type:
Dict
- predict_target(deployment_token, deployment_id, query_data, explain_predictions=False, fixed_features=None, nested=None, explainer_type=None)
Returns a prediction from a classification or regression model. Optionally, includes explanations.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier of a deployment created under the project.
query_data (dict) – A dictionary where the ‘key’ is the column name (e.g. a column with name ‘user_id’ in your dataset) mapped to the column mapping USER_ID that uniquely identifies the entity against which a prediction is performed and the ‘value’ is the unique value of the same entity.
explain_predictions (bool) – If true, returns the SHAP explanations for all input features.
fixed_features (list) – Set of input features to treat as constant for explanations - only honored when the explainer type is KERNEL_EXPLAINER
nested (str) – If specified, generates prediction delta for each index of the specified nested feature.
explainer_type (str) – The type of explainer to use.
- Return type:
Dict
- get_anomalies(deployment_token, deployment_id, threshold=None, histogram=False)
Returns a list of anomalies from the training dataset.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
threshold (float) – The threshold score of what is an anomaly. Valid values are between 0.8 and 0.99.
histogram (bool) – If True, will return a histogram of the distribution of all points.
- Return type:
- get_timeseries_anomalies(deployment_token, deployment_id, start_timestamp=None, end_timestamp=None, query_data=None, get_all_item_data=False, series_ids=None)
Returns a list of anomalous timestamps from the training dataset.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
start_timestamp (str) – timestamp from which anomalies have to be detected in the training data
end_timestamp (str) – timestamp to which anomalies have to be detected in the training data
query_data (dict) – additional data on which anomaly detection has to be performed, it can either be a single record or list of records or a json string representing list of records
get_all_item_data (bool) – set this to true if anomaly detection has to be performed on all the data related to input ids
series_ids (List) – list of series ids on which the anomaly detection has to be performed
- Return type:
Dict
- is_anomaly(deployment_token, deployment_id, query_data=None)
Returns a list of anomaly attributes based on login information for a specified account. Note that the inputs to this method, wherever applicable, should be the column names in the dataset mapped to the column mappings in our system (e.g. column ‘account_name’ mapped to mapping ‘ACCOUNT_ID’ in our system).
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – The input data for the prediction.
- Return type:
Dict
- get_event_anomaly_score(deployment_token, deployment_id, query_data=None)
Returns an anomaly score for an event.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – The input data for the prediction.
- Return type:
Dict
- get_forecast(deployment_token, deployment_id, query_data, future_data=None, num_predictions=None, prediction_start=None, explain_predictions=False, explainer_type=None, get_item_data=False)
Returns a list of forecasts for a given entity under the specified project deployment. Note that the inputs to the deployed model will be the column names in your dataset mapped to the column mappings in our system (e.g. column ‘holiday_yn’ mapped to mapping ‘FUTURE’ in our system).
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – This will be a dictionary where ‘Key’ will be the column name (e.g. a column with name ‘store_id’ in your dataset) mapped to the column mapping ITEM_ID that uniquely identifies the entity against which forecasting is performed and ‘Value’ will be the unique value of the same entity.
future_data (list) – This will be a list of values known ahead of time that are relevant for forecasting (e.g. State Holidays, National Holidays, etc.). Each element is a dictionary, where the key and the value both will be of type ‘str’. For example future data entered for a Store may be [{“Holiday”:”No”, “Promo”:”Yes”, “Date”: “2015-07-31 00:00:00”}].
num_predictions (int) – The number of timestamps to predict in the future.
prediction_start (str) – The start date for predictions (e.g., “2015-08-01T00:00:00” as input for mid-night of 2015-08-01).
explain_predictions (bool) – Will explain predictions for forecasting
explainer_type (str) – Type of explainer to use for explanations
get_item_data (bool) – Will return the data corresponding to items in query
- Return type:
Dict
- get_k_nearest(deployment_token, deployment_id, vector, k=None, distance=None, include_score=False, catalog_id=None)
Returns the k nearest neighbors for the provided embedding vector.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
vector (list) – Input vector to perform the k nearest neighbors with.
k (int) – Overrideable number of items to return.
distance (str) – Specify the distance function to use. Options include “dot“, “cosine“, “euclidean“, and “manhattan“. Default = “dot“
include_score (bool) – If True, will return the score alongside the resulting embedding value.
catalog_id (str) – An optional parameter honored only for embeddings that provide a catalog id
- Return type:
Dict
- get_multiple_k_nearest(deployment_token, deployment_id, queries)
Returns the k nearest neighbors for the queries provided.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
queries (list) – List of mappings of format {“catalogId”: “cat0”, “vectors”: […], “k”: 20, “distance”: “euclidean”}. See getKNearest for additional information about the supported parameters.
- get_labels(deployment_token, deployment_id, query_data, return_extracted_entities=False)
Returns a list of scored labels for a document.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – Dictionary where key is “Content” and value is the text from which entities are to be extracted.
return_extracted_entities (bool) – (Optional) If True, will return the extracted entities in simpler format
- Return type:
Dict
- get_entities_from_pdf(deployment_token, deployment_id, pdf=None, doc_id=None, return_extracted_features=False, verbose=False, save_extracted_features=None)
Extracts text from the provided PDF and returns a list of recognized labels and their scores.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
pdf (io.TextIOBase) – (Optional) The pdf to predict on. One of pdf or docId must be specified.
doc_id (str) – (Optional) The pdf to predict on. One of pdf or docId must be specified.
return_extracted_features (bool) – (Optional) If True, will return all extracted features (e.g. all tokens in a page) from the PDF. Default is False.
verbose (bool) – (Optional) If True, will return all the extracted tokens probabilities for all the trained labels. Default is False.
save_extracted_features (bool) – (Optional) If True, will save extracted features (i.e. page tokens) so that they can be fetched using the prediction docId. Default is False.
- Return type:
Dict
- get_recommendations(deployment_token, deployment_id, query_data, num_items=None, page=None, exclude_item_ids=None, score_field=None, scaling_factors=None, restrict_items=None, exclude_items=None, explore_fraction=None, diversity_attribute_name=None, diversity_max_results_per_value=None)
Returns a list of recommendations for a given user under the specified project deployment. Note that the inputs to this method, wherever applicable, will be the column names in your dataset mapped to the column mappings in our system (e.g. column ‘time’ mapped to mapping ‘TIMESTAMP’ in our system).
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – This will be a dictionary where ‘Key’ will be the column name (e.g. a column with name ‘user_name’ in your dataset) mapped to the column mapping USER_ID that uniquely identifies the user against which recommendations are made and ‘Value’ will be the unique value of the same item. For example, if you have the column name ‘user_name’ mapped to the column mapping ‘USER_ID’, then the query must have the exact same column name (user_name) as key and the name of the user (John Doe) as value.
num_items (int) – The number of items to recommend on one page. By default, it is set to 50 items per page.
page (int) – The page number to be displayed. For example, let’s say that the num_items is set to 10 with the total recommendations list size of 50 recommended items, then an input value of 2 in the ‘page’ variable will display a list of items that rank from 11th to 20th.
score_field (str) – The relative item scores are returned in a separate field named with the same name as the key (score_field) for this argument.
scaling_factors (list) – It allows you to bias the model towards certain items. The input to this argument is a list of dictionaries where the format of each dictionary is as follows: {“column”: “col0”, “values”: [“value0”, “value1”], “factor”: 1.1}. The key, “column” takes the name of the column, “col0”; the key, “values” takes the list of items, “[“value0”, “value1”]” in reference to which the model recommendations need to be biased; and the key, “factor” takes the factor by which the item scores are adjusted. Let’s take an example where the input to scaling_factors is [{“column”: “VehicleType”, “values”: [“SUV”, “Sedan”], “factor”: 1.4}]. After we apply the model to get item probabilities, for every SUV and Sedan in the list, we will multiply the respective probability by 1.1 before sorting. This is particularly useful if there’s a type of item that might be less popular but you want to promote it or there’s an item that always comes up and you want to demote it.
restrict_items (list) – It allows you to restrict the recommendations to certain items. The input to this argument is a list of dictionaries where the format of each dictionary is as follows: {“column”: “col0”, “values”: [“value0”, “value1”, “value3”, …]}. The key, “column” takes the name of the column, “col0”; the key, “values” takes the list of items, “[“value0”, “value1”, “value3”, …]” to which to restrict the recommendations to. Let’s take an example where the input to restrict_items is [{“column”: “VehicleType”, “values”: [“SUV”, “Sedan”]}]. This input will restrict the recommendations to SUVs and Sedans. This type of restriction is particularly useful if there’s a list of items that you know is of use in some particular scenario and you want to restrict the recommendations only to that list.
exclude_items (list) – It allows you to exclude certain items from the list of recommendations. The input to this argument is a list of dictionaries where the format of each dictionary is as follows: {“column”: “col0”, “values”: [“value0”, “value1”, …]}. The key, “column” takes the name of the column, “col0”; the key, “values” takes the list of items, “[“value0”, “value1”]” to exclude from the recommendations. Let’s take an example where the input to exclude_items is [{“column”: “VehicleType”, “values”: [“SUV”, “Sedan”]}]. The resulting recommendation list will exclude all SUVs and Sedans. This is
explore_fraction (float) – Explore fraction.
diversity_attribute_name (str) – item attribute column name which is used to ensure diversity of prediction results.
diversity_max_results_per_value (int) – maximum number of results per value of diversity_attribute_name.
exclude_item_ids (list)
- Return type:
Dict
- get_personalized_ranking(deployment_token, deployment_id, query_data, preserve_ranks=None, preserve_unknown_items=False, scaling_factors=None)
Returns a list of items with personalized promotions for a given user under the specified project deployment. Note that the inputs to this method, wherever applicable, should be the column names in the dataset mapped to the column mappings in our system (e.g. column ‘item_code’ mapped to mapping ‘ITEM_ID’ in our system).
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model in an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – This should be a dictionary with two key-value pairs. The first pair represents a ‘Key’ where the column name (e.g. a column with name ‘user_id’ in the dataset) mapped to the column mapping USER_ID uniquely identifies the user against whom a prediction is made and a ‘Value’ which is the identifier value for that user. The second pair will have a ‘Key’ which will be the name of the column name (e.g. movie_name) mapped to ITEM_ID (unique item identifier) and a ‘Value’ which will be a list of identifiers that uniquely identifies those items.
preserve_ranks (list) – List of dictionaries of format {“column”: “col0”, “values”: [“value0, value1”]}, where the ranks of items in query_data is preserved for all the items in “col0” with values, “value0” and “value1”. This option is useful when the desired items are being recommended in the desired order and the ranks for those items need to be kept unchanged during recommendation generation.
preserve_unknown_items (bool) – If true, any items that are unknown to the model, will not be reranked, and the original position in the query will be preserved.
scaling_factors (list) – It allows you to bias the model towards certain items. The input to this argument is a list of dictionaries where the format of each dictionary is as follows: {“column”: “col0”, “values”: [“value0”, “value1”], “factor”: 1.1}. The key, “column” takes the name of the column, “col0”; the key, “values” takes the list of items, “[“value0”, “value1”]” in reference to which the model recommendations need to be biased; and the key, “factor” takes the factor by which the item scores are adjusted. Let’s take an example where the input to scaling_factors is [{“column”: “VehicleType”, “values”: [“SUV”, “Sedan”], “factor”: 1.4}]. After we apply the model to get item probabilities, for every SUV and Sedan in the list, we will multiply the respective probability by 1.1 before sorting. This is particularly useful if there’s a type of item that might be less popular but you want to promote it or there’s an item that always comes up and you want to demote it.
- Return type:
Dict
- get_ranked_items(deployment_token, deployment_id, query_data, preserve_ranks=None, preserve_unknown_items=False, score_field=None, scaling_factors=None, diversity_attribute_name=None, diversity_max_results_per_value=None)
Returns a list of re-ranked items for a selected user when a list of items is required to be reranked according to the user’s preferences. Note that the inputs to this method, wherever applicable, will be the column names in your dataset mapped to the column mappings in our system (e.g. column ‘item_code’ mapped to mapping ‘ITEM_ID’ in our system).
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – This will be a dictionary with two key-value pairs. The first pair represents a ‘Key’ where the column name (e.g. a column with name ‘user_id’ in your dataset) mapped to the column mapping USER_ID uniquely identifies the user against whom a prediction is made and a ‘Value’ which is the identifier value for that user. The second pair will have a ‘Key’ which will be the name of the column name (e.g. movie_name) mapped to ITEM_ID (unique item identifier) and a ‘Value’ which will be a list of identifiers that uniquely identifies those items.
preserve_ranks (list) – List of dictionaries of format {“column”: “col0”, “values”: [“value0, value1”]}, where the ranks of items in query_data is preserved for all the items in “col0” with values, “value0” and “value1”. This option is useful when the desired items are being recommended in the desired order and the ranks for those items need to be kept unchanged during recommendation generation.
preserve_unknown_items (bool) – If true, any items that are unknown to the model, will not be reranked, and the original position in the query will be preserved
score_field (str) – The relative item scores are returned in a separate field named with the same name as the key (score_field) for this argument.
scaling_factors (list) – It allows you to bias the model towards certain items. The input to this argument is a list of dictionaries where the format of each dictionary is as follows: {“column”: “col0”, “values”: [“value0”, “value1”], “factor”: 1.1}. The key, “column” takes the name of the column, “col0”; the key, “values” takes the list of items, “[“value0”, “value1”]” in reference to which the model recommendations need to be biased; and the key, “factor” takes the factor by which the item scores are adjusted. Let’s take an example where the input to scaling_factors is [{“column”: “VehicleType”, “values”: [“SUV”, “Sedan”], “factor”: 1.4}]. After we apply the model to get item probabilities, for every SUV and Sedan in the list, we will multiply the respective probability by 1.1 before sorting. This is particularly useful if there is a type of item that might be less popular but you want to promote it or there is an item that always comes up and you want to demote it.
diversity_attribute_name (str) – item attribute column name which is used to ensure diversity of prediction results.
diversity_max_results_per_value (int) – maximum number of results per value of diversity_attribute_name.
- Return type:
Dict
Returns a list of related items for a given item under the specified project deployment. Note that the inputs to this method, wherever applicable, will be the column names in your dataset mapped to the column mappings in our system (e.g. column ‘item_code’ mapped to mapping ‘ITEM_ID’ in our system).
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – This will be a dictionary where the ‘key’ will be the column name (e.g. a column with name ‘user_name’ in your dataset) mapped to the column mapping USER_ID that uniquely identifies the user against which related items are determined and the ‘value’ will be the unique value of the same item. For example, if you have the column name ‘user_name’ mapped to the column mapping ‘USER_ID’, then the query must have the exact same column name (user_name) as key and the name of the user (John Doe) as value.
num_items (int) – The number of items to recommend on one page. By default, it is set to 50 items per page.
page (int) – The page number to be displayed. For example, let’s say that the num_items is set to 10 with the total recommendations list size of 50 recommended items, then an input value of 2 in the ‘page’ variable will display a list of items that rank from 11th to 20th.
scaling_factors (list) – It allows you to bias the model towards certain items. The input to this argument is a list of dictionaries where the format of each dictionary is as follows: {“column”: “col0”, “values”: [“value0”, “value1”], “factor”: 1.1}. The key, “column” takes the name of the column, “col0”; the key, “values” takes the list of items, “[“value0”, “value1”]” in reference to which the model recommendations need to be biased; and the key, “factor” takes the factor by which the item scores are adjusted. Let’s take an example where the input to scaling_factors is [{“column”: “VehicleType”, “values”: [“SUV”, “Sedan”], “factor”: 1.4}]. After we apply the model to get item probabilities, for every SUV and Sedan in the list, we will multiply the respective probability by 1.1 before sorting. This is particularly useful if there’s a type of item that might be less popular but you want to promote it or there’s an item that always comes up and you want to demote it.
restrict_items (list) – It allows you to restrict the recommendations to certain items. The input to this argument is a list of dictionaries where the format of each dictionary is as follows: {“column”: “col0”, “values”: [“value0”, “value1”, “value3”, …]}. The key, “column” takes the name of the column, “col0”; the key, “values” takes the list of items, “[“value0”, “value1”, “value3”, …]” to which to restrict the recommendations to. Let’s take an example where the input to restrict_items is [{“column”: “VehicleType”, “values”: [“SUV”, “Sedan”]}]. This input will restrict the recommendations to SUVs and Sedans. This type of restriction is particularly useful if there’s a list of items that you know is of use in some particular scenario and you want to restrict the recommendations only to that list.
exclude_items (list) – It allows you to exclude certain items from the list of recommendations. The input to this argument is a list of dictionaries where the format of each dictionary is as follows: {“column”: “col0”, “values”: [“value0”, “value1”, …]}. The key, “column” takes the name of the column, “col0”; the key, “values” takes the list of items, “[“value0”, “value1”]” to exclude from the recommendations. Let’s take an example where the input to exclude_items is [{“column”: “VehicleType”, “values”: [“SUV”, “Sedan”]}]. The resulting recommendation list will exclude all SUVs and Sedans. This is particularly useful if there’s a list of items that you know is of no use in some particular scenario and you don’t want to show those items present in that list.
- Return type:
Dict
- get_chat_response(deployment_token, deployment_id, messages, llm_name=None, num_completion_tokens=None, system_message=None, temperature=0.0, filter_key_values=None, search_score_cutoff=None, chat_config=None)
Return a chat response which continues the conversation based on the input messages and search results.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
messages (list) – A list of chronologically ordered messages, starting with a user message and alternating sources. A message is a dict with attributes: is_user (bool): Whether the message is from the user. text (str): The message’s text.
llm_name (str) – Name of the specific LLM backend to use to power the chat experience
num_completion_tokens (int) – Default for maximum number of tokens for chat answers
system_message (str) – The generative LLM system message
temperature (float) – The generative LLM temperature
filter_key_values (dict) – A dictionary mapping column names to a list of values to restrict the retrieved search results.
search_score_cutoff (float) – Cutoff for the document retriever score. Matching search results below this score will be ignored.
chat_config (dict) – A dictionary specifying the query chat config override.
- Return type:
Dict
- get_chat_response_with_binary_data(deployment_token, deployment_id, messages, llm_name=None, num_completion_tokens=None, system_message=None, temperature=0.0, filter_key_values=None, search_score_cutoff=None, chat_config=None, attachments=None)
Return a chat response which continues the conversation based on the input messages and search results.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
messages (list) – A list of chronologically ordered messages, starting with a user message and alternating sources. A message is a dict with attributes: is_user (bool): Whether the message is from the user. text (str): The message’s text.
llm_name (str) – Name of the specific LLM backend to use to power the chat experience
num_completion_tokens (int) – Default for maximum number of tokens for chat answers
system_message (str) – The generative LLM system message
temperature (float) – The generative LLM temperature
filter_key_values (dict) – A dictionary mapping column names to a list of values to restrict the retrieved search results.
search_score_cutoff (float) – Cutoff for the document retriever score. Matching search results below this score will be ignored.
chat_config (dict) – A dictionary specifying the query chat config override.
attachments (None) – A dictionary of binary data to use to answer the queries.
- Return type:
Dict
- get_conversation_response(deployment_id, message, deployment_token, deployment_conversation_id=None, external_session_id=None, llm_name=None, num_completion_tokens=None, system_message=None, temperature=0.0, filter_key_values=None, search_score_cutoff=None, chat_config=None, doc_infos=None)
Return a conversation response which continues the conversation based on the input message and deployment conversation id (if exists).
- Parameters:
deployment_id (str) – The unique identifier to a deployment created under the project.
message (str) – A message from the user
deployment_token (str) – A token used to authenticate access to deployments created in this project. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_conversation_id (str) – The unique identifier of a deployment conversation to continue. If not specified, a new one will be created.
external_session_id (str) – The user supplied unique identifier of a deployment conversation to continue. If specified, we will use this instead of a internal deployment conversation id.
llm_name (str) – Name of the specific LLM backend to use to power the chat experience
num_completion_tokens (int) – Default for maximum number of tokens for chat answers
system_message (str) – The generative LLM system message
temperature (float) – The generative LLM temperature
filter_key_values (dict) – A dictionary mapping column names to a list of values to restrict the retrived search results.
search_score_cutoff (float) – Cutoff for the document retriever score. Matching search results below this score will be ignored.
chat_config (dict) – A dictionary specifiying the query chat config override.
doc_infos (list) – An optional list of documents use for the conversation. A keyword ‘doc_id’ is expected to be present in each document for retrieving contents from docstore.
- Return type:
Dict
- get_conversation_response_with_binary_data(deployment_id, deployment_token, message, deployment_conversation_id=None, external_session_id=None, llm_name=None, num_completion_tokens=None, system_message=None, temperature=0.0, filter_key_values=None, search_score_cutoff=None, chat_config=None, attachments=None)
Return a conversation response which continues the conversation based on the input message and deployment conversation id (if exists).
- Parameters:
deployment_id (str) – The unique identifier to a deployment created under the project.
deployment_token (str) – A token used to authenticate access to deployments created in this project. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
message (str) – A message from the user
deployment_conversation_id (str) – The unique identifier of a deployment conversation to continue. If not specified, a new one will be created.
external_session_id (str) – The user supplied unique identifier of a deployment conversation to continue. If specified, we will use this instead of a internal deployment conversation id.
llm_name (str) – Name of the specific LLM backend to use to power the chat experience
num_completion_tokens (int) – Default for maximum number of tokens for chat answers
system_message (str) – The generative LLM system message
temperature (float) – The generative LLM temperature
filter_key_values (dict) – A dictionary mapping column names to a list of values to restrict the retrived search results.
search_score_cutoff (float) – Cutoff for the document retriever score. Matching search results below this score will be ignored.
chat_config (dict) – A dictionary specifiying the query chat config override.
attachments (None) – A dictionary of binary data to use to answer the queries.
- Return type:
Dict
- get_search_results(deployment_token, deployment_id, query_data, num=15)
Return the most relevant search results to the search query from the uploaded documents.
- Parameters:
deployment_token (str) – A token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it can be securely embedded in an application or website.
deployment_id (str) – A unique identifier of a deployment created under the project.
query_data (dict) – A dictionary where the key is “Content” and the value is the text from which entities are to be extracted.
num (int) – Number of search results to return.
- Return type:
Dict
- get_sentiment(deployment_token, deployment_id, document)
Predicts sentiment on a document
- Parameters:
deployment_token (str) – A token used to authenticate access to deployments created in this project. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier for a deployment created under this project.
document (str) – The document to be analyzed for sentiment.
- Return type:
Dict
- get_entailment(deployment_token, deployment_id, document)
Predicts the classification of the document
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier for the deployment created under the project.
document (str) – The document to be classified.
- Return type:
Dict
- get_classification(deployment_token, deployment_id, document)
Predicts the classification of the document
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier for the deployment created under the project.
document (str) – The document to be classified.
- Return type:
Dict
- get_summary(deployment_token, deployment_id, query_data)
Returns a JSON of the predicted summary for the given document. Note that the inputs to this method, wherever applicable, will be the column names in your dataset mapped to the column mappings in our system (e.g. column ‘text’ mapped to mapping ‘DOCUMENT’ in our system).
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
query_data (dict) – Raw data dictionary containing the required document data - must have a key ‘document’ corresponding to a DOCUMENT type text as value.
- Return type:
Dict
- predict_language(deployment_token, deployment_id, query_data)
Predicts the language of the text
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments within this project, making it safe to embed this model in an application or website.
deployment_id (str) – A unique string identifier for a deployment created under the project.
query_data (str) – The input string to detect.
- Return type:
Dict
- get_assignments(deployment_token, deployment_id, query_data, forced_assignments=None, solve_time_limit_seconds=None, include_all_assignments=False)
Get all positive assignments that match a query.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it can be safely embedded in an application or website.
deployment_id (str) – The unique identifier of a deployment created under the project.
query_data (dict) – Specifies the set of assignments being requested. The value for the key can be: 1. A simple scalar value, which is matched exactly 2. A list of values, which matches any element in the list 3. A dictionary with keys lower_in/lower_ex and upper_in/upper_ex, which matches values in an inclusive/exclusive range
forced_assignments (dict) – Set of assignments to force and resolve before returning query results.
solve_time_limit_seconds (float) – Maximum time in seconds to spend solving the query.
include_all_assignments (bool) – If True, will return all assignments, including assignments with value 0. Default is False.
- Return type:
Dict
- get_alternative_assignments(deployment_token, deployment_id, query_data, add_constraints=None, solve_time_limit_seconds=None, best_alternate_only=False)
Get alternative positive assignments for given query. Optimal assignments are ignored and the alternative assignments are returned instead.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it can be safely embedded in an application or website.
deployment_id (str) – The unique identifier of a deployment created under the project.
query_data (dict) – Specifies the set of assignments being requested. The value for the key can be: 1. A simple scalar value, which is matched exactly 2. A list of values, which matches any element in the list 3. A dictionary with keys lower_in/lower_ex and upper_in/upper_ex, which matches values in an inclusive/exclusive range
add_constraints (list) – List of constraints dict to apply to the query. The constraint dict should have the following keys: 1. query (dict): Specifies the set of assignment variables involved in the constraint. The format is same as query_data. 2. operator (str): Constraint operator ‘=’ or ‘<=’ or ‘>=’. 3. constant (int): Constraint RHS constant value. 4. coefficient_column (str): Column in Assignment feature group to be used as coefficient for the assignment variables, optional and defaults to 1
solve_time_limit_seconds (float) – Maximum time in seconds to spend solving the query.
best_alternate_only (bool) – When True only the best alternate will be returned, when False multiple alternates are returned
- Return type:
Dict
- check_constraints(deployment_token, deployment_id, query_data)
Check for any constraints violated by the overrides.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model within an application or website.
deployment_id (str) – The unique identifier for a deployment created under the project.
query_data (dict) – Assignment overrides to the solution.
- Return type:
Dict
- predict_with_binary_data(deployment_token, deployment_id, blob)
Make predictions for a given blob, e.g. image, audio
- Parameters:
deployment_token (str) – A token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model in an application or website.
deployment_id (str) – A unique identifier to a deployment created under the project.
blob (io.TextIOBase) – The multipart/form-data of the data.
- Return type:
Dict
- describe_image(deployment_token, deployment_id, image, categories, top_n=None)
Describe the similarity between an image and a list of categories.
- Parameters:
deployment_token (str) – Authentication token to access created deployments. This token is only authorized to predict on deployments in the current project, and can be safely embedded in an application or website.
deployment_id (str) – Unique identifier of a deployment created under the project.
image (io.TextIOBase) – Image to describe.
categories (list) – List of candidate categories to compare with the image.
top_n (int) – Return the N most similar categories.
- Return type:
Dict
- get_text_from_document(deployment_token, deployment_id, document=None, adjust_doc_orientation=False, save_predicted_pdf=False, save_extracted_features=False)
Generate text from a document
- Parameters:
deployment_token (str) – Authentication token to access created deployments. This token is only authorized to predict on deployments in the current project, and can be safely embedded in an application or website.
deployment_id (str) – Unique identifier of a deployment created under the project.
document (io.TextIOBase) – Input document which can be an image, pdf, or word document (Some formats might not be supported yet)
adjust_doc_orientation (bool) – (Optional) whether to detect the document page orientation and rotate it if needed.
save_predicted_pdf (bool) – (Optional) If True, will save the predicted pdf bytes so that they can be fetched using the prediction docId. Default is False.
save_extracted_features (bool) – (Optional) If True, will save extracted features (i.e. page tokens) so that they can be fetched using the prediction docId. Default is False.
- Return type:
Dict
- transcribe_audio(deployment_token, deployment_id, audio)
Transcribe the audio
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to make predictions on deployments in this project, so it can be safely embedded in an application or website.
deployment_id (str) – The unique identifier of a deployment created under the project.
audio (io.TextIOBase) – The audio to transcribe.
- Return type:
Dict
- classify_image(deployment_token, deployment_id, image=None, doc_id=None)
Classify an image.
- Parameters:
deployment_token (str) – A deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier to a deployment created under the project.
image (io.TextIOBase) – The binary data of the image to classify. One of image or doc_id must be specified.
doc_id (str) – The document ID of the image. One of image or doc_id must be specified.
- Return type:
Dict
- classify_pdf(deployment_token, deployment_id, pdf=None)
Returns a classification prediction from a PDF
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model within an application or website.
deployment_id (str) – The unique identifier for a deployment created under the project.
pdf (io.TextIOBase) – (Optional) The pdf to predict on. One of pdf or docId must be specified.
- Return type:
Dict
- get_cluster(deployment_token, deployment_id, query_data)
Predicts the cluster for given data.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier for the deployment created under the project.
query_data (dict) – A dictionary where each ‘key’ represents a column name and its corresponding ‘value’ represents the value of that column. For Timeseries Clustering, the ‘key’ should be ITEM_ID, and its value should represent a unique item ID that needs clustering.
- Return type:
Dict
- get_objects_from_image(deployment_token, deployment_id, image)
Classify an image.
- Parameters:
deployment_token (str) – A deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier to a deployment created under the project.
image (io.TextIOBase) – The binary data of the image to detect objects from.
- Return type:
Dict
- score_image(deployment_token, deployment_id, image)
Score on image.
- Parameters:
deployment_token (str) – A deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier to a deployment created under the project.
image (io.TextIOBase) – The binary data of the image to get the score.
- Return type:
Dict
- transfer_style(deployment_token, deployment_id, source_image, style_image)
Change the source image to adopt the visual style from the style image.
- Parameters:
deployment_token (str) – A token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model in an application or website.
deployment_id (str) – A unique identifier to a deployment created under the project.
source_image (io.TextIOBase) – The source image to apply the makeup.
style_image (io.TextIOBase) – The image that has the style as a reference.
- Return type:
- generate_image(deployment_token, deployment_id, query_data)
Generate an image from text prompt.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model within an application or website.
deployment_id (str) – A unique identifier to a deployment created under the project.
query_data (dict) – Specifies the text prompt. For example, {‘prompt’: ‘a cat’}
- Return type:
- execute_agent(deployment_token, deployment_id, arguments=None, keyword_arguments=None)
Executes a deployed AI agent function using the arguments as keyword arguments to the agent execute function.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier for the deployment created under the project.
arguments (list) – Positional arguments to the agent execute function.
keyword_arguments (dict) – A dictionary where each ‘key’ represents the paramter name and its corresponding ‘value’ represents the value of that parameter for the agent execute function.
- Return type:
Dict
- get_matrix_agent_schema(deployment_token, deployment_id, query, doc_infos=None, deployment_conversation_id=None, external_session_id=None)
Executes a deployed AI agent function using the arguments as keyword arguments to the agent execute function.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier for the deployment created under the project.
query (str) – User input query to initialize the matrix computation.
doc_infos (list) – An optional list of documents use for constructing the matrix. A keyword ‘doc_id’ is expected to be present in each document for retrieving contents from docstore.
deployment_conversation_id (str) – A unique string identifier for the deployment conversation used for the conversation.
external_session_id (str) – A unique string identifier for the session used for the conversation. If both deployment_conversation_id and external_session_id are not provided, a new session will be created.
- Return type:
Dict
- execute_conversation_agent(deployment_token, deployment_id, arguments=None, keyword_arguments=None, deployment_conversation_id=None, external_session_id=None, regenerate=False, doc_infos=None, agent_workflow_node_id=None)
Executes a deployed AI agent function using the arguments as keyword arguments to the agent execute function.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier for the deployment created under the project.
arguments (list) – Positional arguments to the agent execute function.
keyword_arguments (dict) – A dictionary where each ‘key’ represents the paramter name and its corresponding ‘value’ represents the value of that parameter for the agent execute function.
deployment_conversation_id (str) – A unique string identifier for the deployment conversation used for the conversation.
external_session_id (str) – A unique string identifier for the session used for the conversation. If both deployment_conversation_id and external_session_id are not provided, a new session will be created.
regenerate (bool) – If True, will regenerate the response from the last query.
doc_infos (list) – An optional list of documents use for the conversation. A keyword ‘doc_id’ is expected to be present in each document for retrieving contents from docstore.
agent_workflow_node_id (str) – An optional agent workflow node id to trigger agent execution from an intermediate node.
- Return type:
Dict
- lookup_matches(deployment_token, deployment_id, data=None, filters=None, num=None, result_columns=None, max_words=None, num_retrieval_margin_words=None, max_words_per_chunk=None, score_multiplier_column=None, min_score=None, required_phrases=None, filter_clause=None, crowding_limits=None, include_text_search=False)
Lookup document retrievers and return the matching documents from the document retriever deployed with given query.
Original documents are splitted into chunks and stored in the document retriever. This lookup function will return the relevant chunks from the document retriever. The returned chunks could be expanded to include more words from the original documents and merged if they are overlapping, and permitted by the settings provided. The returned chunks are sorted by relevance.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments within this project, making it safe to embed this model in an application or website.
deployment_id (str) – A unique string identifier for the deployment created under the project.
data (str) – The query to search for.
filters (dict) – A dictionary mapping column names to a list of values to restrict the retrieved search results.
num (int) – If provided, will limit the number of results to the value specified.
result_columns (list) – If provided, will limit the column properties present in each result to those specified in this list.
max_words (int) – If provided, will limit the total number of words in the results to the value specified.
num_retrieval_margin_words (int) – If provided, will add this number of words from left and right of the returned chunks.
max_words_per_chunk (int) – If provided, will limit the number of words in each chunk to the value specified. If the value provided is smaller than the actual size of chunk on disk, which is determined during document retriever creation, the actual size of chunk will be used. I.e, chunks looked up from document retrievers will not be split into smaller chunks during lookup due to this setting.
score_multiplier_column (str) – If provided, will use the values in this column to modify the relevance score of the returned chunks. Values in this column must be numeric.
min_score (float) – If provided, will filter out the results with score less than the value specified.
required_phrases (list) – If provided, each result will contain at least one of the phrases in the given list. The matching is whitespace and case insensitive.
filter_clause (str) – If provided, filter the results of the query using this sql where clause.
crowding_limits (dict) – A dictionary mapping metadata columns to the maximum number of results per unique value of the column. This is used to ensure diversity of metadata attribute values in the results. If a particular attribute value has already reached its maximum count, further results with that same attribute value will be excluded from the final result set. An entry in the map can also be a map specifying the limit per attribute value rather than a single limit for all values. This allows a per value limit for attributes. If an attribute value is not present in the map its limit defaults to zero.
include_text_search (bool) – If true, combine the ranking of results from a BM25 text search over the documents with the vector search using reciprocal rank fusion. It leverages both lexical and semantic matching for better overall results. It’s particularly valuable in professional, technical, or specialized fields where both precision in terminology and understanding of context are important.
- Returns:
The relevant documentation results found from the document retriever.
- Return type:
- get_completion(deployment_token, deployment_id, prompt)
Returns the finetuned LLM generated completion of the prompt.
- Parameters:
deployment_token (str) – The deployment token to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – The unique identifier to a deployment created under the project.
prompt (str) – The prompt given to the finetuned LLM to generate the completion.
- Return type:
Dict
- execute_agent_with_binary_data(deployment_token, deployment_id, arguments=None, keyword_arguments=None, deployment_conversation_id=None, external_session_id=None, blobs=None)
Executes a deployed AI agent function with binary data as inputs.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, so it is safe to embed this model inside of an application or website.
deployment_id (str) – A unique string identifier for the deployment created under the project.
arguments (list) – Positional arguments to the agent execute function.
keyword_arguments (dict) – A dictionary where each ‘key’ represents the parameter name and its corresponding ‘value’ represents the value of that parameter for the agent execute function.
deployment_conversation_id (str) – A unique string identifier for the deployment conversation used for the conversation.
external_session_id (str) – A unique string identifier for the session used for the conversation. If both deployment_conversation_id and external_session_id are not provided, a new session will be created.
blobs (None) – A dictionary of binary data to use as inputs to the agent execute function.
- Returns:
The result of the agent execution
- Return type:
- start_autonomous_agent(deployment_token, deployment_id, deployment_conversation_id=None, arguments=None, keyword_arguments=None, save_conversations=True)
Starts a deployed Autonomous agent associated with the given deployment_conversation_id using the arguments and keyword arguments as inputs for execute function of trigger node.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, making it safe to embed this model in an application or website.
deployment_id (str) – A unique string identifier for the deployment created under the project.
deployment_conversation_id (str) – A unique string identifier for the deployment conversation used for the conversation.
arguments (list) – Positional arguments to the agent execute function.
keyword_arguments (dict) – A dictionary where each ‘key’ represents the parameter name and its corresponding ‘value’ represents the value of that parameter for the agent execute function.
save_conversations (bool) – If true then a new conversation will be created for every run of the workflow associated with the agent.
- Return type:
Dict
- pause_autonomous_agent(deployment_token, deployment_id, deployment_conversation_id)
Pauses a deployed Autonomous agent associated with the given deployment_conversation_id.
- Parameters:
deployment_token (str) – The deployment token used to authenticate access to created deployments. This token is only authorized to predict on deployments in this project, making it safe to embed this model in an application or website.
deployment_id (str) – A unique string identifier for the deployment created under the project.
deployment_conversation_id (str) – A unique string identifier for the deployment conversation used for the conversation.
- Return type:
Dict
- create_batch_prediction(deployment_id, table_name=None, name=None, global_prediction_args=None, batch_prediction_args=None, explanations=False, output_format=None, output_location=None, database_connector_id=None, database_output_config=None, refresh_schedule=None, csv_input_prefix=None, csv_prediction_prefix=None, csv_explanations_prefix=None, output_includes_metadata=None, result_input_columns=None, input_feature_groups=None)
Creates a batch prediction job description for the given deployment.
- Parameters:
deployment_id (str) – Unique string identifier for the deployment.
table_name (str) – Name of the feature group table to write the results of the batch prediction. Can only be specified if outputLocation and databaseConnectorId are not specified. If tableName is specified, the outputType will be enforced as CSV.
name (str) – Name of the batch prediction job.
batch_prediction_args (BatchPredictionArgs) – Batch Prediction args specific to problem type.
output_format (str) – Format of the batch prediction output (CSV or JSON).
output_location (str) – Location to write the prediction results. Otherwise, results will be stored in Abacus.AI.
database_connector_id (str) – Unique identifier of a Database Connection to write predictions to. Cannot be specified in conjunction with outputLocation.
database_output_config (dict) – Key-value pair of columns/values to write to the database connector. Only available if databaseConnectorId is specified.
refresh_schedule (str) – Cron-style string that describes a schedule in UTC to automatically run the batch prediction.
csv_input_prefix (str) – Prefix to prepend to the input columns, only applies when output format is CSV.
csv_prediction_prefix (str) – Prefix to prepend to the prediction columns, only applies when output format is CSV.
csv_explanations_prefix (str) – Prefix to prepend to the explanation columns, only applies when output format is CSV.
output_includes_metadata (bool) – If true, output will contain columns including prediction start time, batch prediction version, and model version.
result_input_columns (list) – If present, will limit result files or feature groups to only include columns present in this list.
input_feature_groups (dict) – A dict of {‘<feature_group_type>’: ‘<feature_group_id>’} which overrides the default input data of that type for the Batch Prediction. Default input data is the training data that was used for training the deployed model.
global_prediction_args (Union[dict, abacusai.api_class.BatchPredictionArgs])
explanations (bool)
- Returns:
The batch prediction description.
- Return type:
- start_batch_prediction(batch_prediction_id)
Creates a new batch prediction version job for a given batch prediction job description.
- Parameters:
batch_prediction_id (str) – The unique identifier of the batch prediction to create a new version of.
- Returns:
The batch prediction version started by this method call.
- Return type:
- update_batch_prediction(batch_prediction_id, deployment_id=None, global_prediction_args=None, batch_prediction_args=None, explanations=None, output_format=None, csv_input_prefix=None, csv_prediction_prefix=None, csv_explanations_prefix=None, output_includes_metadata=None, result_input_columns=None, name=None)
Update a batch prediction job description.
- Parameters:
batch_prediction_id (str) – Unique identifier of the batch prediction.
deployment_id (str) – Unique identifier of the deployment.
batch_prediction_args (BatchPredictionArgs) – Batch Prediction args specific to problem type.
output_format (str) – If specified, sets the format of the batch prediction output (CSV or JSON).
csv_input_prefix (str) – Prefix to prepend to the input columns, only applies when output format is CSV.
csv_prediction_prefix (str) – Prefix to prepend to the prediction columns, only applies when output format is CSV.
csv_explanations_prefix (str) – Prefix to prepend to the explanation columns, only applies when output format is CSV.
output_includes_metadata (bool) – If True, output will contain columns including prediction start time, batch prediction version, and model version.
result_input_columns (list) – If present, will limit result files or feature groups to only include columns present in this list.
name (str) – If present, will rename the batch prediction.
global_prediction_args (Union[dict, abacusai.api_class.BatchPredictionArgs])
explanations (bool)
- Returns:
The batch prediction.
- Return type:
- set_batch_prediction_file_connector_output(batch_prediction_id, output_format=None, output_location=None)
Updates the file connector output configuration of the batch prediction
- Parameters:
batch_prediction_id (str) – The unique identifier of the batch prediction.
output_format (str) – The format of the batch prediction output (CSV or JSON). If not specified, the default format will be used.
output_location (str) – The location to write the prediction results. If not specified, results will be stored in Abacus.AI.
- Returns:
The batch prediction description.
- Return type:
- set_batch_prediction_database_connector_output(batch_prediction_id, database_connector_id=None, database_output_config=None)
Updates the database connector output configuration of the batch prediction
- Parameters:
- Returns:
Description of the batch prediction.
- Return type:
- set_batch_prediction_feature_group_output(batch_prediction_id, table_name)
Creates a feature group and sets it as the batch prediction output.
- Parameters:
- Returns:
Batch prediction after the output has been applied.
- Return type:
- set_batch_prediction_output_to_console(batch_prediction_id)
Sets the batch prediction output to the console, clearing both the file connector and database connector configurations.
- Parameters:
batch_prediction_id (str) – The unique identifier of the batch prediction.
- Returns:
The batch prediction description.
- Return type:
- set_batch_prediction_feature_group(batch_prediction_id, feature_group_type, feature_group_id=None)
Sets the batch prediction input feature group.
- Parameters:
batch_prediction_id (str) – Unique identifier of the batch prediction.
feature_group_type (str) – Enum string representing the feature group type to set. The type is based on the use case under which the feature group is being created (e.g. Catalog Attributes for personalized recommendation use case).
feature_group_id (str) – Unique identifier of the feature group to set as input to the batch prediction.
- Returns:
Description of the batch prediction.
- Return type:
- set_batch_prediction_dataset_remap(batch_prediction_id, dataset_id_remap)
For the purpose of this batch prediction, will swap out datasets in the training feature groups
- Parameters:
- Returns:
Batch prediction object.
- Return type:
- delete_batch_prediction(batch_prediction_id)
Deletes a batch prediction and associated data, such as associated monitors.
- Parameters:
batch_prediction_id (str) – Unique string identifier of the batch prediction.
- upsert_item_embeddings(streaming_token, model_id, item_id, vector, catalog_id=None)
Upserts an embedding vector for an item id for a model_id.
- Parameters:
streaming_token (str) – The streaming token for authenticating requests to the model.
model_id (str) – A unique string identifier for the model to upsert item embeddings to.
item_id (str) – The item id for which its embeddings will be upserted.
vector (list) – The embedding vector.
catalog_id (str) – The name of the catalog in the model to update.
- delete_item_embeddings(streaming_token, model_id, item_ids, catalog_id=None)
Deletes KNN embeddings for a list of item IDs for a given model ID.
- Parameters:
streaming_token (str) – The streaming token for authenticating requests to the model.
model_id (str) – A unique string identifier for the model from which to delete item embeddings.
item_ids (list) – A list of item IDs whose embeddings will be deleted.
catalog_id (str) – An optional name to specify which catalog in a model to update.
- upsert_multiple_item_embeddings(streaming_token, model_id, upserts, catalog_id=None)
Upserts a knn embedding for multiple item ids for a model_id.
- Parameters:
streaming_token (str) – The streaming token for authenticating requests to the model.
model_id (str) – The unique string identifier of the model to upsert item embeddings to.
upserts (list) – A list of dictionaries of the form {‘itemId’: …, ‘vector’: […]} for each upsert.
catalog_id (str) – Name of the catalog in the model to update.
- append_data(feature_group_id, streaming_token, data)
Appends new data into the feature group for a given lookup key recordId.
- append_multiple_data(feature_group_id, streaming_token, data)
Appends new data into the feature group for a given lookup key recordId.
- upsert_data(feature_group_id, data, streaming_token=None, blobs=None)
Update new data into the feature group for a given lookup key record ID if the record ID is found; otherwise, insert new data into the feature group.
- Parameters:
feature_group_id (str) – A unique string identifier of the online feature group to record data to.
data (dict) – The data to record, in JSON format.
streaming_token (str) – Optional streaming token for authenticating requests if upserting to streaming FG.
blobs (None) – A dictionary of binary data to populate file fields’ in data to upsert to the streaming FG.
- Returns:
The feature group row that was upserted.
- Return type:
- delete_data(feature_group_id, primary_key)
Deletes a row from the feature group given the primary key
- describe_feature_group_row_process_by_key(deployment_id, primary_key_value)
Gets the feature group row process.
- Parameters:
- Returns:
An object representing the feature group row process
- Return type:
- list_feature_group_row_processes(deployment_id, limit=None, status=None)
Gets a list of feature group row processes.
- Parameters:
- Returns:
A list of object representing the feature group row process
- Return type:
- get_feature_group_row_process_summary(deployment_id)
Gets a summary of the statuses of the individual feature group processes.
- Parameters:
deployment_id (str) – The deployment id for the process
- Returns:
An object representing the summary of the statuses of the individual feature group processes
- Return type:
- reset_feature_group_row_process_by_key(deployment_id, primary_key_value)
Resets a feature group row process so that it can be reprocessed
- Parameters:
- Returns:
An object representing the feature group row process.
- Return type:
- get_feature_group_row_process_logs_by_key(deployment_id, primary_key_value)
Gets the logs for a feature group row process
- Parameters:
- Returns:
An object representing the logs for the feature group row process
- Return type:
- create_python_function(name, source_code=None, function_name=None, function_variable_mappings=None, package_requirements=None, function_type='FEATURE_GROUP')
Creates a custom Python function that is reusable.
- Parameters:
name (str) – The name to identify the Python function. Must be a valid Python identifier.
source_code (str) – Contents of a valid Python source code file. The source code should contain the transform feature group functions. A list of allowed imports and system libraries for each language is specified in the user functions documentation section.
function_name (str) – The name of the Python function.
function_variable_mappings (List) – List of Python function arguments.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
function_type (str) – Type of Python function to create. Default is FEATURE_GROUP, but can also be PLOTLY_FIG.
- Returns:
The Python function that can be used (e.g. for feature group transform).
- Return type:
- update_python_function(name, source_code=None, function_name=None, function_variable_mappings=None, package_requirements=None)
Update custom python function with user inputs for the given python function.
- Parameters:
name (str) – The name to identify the Python function. Must be a valid Python identifier.
source_code (str) – Contents of a valid Python source code file. The source code should contain the transform feature group functions. A list of allowed imports and system libraries for each language is specified in the user functions documentation section.
function_name (str) – The name of the Python function within source_code.
function_variable_mappings (List) – List of arguments required by function_name.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
- Returns:
The Python function object.
- Return type:
- delete_python_function(name)
Removes an existing Python function.
- Parameters:
name (str) – The name to identify the Python function. Must be a valid Python identifier.
- create_pipeline(pipeline_name, project_id=None, cron=None, is_prod=None)
Creates a pipeline for executing multiple steps.
- Parameters:
pipeline_name (str) – The name of the pipeline, which should be unique to the organization.
project_id (str) – A unique string identifier for the pipeline.
cron (str) – A cron-like string specifying the frequency of pipeline reruns.
is_prod (bool) – Whether the pipeline is a production pipeline or not.
- Returns:
An object that describes a Pipeline.
- Return type:
- describe_pipeline(pipeline_id)
Describes a given pipeline.
- describe_pipeline_by_name(pipeline_name)
Describes a given pipeline.
- update_pipeline(pipeline_id, project_id=None, pipeline_variable_mappings=None, cron=None, is_prod=None)
Updates a pipeline for executing multiple steps.
- Parameters:
pipeline_id (str) – The ID of the pipeline to update.
project_id (str) – A unique string identifier for the pipeline.
pipeline_variable_mappings (List) – List of Python function arguments for the pipeline.
cron (str) – A cron-like string specifying the frequency of the scheduled pipeline runs.
is_prod (bool) – Whether the pipeline is a production pipeline or not.
- Returns:
An object that describes a Pipeline.
- Return type:
- rename_pipeline(pipeline_id, pipeline_name)
Renames a pipeline.
- delete_pipeline(pipeline_id)
Deletes a pipeline.
- Parameters:
pipeline_id (str) – The ID of the pipeline to delete.
- list_pipeline_versions(pipeline_id, limit=200)
Lists the pipeline versions for a specified pipeline
- Parameters:
- Returns:
A list of pipeline versions.
- Return type:
- run_pipeline(pipeline_id, pipeline_variable_mappings=None)
Runs a specified pipeline with the arguments provided.
- Parameters:
pipeline_id (str) – The ID of the pipeline to run.
pipeline_variable_mappings (List) – List of Python function arguments for the pipeline.
- Returns:
The object describing the pipeline
- Return type:
- reset_pipeline_version(pipeline_version, steps=None, include_downstream_steps=True)
Reruns a pipeline version for the given steps and downstream steps if specified.
- Parameters:
- Returns:
Object describing the pipeline version
- Return type:
- create_pipeline_step(pipeline_id, step_name, function_name=None, source_code=None, step_input_mappings=None, output_variable_mappings=None, step_dependencies=None, package_requirements=None, cpu_size=None, memory=None, timeout=None)
Creates a step in a given pipeline.
- Parameters:
pipeline_id (str) – The ID of the pipeline to run.
step_name (str) – The name of the step.
function_name (str) – The name of the Python function.
source_code (str) – Contents of a valid Python source code file. The source code should contain the transform feature group functions. A list of allowed imports and system libraries for each language is specified in the user functions documentation section.
step_input_mappings (List) – List of Python function arguments.
output_variable_mappings (List) – List of Python function outputs.
step_dependencies (list) – List of step names this step depends on.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
cpu_size (str) – Size of the CPU for the step function.
memory (int) – Memory (in GB) for the step function.
timeout (int) – Timeout for the step in minutes, default is 300 minutes.
- Returns:
Object describing the pipeline.
- Return type:
- delete_pipeline_step(pipeline_step_id)
Deletes a step from a pipeline.
- Parameters:
pipeline_step_id (str) – The ID of the pipeline step.
- update_pipeline_step(pipeline_step_id, function_name=None, source_code=None, step_input_mappings=None, output_variable_mappings=None, step_dependencies=None, package_requirements=None, cpu_size=None, memory=None, timeout=None)
Creates a step in a given pipeline.
- Parameters:
pipeline_step_id (str) – The ID of the pipeline_step to update.
function_name (str) – The name of the Python function.
source_code (str) – Contents of a valid Python source code file. The source code should contain the transform feature group functions. A list of allowed imports and system libraries for each language is specified in the user functions documentation section.
step_input_mappings (List) – List of Python function arguments.
output_variable_mappings (List) – List of Python function outputs.
step_dependencies (list) – List of step names this step depends on.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
cpu_size (str) – Size of the CPU for the step function.
memory (int) – Memory (in GB) for the step function.
timeout (int) – Timeout for the pipeline step, default is 300 minutes.
- Returns:
Object describing the pipeline.
- Return type:
- rename_pipeline_step(pipeline_step_id, step_name)
Renames a step in a given pipeline.
- Parameters:
- Returns:
Object describing the pipeline.
- Return type:
- unset_pipeline_refresh_schedule(pipeline_id)
Deletes the refresh schedule for a given pipeline.
- pause_pipeline_refresh_schedule(pipeline_id)
Pauses the refresh schedule for a given pipeline.
- resume_pipeline_refresh_schedule(pipeline_id)
Resumes the refresh schedule for a given pipeline.
- skip_pending_pipeline_version_steps(pipeline_version)
Skips pending steps in a pipeline version.
- Parameters:
pipeline_version (str) – The id of the pipeline version.
- Returns:
Object describing the pipeline version
- Return type:
- create_graph_dashboard(project_id, name, python_function_ids=None)
Create a plot dashboard given selected python plots
- Parameters:
- Returns:
An object describing the graph dashboard.
- Return type:
- delete_graph_dashboard(graph_dashboard_id)
Deletes a graph dashboard
- Parameters:
graph_dashboard_id (str) – Unique string identifier for the graph dashboard to be deleted.
- update_graph_dashboard(graph_dashboard_id, name=None, python_function_ids=None)
Updates a graph dashboard
- Parameters:
- Returns:
An object describing the graph dashboard.
- Return type:
- add_graph_to_dashboard(python_function_id, graph_dashboard_id, function_variable_mappings=None, name=None)
Add a python plot function to a dashboard
- Parameters:
python_function_id (str) – Unique string identifier for the Python function.
graph_dashboard_id (str) – Unique string identifier for the graph dashboard to update.
function_variable_mappings (List) – List of arguments to be supplied to the function as parameters, in the format [{‘name’: ‘function_argument’, ‘variable_type’: ‘FEATURE_GROUP’, ‘value’: ‘name_of_feature_group’}].
name (str) – Name of the added python plot
- Returns:
An object describing the graph dashboard.
- Return type:
- update_graph_to_dashboard(graph_reference_id, function_variable_mappings=None, name=None)
Update a python plot function to a dashboard
- Parameters:
graph_reference_id (str) – A unique string identifier for the graph reference.
function_variable_mappings (List) – A list of arguments to be supplied to the Python function as parameters in the format [{‘name’: ‘function_argument’, ‘variable_type’: ‘FEATURE_GROUP’, ‘value’: ‘name_of_feature_group’}].
name (str) – The updated name for the graph
- Returns:
An object describing the graph dashboard.
- Return type:
- delete_graph_from_dashboard(graph_reference_id)
Deletes a python plot function from a dashboard
- Parameters:
graph_reference_id (str) – Unique String Identifier for the graph
- create_algorithm(name, problem_type, source_code=None, training_data_parameter_names_mapping=None, training_config_parameter_name=None, train_function_name=None, predict_function_name=None, predict_many_function_name=None, initialize_function_name=None, config_options=None, is_default_enabled=False, project_id=None, use_gpu=False, package_requirements=None)
Creates a custom algorithm that is re-usable for model training.
- Parameters:
name (str) – The name to identify the algorithm; only uppercase letters, numbers, and underscores are allowed.
problem_type (str) – The type of problem this algorithm will work on.
source_code (str) – Contents of a valid Python source code file. The source code should contain the train/predict/predict_many/initialize functions. A list of allowed import and system libraries for each language is specified in the user functions documentation section.
training_data_parameter_names_mapping (dict) – The mapping from feature group types to training data parameter names in the train function.
training_config_parameter_name (str) – The train config parameter name in the train function.
train_function_name (str) – Name of the function found in the source code that will be executed to train the model. It is not executed when this function is run.
predict_function_name (str) – Name of the function found in the source code that will be executed to run predictions through the model. It is not executed when this function is run.
predict_many_function_name (str) – Name of the function found in the source code that will be executed for batch prediction of the model. It is not executed when this function is run.
initialize_function_name (str) – Name of the function found in the source code to initialize the trained model before using it to make predictions using the model.
config_options (dict) – Map dataset types and configs to train function parameter names.
is_default_enabled (bool) – Whether to train with the algorithm by default.
project_id (str) – The unique version ID of the project.
use_gpu (bool) – Whether this algorithm needs to run on GPU.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
- Returns:
The new custom model that can be used for training.
- Return type:
- delete_algorithm(algorithm)
Deletes the specified customer algorithm.
- Parameters:
algorithm (str) – The name of the algorithm to delete.
- update_algorithm(algorithm, source_code=None, training_data_parameter_names_mapping=None, training_config_parameter_name=None, train_function_name=None, predict_function_name=None, predict_many_function_name=None, initialize_function_name=None, config_options=None, is_default_enabled=None, use_gpu=None, package_requirements=None)
Update a custom algorithm for the given algorithm name. If source code is provided, all function names for the source code must also be provided.
- Parameters:
algorithm (str) – The name to identify the algorithm. Only uppercase letters, numbers, and underscores are allowed.
source_code (str) – Contents of a valid Python source code file. The source code should contain the train/predict/predict_many/initialize functions. A list of allowed imports and system libraries for each language is specified in the user functions documentation section.
training_data_parameter_names_mapping (dict) – The mapping from feature group types to training data parameter names in the train function.
training_config_parameter_name (str) – The train config parameter name in the train function.
train_function_name (str) – Name of the function found in the source code that will be executed to train the model. It is not executed when this function is run.
predict_function_name (str) – Name of the function found in the source code that will be executed to run predictions through the model. It is not executed when this function is run.
predict_many_function_name (str) – Name of the function found in the source code that will be executed for batch prediction of the model. It is not executed when this function is run.
initialize_function_name (str) – Name of the function found in the source code to initialize the trained model before using it to make predictions using the model.
config_options (dict) – Map dataset types and configs to train function parameter names.
is_default_enabled (bool) – Whether to train with the algorithm by default.
use_gpu (bool) – Whether this algorithm needs to run on GPU.
package_requirements (list) – List of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
- Returns:
The new custom model can be used for training.
- Return type:
- list_builtin_algorithms(project_id, feature_group_ids, training_config=None)
Return list of built-in algorithms based on given input data and training config.
- Parameters:
project_id (str) – Unique string identifier associated with the project.
feature_group_ids (List) – List of feature group IDs specifying input data.
training_config (TrainingConfig) – The training config to be used for model training.
- Returns:
List of applicable builtin algorithms.
- Return type:
- create_custom_loss_function_with_source_code(name, loss_function_type, loss_function_name, loss_function_source_code)
Registers a new custom loss function which can be used as an objective function during model training.
- Parameters:
name (str) – A name for the loss, unique per organization. Must be 50 characters or fewer, and can contain only underscores, numbers, and uppercase alphabets.
loss_function_type (str) – The category of problems that this loss would be applicable to, e.g. REGRESSION_DL_TF, CLASSIFICATION_DL_TF, etc.
loss_function_name (str) – The name of the function whose full source code is passed in loss_function_source_code.
loss_function_source_code (str) – Python source code string of the function.
- Returns:
A description of the registered custom loss function.
- Return type:
- update_custom_loss_function_with_source_code(name, loss_function_name, loss_function_source_code)
Updates a previously registered custom loss function with a new function implementation.
- Parameters:
- Returns:
A description of the updated custom loss function.
- Return type:
- delete_custom_loss_function(name)
Deletes a previously registered custom loss function.
- Parameters:
name (str) – The name of the custom loss function to be deleted.
- create_custom_metric(name, problem_type, custom_metric_function_name=None, source_code=None)
Registers a new custom metric which can be used as an evaluation metric for the trained model.
- Parameters:
name (str) – A unique name for the metric, with a limit of 50 characters. Only underscores, numbers, and uppercase alphabets are allowed.
problem_type (str) – The problem type that this metric would be applicable to, e.g. REGRESSION, FORECASTING, etc.
custom_metric_function_name (str) – The name of the function whose full source code is passed in source_code.
source_code (str) – The full source code of the custom metric function. This is required if custom_metric_function_name is passed.
- Returns:
The newly created custom metric.
- Return type:
- update_custom_metric(name, custom_metric_function_name, source_code)
Updates a previously registered custom metric with a new function implementation.
- Parameters:
- Returns:
A description of the updated custom metric.
- Return type:
- delete_custom_metric(name)
Deletes a previously registered custom metric.
- Parameters:
name (str) – The name of the custom metric to be deleted.
- create_module(name, source_code=None)
Creates a module that’s re-usable in customer’s code, e.g. python function, bring your own algorithm and etc.
- delete_module(name)
Deletes the specified customer module.
- Parameters:
name (str) – The name of the custom module to delete.
- update_module(name, source_code=None)
Update the module.
- create_organization_secret(secret_key, value)
Creates a secret which can be accessed in functions and notebooks.
- Parameters:
- Returns:
The created secret.
- Return type:
- delete_organization_secret(secret_key)
Deletes a secret.
- Parameters:
secret_key (str) – The secret key.
- update_organization_secret(secret_key, value)
Updates a secret.
- Parameters:
- Returns:
The updated secret.
- Return type:
- set_natural_language_explanation(short_explanation, long_explanation, feature_group_id=None, feature_group_version=None, model_id=None)
Saves the natural language explanation of an artifact with given ID. The artifact can be - Feature Group or Feature Group Version
- Parameters:
short_explanation (str) – succinct explanation of the artifact with given ID
long_explanation (str) – verbose explanation of the artifact with given ID
feature_group_id (str) – A unique string identifier associated with the Feature Group.
feature_group_version (str) – A unique string identifier associated with the Feature Group Version.
model_id (str) – A unique string identifier associated with the Model.
- create_chat_session(project_id=None, name=None)
Creates a chat session with Data Science Co-pilot.
- Parameters:
- Returns:
The chat session with Data Science Co-pilot
- Return type:
- delete_chat_message(chat_session_id, message_index)
Deletes a message in a chat session and its associated response.
- export_chat_session(chat_session_id)
Exports a chat session to an HTML file
- Parameters:
chat_session_id (str) – Unique ID of the chat session.
- rename_chat_session(chat_session_id, name)
Renames a chat session with Data Science Co-pilot.
- suggest_abacus_apis(query, verbosity=1, limit=5, include_scores=False)
Suggests several Abacus APIs that are most relevant to the supplied natural language query.
- Parameters:
query (str) – The natural language query to find Abacus APIs for
verbosity (int) – The verbosity level of the suggested Abacus APIs. Ranges from 0 to 2, with 0 being the least verbose and 2 being the most verbose.
limit (int) – The maximum number of APIs to return
include_scores (bool) – Whether to include the relevance scores of the suggested APIs
- Returns:
A list of suggested Abacus APIs
- Return type:
- create_deployment_conversation(deployment_id=None, name=None, external_application_id=None)
Creates a deployment conversation.
- Parameters:
- Returns:
The deployment conversation.
- Return type:
- delete_deployment_conversation(deployment_conversation_id, deployment_id=None)
Delete a Deployment Conversation.
- clear_deployment_conversation(deployment_conversation_id=None, external_session_id=None, deployment_id=None, user_message_indices=None)
Clear the message history of a Deployment Conversation.
- Parameters:
deployment_conversation_id (str) – A unique string identifier associated with the deployment conversation.
external_session_id (str) – The external session id associated with the deployment conversation.
deployment_id (str) – The deployment this conversation belongs to. This is required if not logged in.
user_message_indices (list) – Optional list of user message indices to clear. The associated bot response will also be cleared. If not provided, all messages will be cleared.
- set_deployment_conversation_feedback(deployment_conversation_id, message_index, is_useful=None, is_not_useful=None, feedback=None, feedback_type=None, deployment_id=None)
Sets a deployment conversation message as useful or not useful
- Parameters:
deployment_conversation_id (str) – A unique string identifier associated with the deployment conversation.
message_index (int) – The index of the deployment conversation message
is_useful (bool) – If the message is useful. If true, the message is useful. If false, clear the useful flag.
is_not_useful (bool) – If the message is not useful. If true, the message is not useful. If set to false, clear the useful flag.
feedback (str) – Optional feedback on why the message is useful or not useful
feedback_type (str) – Optional feedback type
deployment_id (str) – The deployment this conversation belongs to. This is required if not logged in.
- rename_deployment_conversation(deployment_conversation_id, name, deployment_id=None)
Rename a Deployment Conversation.
- create_app_user_group(name)
Creates a new App User Group. This User Group is used to have permissions to access the external chatbots.
- Parameters:
name (str) – The name of the App User Group.
- Returns:
The App User Group.
- Return type:
- delete_app_user_group(user_group_id)
Deletes an App User Group.
- Parameters:
user_group_id (str) – The ID of the App User Group.
- invite_users_to_app_user_group(user_group_id, emails)
Invite users to an App User Group. This method will send the specified email addresses an invitation link to join a specific user group.
This will allow them to use any chatbots that this user group has access to.
- Parameters:
user_group_id (str) – The ID of the App User Group to invite the user to.
emails (List) – The email addresses to invite to your user group.
- Returns:
The response of the invitation. This will contain the emails that were successfully invited and the emails that were not.
- Return type:
- add_users_to_app_user_group(user_group_id, user_emails)
Adds users to a App User Group.
- remove_users_from_app_user_group(user_group_id, user_emails)
Removes users from an App User Group.
- add_app_user_group_report_permission(user_group_id)
Give the App User Group the permission to view all reports in the corresponding organization.
- Parameters:
user_group_id (str) – The ID of the App User Group.
- remove_app_user_group_report_permission(user_group_id)
Remove the App User Group’s permission toview all reports in the corresponding organization.
- Parameters:
user_group_id (str) – The ID of the App User Group.
- add_app_user_group_to_external_application(user_group_id, external_application_id)
Adds a permission for an App User Group to access an External Application.
- remove_app_user_group_from_external_application(user_group_id, external_application_id)
Removes a permission for an App User Group to access an External Application.
- create_external_application(deployment_id, name=None, description=None, logo=None, theme=None)
Creates a new External Application from an existing ChatLLM Deployment.
- Parameters:
deployment_id (str) – The ID of the deployment to use.
name (str) – The name of the External Application. If not provided, the name of the deployment will be used.
description (str) – The description of the External Application. This will be shown to users when they access the External Application. If not provided, the description of the deployment will be used.
logo (str) – The logo to be displayed.
theme (dict) – The visual theme of the External Application.
- Returns:
The newly created External Application.
- Return type:
- update_external_application(external_application_id, name=None, description=None, theme=None, deployment_id=None, deployment_conversation_retention_hours=None, reset_retention_policy=False)
Updates an External Application.
- Parameters:
external_application_id (str) – The ID of the External Application.
name (str) – The name of the External Application.
description (str) – The description of the External Application. This will be shown to users when they access the External Application.
theme (dict) – The visual theme of the External Application.
deployment_id (str) – The ID of the deployment to use.
deployment_conversation_retention_hours (int) – The number of hours to retain the conversations for.
reset_retention_policy (bool) – If true, the retention policy will be removed.
- Returns:
The updated External Application.
- Return type:
- delete_external_application(external_application_id)
Deletes an External Application.
- Parameters:
external_application_id (str) – The ID of the External Application.
- create_agent(project_id, function_source_code=None, agent_function_name=None, name=None, memory=None, package_requirements=[], description=None, enable_binary_input=False, evaluation_feature_group_id=None, agent_input_schema=None, agent_output_schema=None, workflow_graph=None, agent_interface=AgentInterface.DEFAULT, included_modules=None, org_level_connectors=None, user_level_connectors=None, initialize_function_name=None, initialize_function_code=None)
Creates a new AI agent using the given agent workflow graph definition.
- Parameters:
project_id (str) – The unique ID associated with the project.
name (str) – The name you want your agent to have, defaults to “<Project Name> Agent”.
memory (int) – Overrides the default memory allocation (in GB) for the agent.
package_requirements (list) – A list of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
description (str) – A description of the agent, including its purpose and instructions.
evaluation_feature_group_id (str) – The ID of the feature group to use for evaluation.
workflow_graph (WorkflowGraph) – The workflow graph for the agent.
agent_interface (AgentInterface) – The interface that the agent will be deployed with.
included_modules (List) – A list of user created custom modules to include in the agent’s environment.
org_level_connectors (List) – A list of org level connector ids to be used by the agent.
user_level_connectors (Dict) – A dictionary mapping ApplicationConnectorType keys to lists of OAuth scopes. Each key represents a specific user level application connector, while the value is a list of scopes that define the permissions granted to the application.
initialize_function_name (str) – The name of the function to be used for initialization.
initialize_function_code (str) – The function code to be used for initialization.
function_source_code (str)
agent_function_name (str)
enable_binary_input (bool)
agent_input_schema (dict)
agent_output_schema (dict)
- Returns:
The new agent.
- Return type:
- update_agent(model_id, function_source_code=None, agent_function_name=None, memory=None, package_requirements=None, description=None, enable_binary_input=None, agent_input_schema=None, agent_output_schema=None, workflow_graph=None, agent_interface=None, included_modules=None, org_level_connectors=None, user_level_connectors=None, initialize_function_name=None, initialize_function_code=None)
Updates an existing AI Agent. A new version of the agent will be created and published.
- Parameters:
model_id (str) – The unique ID associated with the AI Agent to be changed.
memory (int) – Memory (in GB) for the agent.
package_requirements (list) – A list of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
description (str) – A description of the agent, including its purpose and instructions.
workflow_graph (WorkflowGraph) – The workflow graph for the agent.
agent_interface (AgentInterface) – The interface that the agent will be deployed with.
included_modules (List) – A list of user created custom modules to include in the agent’s environment.
org_level_connectors (List) – A list of org level connector ids to be used by the agent.
user_level_connectors (Dict) – A dictionary mapping ApplicationConnectorType keys to lists of OAuth scopes. Each key represents a specific user level application connector, while the value is a list of scopes that define the permissions granted to the application.
initialize_function_name (str) – The name of the function to be used for initialization.
initialize_function_code (str) – The function code to be used for initialization.
function_source_code (str)
agent_function_name (str)
enable_binary_input (bool)
agent_input_schema (dict)
agent_output_schema (dict)
- Returns:
The updated agent.
- Return type:
- generate_agent_code(project_id, prompt, fast_mode=None)
Generates the code for defining an AI Agent
- Parameters:
project_id (str) – The unique ID associated with the project.
prompt (str) – A natural language prompt which describes agent specification. Describe what the agent will do, what inputs it will expect, and what outputs it will give out
fast_mode (bool) – If True, runs a faster but slightly less accurate code generation pipeline
- Return type:
- evaluate_prompt(prompt=None, system_message=None, llm_name=None, max_tokens=None, temperature=0.0, messages=None, response_type=None, json_response_schema=None, stop_sequences=None, top_p=None)
Generate response to the prompt using the specified model.
- Parameters:
prompt (str) – Prompt to use for generation.
system_message (str) – System prompt for models that support it.
llm_name (LLMName) – Name of the underlying LLM to be used for generation. Default is auto selection.
max_tokens (int) – Maximum number of tokens to generate. If set, the model will just stop generating after this token limit is reached.
temperature (float) – Temperature to use for generation. Higher temperature makes more non-deterministic responses, a value of zero makes mostly deterministic reponses. Default is 0.0. A range of 0.0 - 2.0 is allowed.
messages (list) – A list of messages to use as conversation history. For completion models like OPENAI_GPT3_5_TEXT and PALM_TEXT this should not be set. A message is a dict with attributes: is_user (bool): Whether the message is from the user. text (str): The message’s text. attachments (list): The files attached to the message represented as a list of dictionaries [{“doc_id”: <doc_id1>}, {“doc_id”: <doc_id2>}]
response_type (str) – Specifies the type of response to request from the LLM. One of ‘text’ and ‘json’. If set to ‘json’, the LLM will respond with a json formatted string whose schema can be specified json_response_schema. Defaults to ‘text’
json_response_schema (dict) – A dictionary specifying the keys/schema/parameters which LLM should adhere to in its response when response_type is ‘json’. Each parameter is mapped to a dict with the following info - type (str) (required): Data type of the parameter. description (str) (required): Description of the parameter. is_required (bool) (optional): Whether the parameter is required or not. Example: json_response_schema = {‘title’: {‘type’: ‘string’, ‘description’: ‘Article title’, ‘is_required’: true}, ‘body’: {‘type’: ‘string’, ‘description’: ‘Article body’}}
stop_sequences (list) – Specifies the strings on which the LLM will stop generation.
top_p (float) – The nucleus sampling value used for this run. If set, the model will sample from the smallest set of tokens whose cumulative probability exceeds the probability top_p. Default is 1.0. A range of 0.0 - 1.0 is allowed. It is generally recommended to use either temperature sampling or nucleus sampling, but not both.
- Returns:
The response from the model, raw text and parsed components.
- Return type:
- render_feature_groups_for_llm(feature_group_ids, token_budget=None, include_definition=True)
Encode feature groups as language model inputs.
- Parameters:
- Returns:
LLM input object comprising of information about the feature groups with given IDs.
- Return type:
- generate_code_for_data_query_using_llm(query, feature_group_ids=None, external_database_schemas=None, prompt_context=None, llm_name=None, temperature=None, sql_dialect='Spark')
Execute a data query using a large language model in an async fashion.
- Parameters:
query (str) – The natural language query to execute. The query is converted to a SQL query using the language model.
feature_group_ids (List) – A list of feature group IDs that the query should be executed against.
external_database_schemas (List) – A list of schmeas from external database that the query should be executed against.
prompt_context (str) – The context message used to construct the prompt for the language model. If not provide, a default context message is used.
llm_name (LLMName) – The name of the language model to use. If not provided, the default language model is used.
temperature (float) – The temperature to use for the language model if supported. If not provided, the default temperature is used.
sql_dialect (str) – The dialect of sql to generate sql for. The default is Spark.
- Returns:
The generated SQL code.
- Return type:
- extract_data_using_llm(field_descriptors, document_id=None, document_text=None, llm_name=None)
Extract fields from a document using a large language model.
- Parameters:
field_descriptors (List) – A list of fields to extract from the document.
document_id (str) – The ID of the document to query.
document_text (str) – The text of the document to query. Only used if document_id is not provided.
llm_name (LLMName) – The name of the language model to use. If not provided, the default language model is used.
- Returns:
The response from the document query.
- Return type:
- search_web_for_llm(queries, search_providers=None, max_results=1, safe=True, fetch_content=False, max_page_tokens=8192, convert_to_markdown=True)
Access web search providers to fetch content related to the queries for use in large language model inputs.
This method can access multiple search providers and return information from them. If the provider supplies URLs for the results then this method also supports fetching the contents of those URLs, optionally converting them to markdown format, and returning them as part of the response. Set a token budget to limit the amount of content returned in the response.
- Parameters:
queries (List) – List of queries to send to the search providers. At most 10 queries each less than 512 characters.
search_providers (List) – Search providers to use for the search. If not provided a default provider is used. - BING - GOOGLE
max_results (int) – Maximum number of results to fetch per provider. Must be in [1, 100]. Defaults to 1 (I’m feeling lucky).
safe (bool) – Whether content safety is enabled for these search request. Defaults to True.
fetch_content (bool) – If true fetches the content from the urls in the search results. Defailts to False.
max_page_tokens (int) – Maximum number of tokens to accumulate if fetching search result contents.
convert_to_markdown (bool) – Whether content should be converted to markdown. Defaults to True.
- Returns:
Results of running the search queries.
- Return type:
- construct_agent_conversation_messages_for_llm(deployment_conversation_id=None, external_session_id=None, include_document_contents=True)
Returns conversation history in a format for LLM calls.
- Parameters:
deployment_conversation_id (str) – Unique ID of the conversation. One of deployment_conversation_id or external_session_id must be provided.
external_session_id (str) – External session ID of the conversation.
include_document_contents (bool) – If true, include contents from uploaded documents in the generated messages.
- Returns:
Contains a list of AgentConversationMessage that represents the conversation.
- Return type:
- validate_workflow_graph(workflow_graph, agent_interface=AgentInterface.DEFAULT, package_requirements=[])
Validates the workflow graph for an AI Agent.
- Parameters:
workflow_graph (WorkflowGraph) – The workflow graph to validate.
agent_interface (AgentInterface) – The interface that the agent will be deployed with.
package_requirements (list) – A list of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
- Return type:
- extract_agent_workflow_information(workflow_graph, agent_interface=AgentInterface.DEFAULT, package_requirements=[])
Extracts source code of workflow graph, ancestors, in_edges and traversal orders from the agent workflow.
- Parameters:
workflow_graph (WorkflowGraph) – The workflow graph to validate.
agent_interface (AgentInterface) – The interface that the agent will be deployed with.
package_requirements (list) – A list of package requirement strings. For example: [‘numpy==1.2.3’, ‘pandas>=1.4.0’].
- Return type:
- get_llm_app_response(llm_app_name, prompt)
Queries the specified LLM App to generate a response to the prompt. LLM Apps are LLMs tailored to achieve a specific task like code generation for a specific service’s API.
- Parameters:
- Returns:
The response from the LLM App.
- Return type:
- create_document_retriever(project_id, name, feature_group_id, document_retriever_config=None)
Returns a document retriever that stores embeddings for document chunks in a feature group.
Document columns in the feature group are broken into chunks. For cases with multiple document columns, chunks from all columns are combined together to form a single chunk.
- Parameters:
project_id (str) – The ID of project that the Document Retriever is created in.
name (str) – The name of the Document Retriever. Can be up to 120 characters long and can only contain alphanumeric characters and underscores.
feature_group_id (str) – The ID of the feature group that the Document Retriever is associated with.
document_retriever_config (VectorStoreConfig) – The configuration, including chunk_size and chunk_overlap_fraction, for document retrieval.
- Returns:
The newly created document retriever.
- Return type:
- rename_document_retriever(document_retriever_id, name)
Updates an existing document retriever.
- Parameters:
- Returns:
The updated document retriever.
- Return type:
- create_document_retriever_version(document_retriever_id, feature_group_id=None, document_retriever_config=None)
Creates a document retriever version from the latest version of the feature group that the document retriever associated with.
- Parameters:
document_retriever_id (str) – The unique ID associated with the document retriever to create version with.
feature_group_id (str) – The ID of the feature group to update the document retriever with.
document_retriever_config (VectorStoreConfig) – The configuration, including chunk_size and chunk_overlap_fraction, for document retrieval.
- Returns:
The newly created document retriever version.
- Return type:
- delete_document_retriever(vector_store_id)
Delete a Document Retriever.
- Parameters:
vector_store_id (str) – A unique string identifier associated with the document retriever.
- get_document_snippet(document_retriever_id, document_id, start_word_index=None, end_word_index=None)
Get a snippet from documents in the document retriever.
- Parameters:
document_retriever_id (str) – A unique string identifier associated with the document retriever.
document_id (str) – The ID of the document to retrieve the snippet from.
start_word_index (int) – If provided, will start the snippet at the index (of words in the document) specified.
end_word_index (int) – If provided, will end the snippet at the index of (of words in the document) specified.
- Returns:
The documentation snippet found from the document retriever.
- Return type:
- restart_document_retriever(document_retriever_id)
Restart the document retriever if it is stopped or has failed. This will start the deployment of the document retriever,
but will not wait for it to be ready. You need to call wait_until_ready to wait until the deployment is ready.
- Parameters:
document_retriever_id (str) – A unique string identifier associated with the document retriever.
- get_relevant_snippets(doc_ids=None, blobs=None, query=None, document_retriever_config=None, honor_sentence_boundary=True, num_retrieval_margin_words=None, max_words_per_snippet=None, max_snippets_per_document=None, start_word_index=None, end_word_index=None, including_bounding_boxes=False, text=None)
Retrieves snippets relevant to a given query from specified documents. This function supports flexible input options,
allowing for retrieval from a variety of data sources including document IDs, blob data, and plain text. When multiple data sources are provided, all are considered in the retrieval process. Document retrievers may be created on-the-fly to perform lookup.
- Parameters:
doc_ids (List) – A list of document store IDs to retrieve the snippets from.
blobs (io.TextIOBase) – A dictionary mapping document names to the blob data.
query (str) – Query string to find relevant snippets in the documents.
document_retriever_config (VectorStoreConfig) – If provided, used to configure the retrieval steps like chunking for embeddings.
num_retrieval_margin_words (int) – If provided, will add this number of words from left and right of the returned snippets.
max_words_per_snippet (int) – If provided, will limit the number of words in each snippet to the value specified.
max_snippets_per_document (int) – If provided, will limit the number of snippets retrieved from each document to the value specified.
start_word_index (int) – If provided, will start the snippet at the index (of words in the document) specified.
end_word_index (int) – If provided, will end the snippet at the index of (of words in the document) specified.
including_bounding_boxes (bool) – If true, will include the bounding boxes of the snippets if they are available.
text (str) – Plain text from which to retrieve snippets.
honor_sentence_boundary (bool)
- Returns:
The snippets found from the documents.
- Return type: