Assets
Assets are the main way to register inputs, outputs, documents, models, and other tracked objects in the SDK.
Built-In Asset Types
The SDK includes these built-in asset categories:
AgentBenchmarkBenchmarkResultBinaryCertificateCodeConfigurationCredentialCustomDatabaseDatasetDocumentGuardrailMediaModelPromptReasoningSkillSystemPromptTokenTool
These types all follow the same construction pattern.
Binary is intended for compiled binary programs and similar executable artifacts that you want
to register as part of a lineage graph.
Constructors
Most built-in asset types support these constructors:
.from_object(...).from_path(...).from_cid(...).with_context(ctx).from_object(...).with_context(ctx).from_path(...).with_context(ctx).from_cid(...)
Conceptually:
from_object(...): hash and register an in-memory Python objectfrom_path(...): hash and register a file or directory on diskfrom_cid(...): create an asset wrapper around an existing CIDwith_context(...): do the same thing, but attach it to a specific context
Custom
Use Custom when none of the built-in asset categories fit your domain object.
You can use the default custom type:
from eqty_sdk import Custom
asset = Custom.from_object({"kind": "prompt-template"}, name="Prompt Template")
Or provide your own asset type label:
from eqty_sdk import Custom
asset = Custom.from_object(
{"kind": "feature-store-table"},
asset_type="FeatureStoreTable",
name="Customer Features",
)
The same pattern works with from_path(...) and from_cid(...).
Metadata Via **kwargs
Any extra keyword arguments passed to an asset constructor are stored as metadata on that asset.
Common examples include:
namedescription- domain-specific fields like
owner,source,version, orinput
from eqty_sdk import Dataset
dataset = Dataset.from_object(
[1, 2, 3],
name="Training Rows",
description="Rows used for the baseline experiment",
owner="ml-team",
version="2026-03-20",
)
Those values are included in the metadata statement the SDK creates for the asset.
Serialization Notes
For from_object(...), the SDK hashes a serialized representation of the object.
Built-in support includes:
- strings
- numbers
- lists
- dicts
- filesystem paths
- objects with
serialize_for_hashing() - compute inputs with
to_eqty_asset()
If you have a complex type that should not be hashed directly, either:
- implement
serialize_for_hashing()for stable hashing, or - implement
to_eqty_asset()and map the object to a more appropriate asset source
Agent
Agent(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents an AI Agent.
Asset
Asset(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
name
property
name: str
Get the name of the asset.
cid
property
cid: CID
Get the CID of the asset.
asset_type
property
asset_type: str
Get the type of the asset.
value
property
value: Any
Get the underlying value.
_create_eqty_statements
_create_eqty_statements() -> None
Creates DataStatement, MetadataStatement, and VcStatement.
Benchmark
Benchmark(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a benchmark asset.
BenchmarkResult
BenchmarkResult(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a benchmark result asset.
Binary
Binary(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a compiled binary program asset.
Certificate
Certificate(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a certificate asset.
Code
Code(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a code asset.
Configuration
Configuration(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a configuration asset.
Credential
Credential(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a credential asset.
Custom
Custom(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Database
Database(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a database asset.
Dataset
Dataset(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a dataset asset.
Document
Document(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a document asset.
Guardrail
Guardrail(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a guardrail asset.
Media
Media(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a media asset.
Model
Model(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a model asset.
Prompt
Prompt(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a Prompt asset.
Reasoning
Reasoning(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a reasoning asset.
Skill
Skill(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a skill asset.
SystemPrompt
SystemPrompt(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a System Prompt asset.
Token
Token(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a token asset.
Tool
Tool(
obj: Any,
asset_type: Union[AssetType, str],
cid: CID,
is_dir: bool,
custom_ctx: Optional[Context],
**kwargs
)
Bases: TypedAsset
Represents a tool asset.