Automated Documentation¶
DataRobot can generate Automated Documentation about various entities within the platform, such as specific models or projects. These reports can be downloaded and shared to help with regulatory compliance as well as to provide a general understanding of the AI lifecycle.
Check Available Document Types¶
Automated Documentation is available behind different feature flags set up according to your POC
settings or subscription plan. MODEL_COMPLIANCE
documentation is a premium add-on DataRobot
product, while AUTOPILOT_SUMMARY
report is available behind an optional feature flag for
Self-Service and other platforms.
import datarobot as dr
# Connect to your DataRobot platform with your token
dr.Client(token=my_token, endpoint=endpoint)
options = dr.AutomatedDocument.list_available_document_types()
In response, you get a data
dictionary with a list of document types that are available for
generation with your account.
Generate Automated Documents¶
Now that you know which documents you can generate, create one with AutomatedDocument
.generate
method. Note that for AUTOPILOT_SUMMARY
report, you need to assign a project ID
to the entity_id
parameter, while MODEL_COMPLIANCE
expects an ID of a model with the
entity_id
parameter.
import datarobot as dr
dr.Client(token=my_token, endpoint=endpoint)
doc_type = "AUTOPILOT_SUMMARY"
entity_id = "5e8b6a34d2426053ab9a39ed" # This is an ID of a project
file_format="docx"
doc = dr.AutomatedDocument(document_type=doc_type, entity_id=entity_id, output_format=file_format)
doc.generate()
You can specify other attributes. For example, filepath
presets the file location and name to
use when downloading the document. Please see the API
Reference for more details.
Download Automated Documents¶
If you followed the steps above to generate an automated document, you can use the
AutomatedDocument.download
method right away to get the document.
doc.filepath = "Users/jeremy/DR_project_docs/autopilot_report_staff_2021.docx"
doc.download()
You can set a desired filepath
(that includes the future file’s name) before you download a
document. Otherwise, it will be automatically downloaded to the directory from which you launched
your script.
Please note that to download the document, you need its ID. When you generate a document with the Python client, the ID is set automatically without your interference. However, if the document has already been generated from the application interface (or REST API) and you want to download it using the Python client, you need to provide the ID of the document you want to download:
import datarobot as dr
dr.Client(token=my_token, endpoint=endpoint)
doc_id = "604f81f0f3d6397d250c35bc"
path = "Users/jeremy/DR_project_docs/xgb_model_doc_staff_project_2021.docx"
doc = dr.AutomatedDocument(id=doc_id, filepath=path)
doc.download()
List Previously Generated Automated Documents¶
You can retrieve information about 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. Documents are sorted by creation time – created_at
key –
from most recent to oldest.
import datarobot as dr
dr.Client(token=my_token, endpoint=endpoint)
docs = dr.AutomatedDocument.list_generated_documents()
This returns list of AutomatedDocument
objects. You can request a list of specific documents.
For example, get a list of all MODEL_COMPLIANCE
documents:
model_docs = dr.AutomatedDocument.list_generated_documents(document_types=["MODEL_COMPLIANCE"])
Or get a list of documents created for specific entities:
otv_project_reports = dr.AutomatedDocument.list_generated_documents(
entity_ids=["604f81f0f3d6397d250c35bc", "5ed60de32f18d97d250c3db5"]
)
For more information about all query options, see AutomatedDocument
.list_generated_documents
in the API Reference.
Delete Automated Documents¶
To delete a document from the DataRobot application, use the AutomatedDocument.delete
method.
import datarobot as dr
dr.Client(token=my_token, endpoint=endpoint)
doc = dr.AutomatedDocument(id="604f81f0f3d6397d250c35bc")
doc.delete()
All locally saved automated documents will remain intact.