Skip to content

voplica.api.ai.dataset

The protobuf package voplica.api.ai.dataset: 4 services, 144 messages and 2 enums, defined in voplica/api/ai/dataset/dataset.proto, voplica/api/ai/dataset/dataset_generation.proto, voplica/api/ai/dataset/dataset_preparation.proto, voplica/api/ai/dataset/dataset_subject.proto.

Each method is called as POST https://api.voplica.com/voplica.api.ai.dataset.DatasetService/<Method> with its request message as JSON and your API key (Authentication); a method marked Anonymous allowed also answers without one. See the JSON API.

Method Request Response Description
CreateDataset CreateDatasetRequest CreateDatasetResponse
GetDataset GetDatasetRequest GetDatasetResponse Anonymous allowed.
GetMultiDataset GetMultiDatasetRequest GetMultiDatasetResponse Anonymous allowed. Batch lookup (FE name hydration, e.g. the creator earnings pages). Visibility-filtered like GetDataset; missing/inaccessible ids are silently omitted rather than erroring.
GetDatasetMetadata GetDatasetMetadataRequest GetDatasetMetadataResponse Returns owner-only metadata (preparation lifecycle hints, description, etc.). Access restricted to the dataset owner.
GetDatasetLikenessDisclosure GetDatasetLikenessDisclosureRequest GetDatasetLikenessDisclosureResponse Anonymous allowed.
UpdateDataset UpdateDatasetRequest UpdateDatasetResponse
DeleteDataset DeleteDatasetRequest DeleteDatasetResponse
CloneDataset CloneDatasetRequest CloneDatasetResponse Clone-to-edit for public datasets (and duplication for owners). See CloneDatasetRequest.
AttachAssetToDataset AttachAssetToDatasetRequest AttachAssetToDatasetResponse Attaches a source asset to the dataset.
UpdateDatasetAssetAutoCaptionHint UpdateDatasetAssetAutoCaptionHintRequest UpdateDatasetAssetAutoCaptionHintResponse Updates the per-asset auto-caption hint on an existing dataset_assets membership row.
DetachAssetFromDataset DetachAssetFromDatasetRequest DetachAssetFromDatasetResponse
GetAttachedAssetsToDataset GetAttachedAssetsToDatasetRequest GetAttachedAssetsToDatasetResponse Anonymous allowed. Works only when the accessing user has dataset download permission (owner OR public + download_allowed).
AddDatasetPreviewAsset AddDatasetPreviewAssetRequest AddDatasetPreviewAssetResponse
DeleteDatasetPreviewAsset DeleteDatasetPreviewAssetRequest DeleteDatasetPreviewAssetResponse
ListDatasets ListDatasetsRequest ListDatasetsResponse Anonymous allowed.
ListDatasetAssets ListDatasetAssetsRequest ListDatasetAssetsResponse Anonymous allowed. Lists source dataset assets. Prepared artifacts are exposed via the dataset preparation service.
GetDatasetPreviewAssets GetDatasetPreviewAssetsRequest GetDatasetPreviewAssetsResponse Anonymous allowed.

Each method is called as POST https://api.voplica.com/voplica.api.ai.dataset.DatasetGenerationService/<Method> with its request message as JSON and your API key (Authentication); a method marked Anonymous allowed also answers without one. See the JSON API.

Method Request Response Description
GenerateDatasetImages GenerateDatasetImagesRequest GenerateDatasetImagesResponse Validates the target dataset (owned by the caller, IMAGE_ASSET) or creates it from the inline spec, validates character access and explicit look existence, persists the run, and executes wrapper workflow.ai.dataset.generation.v1 AS THE USER (so it is billed like every other ai workflow). A trigger failure marks the run FAILED and is reported to the caller.
GetDatasetGenerationRun GetDatasetGenerationRunRequest GetDatasetGenerationRunResponse
ListDatasetGenerationRuns ListDatasetGenerationRunsRequest ListDatasetGenerationRunsResponse
CancelDatasetGenerationRun CancelDatasetGenerationRunRequest CancelDatasetGenerationRunResponse Cancels the workflow for an in-flight generation run (engine stopExecution as the user). Restricted to the dataset owner OR the user who started the run.

Each method is called as POST https://api.voplica.com/voplica.api.ai.dataset.DatasetPreparationService/<Method> with its request message as JSON and your API key (Authentication); a method marked Anonymous allowed also answers without one. See the JSON API.

Method Request Response Description
CreateDatasetPreparationRecipe CreateDatasetPreparationRecipeRequest CreateDatasetPreparationRecipeResponse
GetDatasetPreparationRecipe GetDatasetPreparationRecipeRequest GetDatasetPreparationRecipeResponse Anonymous allowed.
UpdateDatasetPreparationRecipe UpdateDatasetPreparationRecipeRequest UpdateDatasetPreparationRecipeResponse
DeleteDatasetPreparationRecipe DeleteDatasetPreparationRecipeRequest DeleteDatasetPreparationRecipeResponse
ListDatasetPreparationRecipes ListDatasetPreparationRecipesRequest ListDatasetPreparationRecipesResponse Anonymous allowed.
PlanDatasetPreparation PlanDatasetPreparationRequest PlanDatasetPreparationResponse Returns what would be reused, prepared, and captioned before starting preparation. Read-only. Restricted to the dataset owner.
PrepareDataset PrepareDatasetRequest PrepareDatasetResponse Plans preparation, find-or-creates the dataset’s DatasetPreparation for the recipe, persists a run row (with its frozen work items), and starts the workflow when work is needed. Restricted to the dataset owner.
CancelDatasetPreparation CancelDatasetPreparationRequest CancelDatasetPreparationResponse Cancels the workflow for an in-flight preparation run. Restricted to the dataset owner OR the user who started the run.
GetDatasetPreparation GetDatasetPreparationRequest GetDatasetPreparationResponse Anonymous allowed. Visibility follows source dataset visibility plus the dataset’s download_allowed flag.
ListDatasetPreparations ListDatasetPreparationsRequest ListDatasetPreparationsResponse Anonymous allowed.
UpdateDatasetPreparationConfig UpdateDatasetPreparationConfigRequest UpdateDatasetPreparationConfigResponse
DeleteDatasetPreparation DeleteDatasetPreparationRequest DeleteDatasetPreparationResponse
GetPreparedItem GetPreparedItemRequest GetPreparedItemResponse Anonymous allowed.
ListPreparedItems ListPreparedItemsRequest ListPreparedItemsResponse Anonymous allowed.
OverridePreparedItemFile OverridePreparedItemFileRequest OverridePreparedItemFileResponse
ResetPreparedItemFile ResetPreparedItemFileRequest ResetPreparedItemFileResponse
UpsertPreparedItemCaption UpsertPreparedItemCaptionRequest UpsertPreparedItemCaptionResponse
DeletePreparedItemCaption DeletePreparedItemCaptionRequest DeletePreparedItemCaptionResponse
ResetPreparedItemCaption ResetPreparedItemCaptionRequest ResetPreparedItemCaptionResponse
SetPreparedItemExcluded SetPreparedItemExcludedRequest SetPreparedItemExcludedResponse
GenerateDatasetItemCaptions GenerateDatasetItemCaptionsRequest GenerateDatasetItemCaptionsResponse
GetDatasetPreparationSnapshot GetDatasetPreparationSnapshotRequest GetDatasetPreparationSnapshotResponse Anonymous allowed.
ListDatasetPreparationSnapshots ListDatasetPreparationSnapshotsRequest ListDatasetPreparationSnapshotsResponse Anonymous allowed.
ListDatasetPreparationSnapshotItems ListDatasetPreparationSnapshotItemsRequest ListDatasetPreparationSnapshotItemsResponse Anonymous allowed. The trainer’s one-stream read of complete frozen training examples.
GetDatasetPreparationRun GetDatasetPreparationRunRequest GetDatasetPreparationRunResponse
ListDatasetPreparationRuns ListDatasetPreparationRunsRequest ListDatasetPreparationRunsResponse
ListDatasetPreparationRunItems ListDatasetPreparationRunItemsRequest ListDatasetPreparationRunItemsResponse

Each method is called as POST https://api.voplica.com/voplica.api.ai.dataset.DatasetSubjectService/<Method> with its request message as JSON and your API key (Authentication); a method marked Anonymous allowed also answers without one. See the JSON API.

Method Request Response Description
DiscoverDatasetSubjects DiscoverDatasetSubjectsRequest DiscoverDatasetSubjectsResponse Freezes a run + work items and starts ai.dataset_subject_discovery_workflow when work exists (no-work -> run returned already COMPLETED). Dataset owner only.
GetDatasetSubjectDiscoveryRun GetDatasetSubjectDiscoveryRunRequest GetDatasetSubjectDiscoveryRunResponse
ListDatasetSubjectDiscoveryRuns ListDatasetSubjectDiscoveryRunsRequest ListDatasetSubjectDiscoveryRunsResponse
ListDatasetSubjectDiscoveryRunItems ListDatasetSubjectDiscoveryRunItemsRequest ListDatasetSubjectDiscoveryRunItemsResponse Same audience as the run: its owner.
CancelDatasetSubjectDiscovery CancelDatasetSubjectDiscoveryRequest CancelDatasetSubjectDiscoveryResponse
CreateDatasetSubject CreateDatasetSubjectRequest CreateDatasetSubjectResponse
GetDatasetSubject GetDatasetSubjectRequest GetDatasetSubjectResponse Anonymous allowed.
UpdateDatasetSubject UpdateDatasetSubjectRequest UpdateDatasetSubjectResponse
MergeDatasetSubjects MergeDatasetSubjectsRequest MergeDatasetSubjectsResponse
DeleteDatasetSubject DeleteDatasetSubjectRequest DeleteDatasetSubjectResponse
ListDatasetSubjects ListDatasetSubjectsRequest ListDatasetSubjectsResponse Anonymous allowed.
AssignDatasetSubjectInstances AssignDatasetSubjectInstancesRequest AssignDatasetSubjectInstancesResponse
ListDatasetSubjectInstances ListDatasetSubjectInstancesRequest ListDatasetSubjectInstancesResponse Anonymous allowed.
Field Number Type Label Description
dataset_id 1 string
preview_asset_id 2 string
Field Number Type Label Description
created_asset_id 1 string
Field Number Type Label Description
source_asset_groups 1 voplica.types.file.AssetFileVariantGroups
auto_caption_hint 2 string Auto-caption hint stored on the dataset_assets membership row, if any (feeds auto-caption generation; not a training caption).
Field Number Type Label Description
dataset_id 1 string
asset_id 2 string
auto_caption_hint 3 string Optional per-asset hint that feeds AUTO-CAPTION generation (e.g. “John, a 30yo man with brown hair”). It is NOT itself a training caption and does NOT affect the visual source_item_fingerprint or preparation reuse - training captions live in the caption layer (used when auto-generating item captions). Leave empty to attach without a hint.

No fields.

Clones a dataset into the CALLER’S space: memberships + auto_caption_hints, subjects + instances (+ embeddings), preparations + items + captions - all as REFERENCES to the same content-addressed files (no file bytes are copied). Process history (runs, snapshots, training lineage) is NOT cloned. Allowed for the owner, or for any user when the dataset is PUBLIC with download_allowed = true - this is THE modification path for non-owners (the identity/prepared layers of someone else’s dataset are read-only).

Field Number Type Label Description
source_dataset_id 1 string
name 2 string optional Name of the new dataset. Defaults to the source name + “ (copy)“.
Field Number Type Label Description
dataset_id 1 string The new dataset owned by the caller.
workflow_execution_id 2 string optional Populated when the clone runs asynchronously (large datasets); poll the dataset’s metadata for readiness. Empty when the clone completed synchronously.
Field Number Type Label Description
name 1 string
asset_type 2 voplica.types.base.AssetType Asset type of the assets that can be attached to the dataset. Immutable after creation.
description 3 string optional
search_and_use_visibility_type 4 voplica.types.base.VisibilityType If false - only the owner can see or use the dataset. If true - anyone can use the dataset to train their models. The dataset is searchable and exposes basic info and previews. Files can only be downloaded when download_allowed is true.
download_allowed 5 bool If true anyone who can use the dataset will also be able to download dataset files. If false nobody (except the owner) can download dataset files.
revenue_share 6 bool When enabled, the dataset becomes eligible for revenue sharing. The owner earns part of the commission Voplica earns from model trainings that used the dataset. Trainers are charged the same regardless of revenue-share status.
best_for_category 7 voplica.types.ai.common.SubjectCategory
mpa_rating 8 voplica.types.base.MPARating
based_on_likeness_category 9 voplica.types.base.LikenessCategory Required when the dataset contains a likeness of a real person or copyright-protected content.
likeness_granted_permission_verification 10 voplica.types.base.LikenessGrantedPermissionVerification
Field Number Type Label Description
dataset_id 1 string
Field Number Type Label Description
source_asset_retriever 1 voplica.types.file.FilesRetriever optional
Field Number Type Label Description
default_preview_retriever 1 voplica.types.file.FilesRetriever optional If provided, returns the file variant groups for the dataset’s default preview asset.
Field Number Type Label Description
dataset_id 1 string
preview_asset_id 2 string

No fields.

Field Number Type Label Description
dataset_id 1 string

No fields.

Field Number Type Label Description
dataset_id 1 string
asset_id 2 string

No fields.

Field Number Type Label Description
dataset_id 1 string
asset_ids 2 string repeated Up to 100 asset ids. Ids not part of the dataset are silently dropped from the response. Useful as a membership check.
fields_fetching_options 3 DatasetAssetsFetchingOptions
Field Number Type Label Description
dataset_assets 1 AssetFilesData repeated
Field Number Type Label Description
dataset_id 1 string
Field Number Type Label Description
likeness_disclosure 1 voplica.types.base.LikenessDisclosure
Field Number Type Label Description
dataset_id 1 string
Field Number Type Label Description
dataset_metadata 1 voplica.types.ai.dataset.DatasetMetadata
Field Number Type Label Description
dataset_id 1 string
asset_id_filter 2 string optional Optionally filter by asset id. If unset, all preview assets are returned.
previews_retriever 3 voplica.types.file.FilesRetriever optional
Field Number Type Label Description
all_previews 1 voplica.types.file.AssetFileVariantGroups repeated 0 to 20 preview assets. file_variant_groups are returned only if requested explicitly.
Field Number Type Label Description
dataset_id 1 string
fields_fetching_options 2 DatasetFieldsFetchingOptions
Field Number Type Label Description
dataset 1 voplica.types.ai.dataset.Dataset
Field Number Type Label Description
ids 1 string repeated <=100
Field Number Type Label Description
datasets 1 voplica.types.ai.dataset.Dataset repeated Visibility-filtered: missing/inaccessible ids are silently omitted.
Field Number Type Label Description
dataset_id 1 string
Field Number Type Label Description
filters 1 ListDatasetAssetsFilters optional
limit 2 int64
sort 3 ListDatasetAssetsSorting
fields_fetching_options 4 DatasetAssetsFetchingOptions
cursor 10 string optional
before 11 bool
check_more_available 12 bool
Field Number Type Label Description
assets_with_files 1 AssetFilesData repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional
Field Number Type Label Description
sort_key 1 DatasetAssetSortKey
asc_sort 2 bool
Field Number Type Label Description
owner_id 1 string optional
asset_type 2 voplica.types.base.AssetType optional
visibility 3 voplica.types.base.VisibilityType optional
category 4 voplica.types.ai.common.SubjectCategory optional
mpa_filter 5 MPAFilter optional
download_allowed 6 bool optional
query 7 string optional Case-insensitive dataset NAME substring search (‘%term%’), composed with every other filter above. Server-side guards: blank after trim = no filter; 1 char after trim = INVALID_ARGUMENT (min 2 chars); capped at 100 chars. When set, results are ordered by created_at (keyset) regardless of the requested trending/last-file sort key — mirrors the Voices/Characters query relation semantics.
Field Number Type Label Description
filters 1 ListDatasetsFilters optional
limit 2 int64
sort 3 ListDatasetsSorting
fields_fetching_options 4 DatasetFieldsFetchingOptions
cursor 10 string optional To continue pagination use next_token with before = false to fetch the next page or prev_token with before = true to fetch the previous page.
before 11 bool
check_more_available 12 bool When true, the response indicates whether more items are available (uses limit + 1).
Field Number Type Label Description
datasets 1 voplica.types.ai.dataset.Dataset repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional
Field Number Type Label Description
sort_key 1 DatasetSortKey
asc_sort 2 bool
Field Number Type Label Description
max_mpa_rating 1 voplica.types.base.MPARating oneof filter Return datasets with this mpa rating or below.
nsfw 2 bool oneof filter true means NSFW only (X or XXX). false means SFW only (G/PG/PG_13/R).
Field Number Type Label Description
dataset_id 1 string
asset_id 2 string
auto_caption_hint 3 string New auto-caption hint. Empty clears any existing hint. This only influences future auto-caption generation; it does NOT change the source_item_fingerprint and never invalidates prepared visual artifacts.

No fields.

Field Number Type Label Description
dataset_id 1 string
name 2 string optional
description 3 string optional
visibility 4 voplica.types.base.VisibilityType optional
download_allowed 5 bool optional
revenue_share 6 bool optional
best_for_category 7 voplica.types.ai.common.SubjectCategory optional
default_preview 8 voplica.types.file.AssetSelectionStrategy optional
mpa_rating 9 voplica.types.base.MPARating optional The owner may raise or lower the rating; UNRECOGNIZED is refused; an explicit MPA_RATING_UNSPECIFIED on an already-RATED dataset is refused too (a no-op on an unrated one).
Field Number Type Label Description
dataset 1 voplica.types.ai.dataset.Dataset
Field Number Type Label Description
run_id 1 string
Field Number Type Label Description
job_status 1 voplica.types.base.JobStatus Will typically be CANCELLING immediately, transitioning to CANCELLED once the worker acknowledges the cancellation. A run whose engine execution is already gone (a zombie) is marked CANCELLED directly.

Starts a synthetic dataset generation run. Restricted to the dataset owner (an existing dataset_id must be owned by the caller AND be an IMAGE_ASSET dataset) and to a character the caller may use.

Field Number Type Label Description
dataset_id 1 string oneof target An EXISTING dataset. Must be owned by the caller and be of type IMAGE_ASSET.
inline_new_dataset 2 NewDatasetSpec oneof target Create a new IMAGE_ASSET dataset owned by the caller and generate into it. The created dataset id is returned on the run (DatasetGenerationRun.dataset_id).
character_id 3 string The character every shot is identity-conditioned on.
look_ids 4 string repeated
params 5 voplica.types.ai.dataset.DatasetGenerationParams Run tuning. NOTE params.refine DEFAULTS TO TRUE when absent - see voplica.types.ai.dataset.DatasetGenerationParams.refine; it must be read presence-aware.
privacy_mode 6 voplica.types.workflow.WorkflowPrivacyMode
Field Number Type Label Description
run 1 voplica.types.ai.dataset.DatasetGenerationRun The persisted run, already PENDING (or FAILED when the workflow trigger itself failed). Its dataset_id is the created dataset for the inline-new-dataset path, and its root_workflow_execution_id is the execution the user is billed for.
Field Number Type Label Description
run_id 1 string
Field Number Type Label Description
run 1 voplica.types.ai.dataset.DatasetGenerationRun
Field Number Type Label Description
dataset_id 1 string Runs of ONE dataset - the Dataset page’s generation surface.
limit 2 int64 Max amount of elements per page
cursor 10 string optional to continue pagination use next_token with before = false to fetch the next page or prev_token with before = true to fetch the previous page.
before 11 bool Used only with cursor. If false it means fetch data after cursor. If true it means fetch data before cursor.
check_more_available 12 bool Check limit + 1 to know if there is more data available. By default it is false. Meaning that more_available flag won’t be returned.
Field Number Type Label Description
runs 1 voplica.types.ai.dataset.DatasetGenerationRun repeated Ordered by created_at (newest first).
next_token 2 string optional Token to pass in the next query’s Pagination directive to go to the next page It will be missing if this request didn’t return any data (i.e. no more data available)
prev_token 3 string optional Token to pass in the next query’s Pagination directive to go to the previous page It will be missing if this request didn’t return any data (i.e. no more data available)
more_available 4 bool optional Returns if there is more data available (i.e. checks limit + 1). Returned only if check_more_available is set to true

Inline spec for creating the target dataset as part of GenerateDatasetImages - the “generate into a NEW dataset” path of the dialog, so the user does not have to create an empty dataset first.

Deliberately BOUNDED and deliberately PARTIAL: - asset_type is NOT a field. It is forced to IMAGE_ASSET; a generation run can only ever write images, and the same rule is validated for an existing dataset_id.

  • the likeness fields (based_on_likeness_category, likeness_granted_permission_verification) are NOT here. A caller that must declare a real-person likeness calls DatasetService.CreateDataset first and passes the resulting dataset_id on the target oneof instead. Keeping them off the inline path means the inline path can never under-declare them by omission. - revenue_share (CreateDatasetRequest field 6) is NOT here either, and for the same shape of reason: it is a MONETARY opt-in, and defaulting it from an inline convenience path would enrol a dataset in revenue sharing as a side effect of generating images - a commitment the caller never expressed. Omitted means it takes CreateDatasetRequest’s own default (false); a caller who wants revenue sharing creates the dataset explicitly via DatasetService.CreateDataset and passes dataset_id on the target oneof, exactly as with the likeness fields above. Everything else defaults exactly as CreateDatasetRequest does.
Field Number Type Label Description
name 1 string
description 2 string optional
search_and_use_visibility_type 3 voplica.types.base.VisibilityType If false - only the owner can see or use the dataset.
download_allowed 4 bool If true anyone who can use the dataset will also be able to download its files.
mpa_rating 5 voplica.types.base.MPARating
best_for_category 6 voplica.types.ai.common.SubjectCategory Typically CHARACTER_GENERIC / CHARACTER_FACE for a generated character dataset.
Field Number Type Label Description
preparation_run_id 1 string oneof target
root_workflow_execution_id 2 string oneof target Root workflow execution id returned by PrepareDataset (or the combined prepare-and-train parent) - cancels the in-flight run(s) it owns.
Field Number Type Label Description
job_status 1 voplica.types.base.JobStatus Will typically be CANCELLING immediately, transitioning to CANCELLED once the worker acknowledges the cancellation.
Field Number Type Label Description
recipe 1 voplica.types.ai.dataset.DatasetPreparationRecipe Recipe payload. id, owner_id, created_at, and recipe_fingerprint are ignored on the request side - the service assigns them.
Field Number Type Label Description
recipe 1 voplica.types.ai.dataset.DatasetPreparationRecipe
Field Number Type Label Description
source_dataset_id 1 string
recipe_fingerprint 2 string
Field Number Type Label Description
recipe_id 1 string oneof ref Use a persistent recipe by id.
recipe 2 voplica.types.ai.dataset.DatasetPreparationRecipe oneof ref Use an ad-hoc recipe payload. Not persisted as a row in dataset_preparation_recipes, but the full payload is stored on the DatasetPreparation so it remains retrievable later via GetDatasetPreparation(include_full_recipe = true).
Field Number Type Label Description
recipe_id 1 string

No fields.

Field Number Type Label Description
preparation_id 1 string

No fields.

Field Number Type Label Description
item 1 PreparedItemRef
format 2 voplica.types.ai.dataset.DatasetCaptionFormat
Field Number Type Label Description
item 1 voplica.types.ai.dataset.PreparedItem

Triggers ai.dataset_item_captioning_workflow over the preparation’s items (see voplica/types/ai/dataset/dataset_item_captioning_workflow.proto). Formats default to the preparation’s captioning.formats when empty.

Field Number Type Label Description
preparation_id 1 string
formats 2 voplica.types.ai.dataset.DatasetCaptionFormat repeated
scope 3 voplica.types.ai.dataset.DatasetItemCaptioningScope
generation_config 4 voplica.types.ai.dataset.DatasetCaptionGenerationConfig optional Overrides the preparation’s captioning.generation_config for this trigger when set.
idempotency_key 5 string optional Optional idempotency key. Duplicate calls with the same key return the existing execution.
privacy_mode 6 voplica.types.workflow.WorkflowPrivacyMode
Field Number Type Label Description
workflow_execution_id 1 string
estimated_items_count 2 uint64
Field Number Type Label Description
recipe_id 1 string oneof selector
recipe_fingerprint 2 string oneof selector
Field Number Type Label Description
recipe 1 voplica.types.ai.dataset.DatasetPreparationRecipe
Field Number Type Label Description
preparation_id 1 string oneof selector
by_recipe 2 DatasetPreparationByRecipe oneof selector
include_full_recipe 3 bool When true and the preparation was created from an AD-HOC recipe, populates DatasetPreparation.embedded_recipe with the persisted recipe payload.
Field Number Type Label Description
preparation 1 voplica.types.ai.dataset.DatasetPreparation
Field Number Type Label Description
preparation_run_id 1 string oneof selector
workflow_execution_id 2 string oneof selector Inner workflow execution id (the one stored in DatasetPreparationRun.workflow_execution_id). Returns nothing for runs whose inner execution has not been launched yet.
root_workflow_execution_id 3 string oneof selector Root workflow execution id (the one returned to the caller by PrepareDataset or by StartModelTrainingJob for combined runs). Use this when the caller only has the user-facing execution id.
Field Number Type Label Description
run 1 voplica.types.ai.dataset.DatasetPreparationRun
Field Number Type Label Description
preparation_snapshot_id 1 string
fields_fetching_options 2 voplica.types.ai.dataset.DatasetPreparationSnapshotFetchingOptions
Field Number Type Label Description
snapshot 1 voplica.types.ai.dataset.DatasetPreparationSnapshot
Field Number Type Label Description
item 1 PreparedItemRef
fields_fetching_options 2 voplica.types.ai.dataset.PreparedItemFetchingOptions optional
Field Number Type Label Description
item 1 voplica.types.ai.dataset.PreparedItem
Field Number Type Label Description
owner_id 1 string optional
asset_type 2 voplica.types.base.AssetType optional
category 3 voplica.types.ai.common.SubjectCategory optional Matches recipes having AT LEAST ONE target with this category (category is a per-target property; a character recipe typically carries CHARACTER_GENERIC + CHARACTER_FACE).
visibility 4 voplica.types.base.VisibilityType optional
Field Number Type Label Description
filters 1 ListDatasetPreparationRecipesFilters optional
limit 2 int64
cursor 10 string optional
before 11 bool
check_more_available 12 bool
Field Number Type Label Description
recipes 1 voplica.types.ai.dataset.DatasetPreparationRecipe repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional
Field Number Type Label Description
preparation_run_id 1 string
source_asset_ids 2 string repeated
limit 3 int64
cursor 10 string optional
before 11 bool
check_more_available 12 bool
Field Number Type Label Description
items 1 voplica.types.ai.dataset.DatasetPreparationRunItem repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional
Field Number Type Label Description
source_dataset_id 1 string optional
preparation_id 2 string optional
status 3 voplica.types.base.JobStatus optional
owner_id 4 string optional
Field Number Type Label Description
filters 1 ListDatasetPreparationRunsFilters optional
limit 2 int64
cursor 10 string optional
before 11 bool
check_more_available 12 bool
Field Number Type Label Description
runs 1 voplica.types.ai.dataset.DatasetPreparationRun repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional

ListDatasetPreparationSnapshotItemsFilters

Section titled “ListDatasetPreparationSnapshotItemsFilters”
Field Number Type Label Description
source_asset_ids 1 string repeated
subject_ids 2 string repeated
target_keys 3 string repeated
categories 4 voplica.types.ai.common.SubjectCategory repeated
caption_format_present 5 voplica.types.ai.dataset.DatasetCaptionFormat optional Only items carrying a caption of this format.

ListDatasetPreparationSnapshotItemsRequest

Section titled “ListDatasetPreparationSnapshotItemsRequest”

The trainer’s one-stream read: each row is a complete frozen training example (sample file [, mask/alpha], captions per format).

Field Number Type Label Description
preparation_snapshot_id 1 string
filters 2 ListDatasetPreparationSnapshotItemsFilters optional
fields_fetching_options 3 voplica.types.ai.dataset.PreparedItemFetchingOptions optional
limit 4 int64
cursor 10 string optional
before 11 bool
check_more_available 12 bool

ListDatasetPreparationSnapshotItemsResponse

Section titled “ListDatasetPreparationSnapshotItemsResponse”
Field Number Type Label Description
items 1 voplica.types.ai.dataset.DatasetPreparationSnapshotItem repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional
Field Number Type Label Description
source_dataset_id 1 string optional
preparation_id 2 string optional
recipe_fingerprint 3 string optional
owner_id 4 string optional
Field Number Type Label Description
filters 1 ListDatasetPreparationSnapshotsFilters optional
limit 2 int64
cursor 10 string optional
before 11 bool
check_more_available 12 bool
Field Number Type Label Description
snapshots 1 voplica.types.ai.dataset.DatasetPreparationSnapshot repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional
Field Number Type Label Description
source_dataset_id 1 string optional
recipe_fingerprint 2 string optional
owner_id 3 string optional
limit 4 int64
cursor 10 string optional
before 11 bool
check_more_available 12 bool
Field Number Type Label Description
preparations 1 voplica.types.ai.dataset.DatasetPreparation repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional
Field Number Type Label Description
source_asset_ids 1 string repeated
subject_ids 2 string repeated
subject_instance_ids 3 string repeated
target_keys 4 string repeated
categories 5 voplica.types.ai.common.SubjectCategory repeated
excluded 6 bool optional Unset = non-excluded only (the training-ready view). true = excluded only. false = all.
missing_caption_formats 7 voplica.types.ai.dataset.DatasetCaptionFormat repeated Items missing a caption in ANY of these formats (captioning work list). Multiple formats = one paging pass for a multi-format captioning job (OR semantics; the item’s missing formats are visible on the item itself).
missing_file_kind 8 voplica.types.ai.dataset.PreparedFileKind optional Items missing a file of this kind (visual work list).
Field Number Type Label Description
preparation_id 1 string
filters 2 ListPreparedItemsFilters optional
fields_fetching_options 3 voplica.types.ai.dataset.PreparedItemFetchingOptions optional
limit 4 int64
cursor 10 string optional
before 11 bool
check_more_available 12 bool
Field Number Type Label Description
items 1 voplica.types.ai.dataset.PreparedItem repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional

Replaces (or creates) ONE file of an item with a user-uploaded file (own crop, tweaked mask). FIND-OR-CREATE on the natural key: provenance USER_EDITED when replacing an auto-generated file, USER_AUTHORED when the slot (or the whole item) did not exist. Bumps the preparation version; snapshots that froze the previous file are unaffected. Auto-preparation and re-runs never overwrite USER_* files.

Field Number Type Label Description
item 1 PreparedItemRef
kind 2 voplica.types.ai.dataset.PreparedFileKind
file 3 voplica.types.file.FileInfo
Field Number Type Label Description
item 1 voplica.types.ai.dataset.PreparedItem
Field Number Type Label Description
source_dataset_id 1 string
recipe_ref 2 DatasetPreparationRecipeRef
reuse_policy 3 voplica.types.ai.dataset.DatasetPreparationReusePolicy
source_asset_ids 4 string repeated Optional subset. Empty means all source assets currently attached to the dataset.
subject_scope 5 voplica.types.ai.dataset.DatasetPreparationSubjectScope optional Optional config overrides to plan against (defaults: the existing preparation’s config, or empty scope/captioning when no preparation exists yet). Lets the caller preview the cost of a scope/captioning change before applying it.
captioning 6 voplica.types.ai.dataset.DatasetPreparationCaptioningConfig optional
Field Number Type Label Description
plan 1 voplica.types.ai.dataset.DatasetPreparationPlan
source_snapshot 2 voplica.types.ai.dataset.DatasetPreparationSourceSnapshot The frozen source snapshot the plan was built from. Provided so callers can detect dataset drift between plan and subsequent PrepareDataset calls by comparing the source_snapshot_fingerprint.
Field Number Type Label Description
source_dataset_id 1 string
recipe_ref 2 DatasetPreparationRecipeRef
reuse_policy 3 voplica.types.ai.dataset.DatasetPreparationReusePolicy
source_asset_ids 4 string repeated Optional subset. Empty means all source assets currently attached to the dataset.
idempotency_key 5 string optional Optional client-provided idempotency key. If a run with the same idempotency key already exists for the dataset, the existing run is returned without starting a new workflow.
expected_source_snapshot_fingerprint 6 string optional Optional “if-match” guard. When set, PrepareDataset fails with FAILED_PRECONDITION if the current source dataset snapshot does not match this fingerprint. Use the source_snapshot.source_snapshot_fingerprint returned by PlanDatasetPreparation to guarantee the run uses the inputs the user reviewed.
subject_scope 7 voplica.types.ai.dataset.DatasetPreparationSubjectScope optional
captioning 8 voplica.types.ai.dataset.DatasetPreparationCaptioningConfig optional
preparation_name 9 string optional Optional display name applied to the found-or-created preparation when it does not have a name yet (an existing non-empty name is never overwritten by this request - rename explicitly via UpdateDatasetPreparationConfig). Display-only, never fingerprinted.
privacy_mode 10 voplica.types.workflow.WorkflowPrivacyMode
Field Number Type Label Description
preparation_run_id 1 string Run row created for this preparation (always created; it records the frozen inputs and the plan even when no work was needed). When the plan required no work the run is returned already COMPLETED and no workflow is started.
preparation_id 2 string The mutable preparation this run writes into (find-or-created for (source_dataset_id, recipe_fingerprint)).
workflow_execution_id 3 string optional Workflow execution started for the run. Empty when no work was needed.
plan 4 voplica.types.ai.dataset.DatasetPreparationPlan

Natural key of an item slot. Used by curation RPCs with FIND-OR-CREATE semantics so a user can supply their OWN crop/mask/caption for a slot no worker ever filled.

Field Number Type Label Description
preparation_id 1 string
source_asset_id 2 string
subject_instance_id 3 string optional Empty for WHOLE_IMAGE targets.
target_key 4 string

Selects an existing item by id, or an item SLOT by natural key (which may not exist yet - creating RPCs will find-or-create it; read RPCs return NOT_FOUND).

Field Number Type Label Description
prepared_item_id 1 string oneof ref
natural_key 2 PreparedItemNaturalKey oneof ref

Reverts one caption to AUTO_GENERATED (regenerating via the captioning worker if needed).

Field Number Type Label Description
item 1 PreparedItemRef
format 2 voplica.types.ai.dataset.DatasetCaptionFormat
Field Number Type Label Description
item 1 voplica.types.ai.dataset.PreparedItem

Reverts one USER_* file back to the auto-generated one (re-preparing if needed) and bumps the preparation version.

Field Number Type Label Description
item 1 PreparedItemRef
kind 2 voplica.types.ai.dataset.PreparedFileKind
Field Number Type Label Description
item 1 voplica.types.ai.dataset.PreparedItem

Curation: excluded items are omitted from future snapshots (and therefore from training). Bumps the preparation version.

Field Number Type Label Description
item 1 PreparedItemRef
excluded 2 bool
reason 3 string optional
Field Number Type Label Description
item 1 voplica.types.ai.dataset.PreparedItem

Updates the preparation’s MUTABLE, dataset-local configuration. Does NOT bump version (config changes alter future planned work, not frozen content) and does not start any workflow - follow with PlanDatasetPreparation/PrepareDataset.

Field Number Type Label Description
preparation_id 1 string
subject_scope 2 voplica.types.ai.dataset.DatasetPreparationSubjectScope optional
captioning 3 voplica.types.ai.dataset.DatasetPreparationCaptioningConfig optional
name 4 string optional Display name (rename). Absent = unchanged; empty string = clear the name. Display-only: never contributes to fingerprints or preparation reuse.
Field Number Type Label Description
preparation 1 voplica.types.ai.dataset.DatasetPreparation
Field Number Type Label Description
recipe_id 1 string
name 2 string optional Only display fields are mutable. Behavior-affecting fields require creating a new recipe (which yields a new recipe_fingerprint).
description 3 string optional
visibility 4 voplica.types.base.VisibilityType optional
Field Number Type Label Description
recipe 1 voplica.types.ai.dataset.DatasetPreparationRecipe

Creates or replaces ONE caption (per format) of an item. FIND-OR-CREATE on the natural key (an item slot with a user caption but no files yet is valid - files can arrive later). Provenance USER_AUTHORED for a new caption, USER_EDITED when overwriting an auto-generated one. Bumps the preparation version. The text must NOT contain trigger words.

Field Number Type Label Description
item 1 PreparedItemRef
format 2 voplica.types.ai.dataset.DatasetCaptionFormat
text 3 string
Field Number Type Label Description
item 1 voplica.types.ai.dataset.PreparedItem

Batch curation. Side effect: every DatasetPreparation of the dataset holding items that reference a touched instance gets those items’ denormalized subject_id updated and its version bumped (subject labels are frozen snapshot content).

Field Number Type Label Description
source_dataset_id 1 string
assignments 2 DatasetSubjectInstanceAssignment repeated
Field Number Type Label Description
updated_count 1 uint32
Field Number Type Label Description
discovery_run_id 1 string oneof target
root_workflow_execution_id 2 string oneof target
Field Number Type Label Description
job_status 1 voplica.types.base.JobStatus
Field Number Type Label Description
source_dataset_id 1 string
name 2 string
description 3 string optional
category 4 voplica.types.ai.common.SubjectCategory Localizable categories only (CHARACTER_GENERIC, OBJECT, VEHICLE, CLOTHES, …).
references 5 voplica.types.ai.dataset.DatasetSubjectReference repeated Optional exemplars: a face photo pins WHICH person is the character; an object image (+ description) is the defining input for reference-guided object detection.
Field Number Type Label Description
subject 1 voplica.types.ai.dataset.DatasetSubject
Field Number Type Label Description
previews_retriever 1 voplica.types.file.FilesRetriever optional Hydrate short_preview.default_preview (the subject avatar Asset variants) for the curation UI. When unset the subject is returned without a hydrated preview (id/source only).
Field Number Type Label Description
subject_instance_id 1 string
subject_id 2 string oneof to Assign to this identity (state becomes USER_ASSIGNED).
unassign 3 bool oneof to Detach from any identity (state becomes UNASSIGNED).
reject 4 bool oneof to Mark as not-a-subject (reflection, poster, false positive; state USER_REJECTED).
Field Number Type Label Description
preview_files_retriever 1 voplica.types.file.FilesRetriever optional Hydrate preview_file variants for the curation UI.

Deletes the identity. Member instances become UNASSIGNED. Frozen preparation snapshots keep their denormalized subject ids (lineage); live PER_SUBJECT filtering simply matches nothing.

Field Number Type Label Description
subject_id 1 string

No fields.

Field Number Type Label Description
source_dataset_id 1 string
policy 2 voplica.types.ai.dataset.DatasetSubjectDiscoveryPolicy
source_asset_ids 3 string repeated Optional subset. Empty means all source assets currently attached to the dataset.
idempotency_key 4 string optional Optional client-provided idempotency key: a replay with the same key returns the existing run without starting a new workflow.
expected_source_snapshot_fingerprint 5 string optional Optional “if-match” drift guard (FAILED_PRECONDITION on mismatch), same semantics as PrepareDatasetRequest.expected_source_snapshot_fingerprint.
privacy_mode 6 voplica.types.workflow.WorkflowPrivacyMode
Field Number Type Label Description
discovery_run_id 1 string Always created (records the frozen inputs even when no work was needed - the run is then returned already COMPLETED and no workflow is started).
workflow_execution_id 2 string optional
Field Number Type Label Description
discovery_run_id 1 string oneof selector
workflow_execution_id 2 string oneof selector
root_workflow_execution_id 3 string oneof selector
Field Number Type Label Description
run 1 voplica.types.ai.dataset.DatasetSubjectDiscoveryRun
Field Number Type Label Description
subject_id 1 string
fields_fetching_options 2 DatasetSubjectFetchingOptions optional
Field Number Type Label Description
subject 1 voplica.types.ai.dataset.DatasetSubject

ListDatasetSubjectDiscoveryRunItemsRequest

Section titled “ListDatasetSubjectDiscoveryRunItemsRequest”
Field Number Type Label Description
discovery_run_id 1 string
source_asset_ids 2 string repeated
limit 3 int64
cursor 10 string optional
before 11 bool
check_more_available 12 bool

ListDatasetSubjectDiscoveryRunItemsResponse

Section titled “ListDatasetSubjectDiscoveryRunItemsResponse”
Field Number Type Label Description
items 1 voplica.types.ai.dataset.DatasetSubjectDiscoveryRunItem repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional
Field Number Type Label Description
source_dataset_id 1 string
status 2 voplica.types.base.JobStatus optional
limit 3 int64
cursor 10 string optional
before 11 bool
check_more_available 12 bool
Field Number Type Label Description
runs 1 voplica.types.ai.dataset.DatasetSubjectDiscoveryRun repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional
Field Number Type Label Description
subject_id 1 string optional
unassigned_only 2 bool optional
include_rejected 3 bool optional
source_asset_ids 4 string repeated
min_quality 5 float optional
Field Number Type Label Description
source_dataset_id 1 string
filters 2 ListDatasetSubjectInstancesFilters optional
fields_fetching_options 3 DatasetSubjectInstanceFetchingOptions optional
limit 4 int64
cursor 10 string optional
before 11 bool
check_more_available 12 bool
Field Number Type Label Description
instances 1 voplica.types.ai.dataset.DatasetSubjectInstance repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional
Field Number Type Label Description
source_dataset_id 1 string
limit 2 int64
fields_fetching_options 3 DatasetSubjectFetchingOptions optional
cursor 10 string optional
before 11 bool
check_more_available 12 bool
Field Number Type Label Description
subjects 1 voplica.types.ai.dataset.DatasetSubject repeated
next_token 2 string optional
prev_token 3 string optional
more_available 4 bool optional

Merges duplicate identities (e.g. clustering split one person into two clusters). All instances of from_subject_ids become AUTO_ASSIGNED members of into_subject_id (USER_ASSIGNED stay USER_ASSIGNED); the source subjects are deleted; the target centroid is recomputed.

Field Number Type Label Description
source_dataset_id 1 string
from_subject_ids 2 string repeated
into_subject_id 3 string
Field Number Type Label Description
subject 1 voplica.types.ai.dataset.DatasetSubject
Field Number Type Label Description
subject_id 1 string
name 2 string optional
description 3 string optional
references 5 voplica.types.ai.dataset.DatasetSubjectReference repeated Full replacement when set (repeated fields cannot be optional; absent = keep).
replace_references 6 bool
preview_instance_id 7 string oneof preview_source
preview_reference_id 8 string oneof preview_source
Field Number Type Label Description
subject 1 voplica.types.ai.dataset.DatasetSubject
Name Number Description
DATASET_ASSET_SORT_KEY_UNSPECIFIED 0
ADDED_AT 1
Name Number Description
DATASET_SORT_KEY_UNSPECIFIED 0
CREATED_AT 1
LAST_FILE_ADDED_AT 2
TRENDING_SCORE 3