Skip to content

Compliance Documentation

Automated documentation

AutomatedDocument

class datarobot.models.automated_documentation.AutomatedDocument

An automated documentation object.

Added in version v2.24.

Variables

Attribute Type Description
document_type str or None Type of automated document. You can specify: MODEL_COMPLIANCE, AUTOPILOT_SUMMARY depending on your account settings. Required for document generation.
entity_id str or None ID of the entity to generate the document for. It can be model ID or project ID. Required for document generation.
output_format str or None Format of the generate document, either docx or html. Required for document generation.
locale str or None Localization of the document, dependent on your account settings. Default setting is EN_US.
template_id str or None Template ID to use for the document outline. Defaults to standard DataRobot template. See the documentation for ComplianceDocTemplate for more information.
id str or None ID of the document. Required to download or delete a document.
filepath str or None Path to save a downloaded document to. Either include a file path and name or the file will be saved to the directory from which the script is launched.
created_at datetime or None Document creation timestamp.

list_available_document_types()

classmethod list_available_document_types()

Get a list of all available document types and locales. This method is deprecated.

Returns

Returns Description
{“data”: List of dicts}

Return type: List[DocumentOption]

Examples

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)
doc_types = dr.AutomatedDocument.list_available_document_types()

list_all_available_document_types()

classmethod list_all_available_document_types()

Get a list of all available document types and locales. This method is direct replacement of list_available_document_types().

Return type: List of dicts

Examples

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)
doc_types = dr.AutomatedDocument.list_all_available_document_types()

is_model_compliance_initialized

property is_model_compliance_initialized

Check if model compliance documentation pre-processing is initialized. Model compliance documentation pre-processing must be initialized before generating documentation for a custom model.

Returns

Returns Description
- boolean flag is whether model compliance documentation pre-processing is initialized
- string value is the initialization status

Return type: Tuple of (boolean, string)

initialize_model_compliance()

method initialize_model_compliance()

Initialize model compliance documentation pre-processing. Must be called before generating documentation for a custom model.

Returns

Returns Description
- boolean flag is whether model compliance documentation pre-processing is initialized
- string value is the initialization status

Return type: Tuple of (boolean, string)

Examples

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)

# NOTE: entity_id is either a model id or a model package (version) id
doc = dr.AutomatedDocument(
        document_type="MODEL_COMPLIANCE",
        entity_id="6f50cdb77cc4f8d1560c3ed5",
        output_format="docx",
        locale="EN_US")

doc.initialize_model_compliance()

generate()

method generate()

Request generation of an automated document.

Required attributes to request document generation: document_type, entity_id, and output_format.

Return type: requests.models.Response

Examples

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)

doc = dr.AutomatedDocument(
        document_type="MODEL_COMPLIANCE",
        entity_id="6f50cdb77cc4f8d1560c3ed5",
        output_format="docx",
        locale="EN_US",
        template_id="50efc9db8aff6c81a374aeec",
        filepath="/Users/username/Documents/example.docx"
        )

doc.generate()
doc.download()

download()

method download()

Download a generated Automated Document. Document ID is required to download a file.

Return type: requests.models.Response

Examples

Generating and downloading the generated document:

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)

doc = dr.AutomatedDocument(
        document_type="AUTOPILOT_SUMMARY",
        entity_id="6050d07d9da9053ebb002ef7",
        output_format="docx",
        filepath="/Users/username/Documents/Project_Report_1.docx"
        )

doc.generate()
doc.download()

Downloading an earlier generated document when you know the document ID:

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)
doc = dr.AutomatedDocument(id='5e8b6a34d2426053ab9a39ed')
doc.download()

Notice that filepath was not set for this document. In this case, the file is saved to the directory from which the script was launched.

Downloading a document chosen from a list of earlier generated documents:

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)

model_id = "6f5ed3de855962e0a72a96fe"
docs = dr.AutomatedDocument.list_generated_documents(entity_ids=[model_id])
doc = docs[0]
doc.filepath = "/Users/me/Desktop/Recommended_model_doc.docx"
doc.download()

delete()

method delete()

Delete a document using its ID.

Return type: requests.models.Response

Examples

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)
doc = dr.AutomatedDocument(id="5e8b6a34d2426053ab9a39ed")
doc.delete()

If you don’t know the document ID, you can follow the same workflow to get the ID as in the examples for the AutomatedDocument.download method.

list_generated_documents()

classmethod list_generated_documents()

Get information about all previously generated documents available for your account. The information includes document ID and type, ID of the entity it was generated for, time of creation, and other information.

Parameters

Parameter Type Description
document_types List of str or None Query for one or more document types.
entity_ids List of str or None Query generated documents by one or more entity IDs.
output_formats List of str or None Query for one or more output formats.
locales List of str or None Query generated documents by one or more locales.
offset int or None Number of items to skip. Defaults to 0 if not provided.
limit int or None Number of items to return, maximum number of items is 1000.

Return type: List[AutomatedDocument]

Returns

Returns Description
* List of AutomatedDocument objects, where each object contains attributes described in
* AutomatedDocument

Examples

To get a list of all generated documents:

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)
docs = AutomatedDocument.list_generated_documents()

To get a list of all AUTOPILOT_SUMMARY documents:

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)
docs = AutomatedDocument.list_generated_documents(document_types=["AUTOPILOT_SUMMARY"])

To get a list of 5 recently created automated documents in html format:

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)
docs = AutomatedDocument.list_generated_documents(output_formats=["html"], limit=5)

To get a list of automated documents created for specific entities (projects or models):

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)
docs = AutomatedDocument.list_generated_documents(
    entity_ids=["6051d3dbef875eb3be1be036",
                "6051d3e1fbe65cd7a5f6fde6",
                "6051d3e7f86c04486c2f9584"]
    )

Note, that the list of results contains AutomatedDocument objects, which means that you can execute class-related methods on them. Here’s how you can list, download, and then delete from the server all automated documents related to a certain entity:

import datarobot as dr

dr.Client(token=my_token, endpoint=endpoint)

ids = ["6051d3dbef875eb3be1be036", "5fe1d3d55cd810ebdb60c517f"]
docs = AutomatedDocument.list_generated_documents(entity_ids=ids)
for doc in docs:
    doc.download()
    doc.delete()

DocumentOption

class datarobot.models.automated_documentation.DocumentOption

Compliance documentation templates

ComplianceDocTemplate

class datarobot.models.compliance_doc_template.ComplianceDocTemplate

A compliance documentation template. Templates are used to customize contents of AutomatedDocument.

Added in version v2.14.

Notes

Each section dictionary has the following schema:

  • title : title of the section
  • type : type of section. Must be one of “datarobot”, “user” or “table_of_contents”.

Each type of section has a different set of attributes described bellow.

Section of type "datarobot" represent a section owned by DataRobot. DataRobot sections have the following additional attributes:

  • content_id : The identifier of the content in this section. You can get the default template with get_default for a complete list of possible DataRobot section content ids.
  • sections : list of sub-section dicts nested under the parent section.

Section of type "user" represent a section with user-defined content. Those sections may contain text generated by user and have the following additional fields:

  • regularText : regular text of the section, optionally separated by \n to split paragraphs.
  • highlightedText : highlighted text of the section, optionally separated by \n to split paragraphs.
  • sections : list of sub-section dicts nested under the parent section.

Section of type "table_of_contents" represent a table of contents and has no additional attributes.

Variables

Attribute Type Description
id str The ID of the template.
name str The name of the template.
creator_id str The ID of the user who created the template.
creator_username str The username of the user who created the template.
org_id str The ID of the organization the template belongs to.
sections list of dicts The sections of the template describing the structure of the document. The section schema is described in Notes section, above.
project_type ComplianceDocTemplateProjectType The project type of the template.

get_default()

classmethod get_default()

Get a default DataRobot template. This template is used for generating compliance documentation when no template is specified.

Parameters

Parameter Type Description
template_type str or None Type of the template. Currently supported values are “normal” and “time_series”

Returns

Returns Description
template the default template object with sections attribute populated with default sections.

Return type: ComplianceDocTemplate

create_from_json_file()

classmethod create_from_json_file()

Create a template with the specified name and sections in a JSON file.

This is useful when working with sections in a JSON file. Example:

default_template = ComplianceDocTemplate.get_default()
default_template.sections_to_json_file('path/to/example.json')
# ... edit example.json in your editor
my_template = ComplianceDocTemplate.create_from_json_file(
    name='my template',
    path='path/to/example.json'
)

Parameters

Parameter Type Description
name str the name of the template, which must be unique.
path str the path to find the JSON file at
project_type ComplianceDocTemplateProjectType The project type of the template.

Returns

Returns Description
template The created template.

Return type: ComplianceDocTemplate

create()

classmethod create()

Create a template with the specified name and sections.

Parameters

Parameter Type Description
name str The name of the template, which must be unique.
sections list List of section objects
project_type ComplianceDocTemplateProjectType The project type of the template.

Returns

Returns Description
template The created template.

Return type: ComplianceDocTemplate

get()

classmethod get()

Retrieve a specific template.

Parameters

Parameter Type Description
template_id str the ID of the template to retrieve

Returns

Returns Description
template the retrieved template

Return type: ComplianceDocTemplate

list()

classmethod list()

Get a paginated list of compliance documentation template objects.

Parameters

Parameter Type Description
name_part str or None Return only the templates with names matching specified string. The matching is case-insensitive.
limit int The number of records to return. The server will use a (possibly finite) default if not specified.
offset int The number of records to skip.
project_type ComplianceDocTemplateProjectType The project type of the template.

Returns

Returns Description
templates The list of template objects.

Return type: list of ComplianceDocTemplate

sections_to_json_file()

method sections_to_json_file()

Save sections of the template to a json file at the specified path

Parameters

Parameter Type Description
path str the path to save the file to
indent int indentation to use in the json file.

Return type: None

update()

method update()

Update the name or sections of an existing doc template.

Note that default or non-existent templates can not be updated.

Parameters

Parameter Type Description
name Optional[str] the new name for the template
sections list of dicts The list of sections within the template.
project_type ComplianceDocTemplateProjectType The project type of the template

Return type: None

delete()

method delete()

Delete the compliance documentation template.

Return type: None

ComplianceDocTemplateProjectType

class datarobot.enums.ComplianceDocTemplateProjectType

The project type supported by the template.

ComplianceDocTemplateType

class datarobot.enums.ComplianceDocTemplateType

The type of default template and sections to create a template.

to_project_type()

classmethod to_project_type()

Map from template type to project type supported by the template.

Return type: Optional[ComplianceDocTemplateProjectType]