deeporigin.drug_discovery.execution¶
Base class for jobs-centric execution objects (Docking, ABFE, etc.).
Base class for the jobs-centric API.
Provides Execution -- a base class with read-only @property descriptors
for system-managed fields and lifecycle state management. Subclasses also
expose immutable input fields as read-only properties and compose with mixins
(QuoteMixin, SyncExecutableMixin, AsyncExecutableMixin) to build
concrete execution types like PocketFinder, Docking, and ABFE.
Attributes¶
Classes¶
Execution
¶
Base class for all execution types in the jobs-centric API.
System-managed fields estimate and cost are exposed as read-only
properties. Platform execution id is defined on
:class:~deeporigin.drug_discovery.execution_mixins.QuoteMixin (typical job
classes include that mixin). Subclasses should use the same @property
pattern for user-supplied input
fields that must not change after construction.
Attributes:
| Name | Type | Description |
|---|---|---|
estimate |
float | None
|
Cost estimate in dollars, set by |
cost |
float | None
|
Actual cost in dollars, set after execution completes. |
name |
str | None
|
Optional user label; writable until execution |
tool_key |
str
|
Platform tool key identifying this execution type. |
tool_version |
str
|
Version of the tool to use. |
Attributes¶
cost
property
¶
cost: float | None
Actual cost in dollars, set after execution completes.
This property cannot be set manually.
estimate
property
¶
estimate: float | None
Cost estimate in dollars, set by quote(). None until quote() is called.
This property cannot be set manually.
name
property
writable
¶
name: str | None
Optional user-defined label for this execution.
May be set or changed only while id is unset. After an execution
ID exists, name is read-only.
Functions¶
duplicate
¶
duplicate(
*, client: DeepOriginClient | None = None
) -> Self
Create a fresh copy with the same configuration but no execution state.
Useful after from_id() to re-run the same calculation. The
returned instance has no id, status, estimate, or
cost — it is ready for quote() / start().
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
client
|
DeepOriginClient | None
|
Optional API client for the new instance. Falls back to the current instance's client. |
None
|
Returns:
| Type | Description |
|---|---|
Self
|
A new instance sharing the same domain-specific configuration. |
get_results
¶
get_results(**kwargs: Any) -> Any
Fetch results for this execution from the data platform.
Thin wrapper around :meth:deeporigin.platform.results.Results.get
scoped to this execution's compute_job_id. Subclasses that need
result-type-specific filtering (e.g. poses, prepared systems) should
override this method and call the appropriate Results wrapper
directly rather than teaching this base method about those filters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
**kwargs
|
Any
|
Forwarded verbatim to
:meth: |
{}
|
Returns:
| Type | Description |
|---|---|
Any
|
Result-explorer response dict with |
Raises:
| Type | Description |
|---|---|
ValueError
|
If the execution has no ID yet. |
get_user_logs
¶
get_user_logs(
*,
limit: int | None = None,
offset: int | None = None,
select: list[str] | None = None,
with_total_count: bool = False
) -> dict[str, Any] | None
Search data-platform user_logs rows for this execution.
Uses :meth:deeporigin.platform.user_logs.UserLogs.search with
compute_job_id set to this execution's platform id (same identifier
passed to :meth:get_results as compute_job_id).
When no execution id is assigned yet, returns None without calling
the API.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
limit
|
int | None
|
Max rows to return (forwarded to |
None
|
offset
|
int | None
|
Skip offset (forwarded). |
None
|
select
|
list[str] | None
|
Columns to select (forwarded). |
None
|
with_total_count
|
bool
|
Request total count from the server (forwarded). |
False
|
Returns:
| Type | Description |
|---|---|
dict[str, Any] | None
|
The search response dict (typically |
dict[str, Any] | None
|
|