adaptive_sdk.input_types

class AdaptRequestConfigInput(typing.TypedDict):
output_name: typing_extensions.Required[str]
training_config: typing_extensions.Required[TrainingConfigInput]
sample_config: typing_extensions.NotRequired[SampleConfigInput]
class BaseTrainingParamsInput(typing.TypedDict):
learning_rate: typing_extensions.Required[float]
num_epochs: typing_extensions.Required[int]
batch_size: typing_extensions.Required[int]
num_validations: typing_extensions.Required[int]
class ChatMessage(typing.TypedDict):
role: typing_extensions.Required[typing.Literal['system', 'user', 'assistant']]
content: typing_extensions.Required[str]
class ComparisonCompletion(typing.TypedDict):
text: typing_extensions.Required[str]
model: typing_extensions.Required[str]
class CompletionComparisonFilterInput(typing.TypedDict):

Filter for completion preference feedbacks.

Arguments:
  • metric: Feedback key logged against.
metric: typing_extensions.Required[str]
class CompletionFeedbackFilterInput(typing.TypedDict):

Filter for completion metric feedbacks.

Arguments:
  • metric: Feedback key logged against.
  • gt: >
  • gte: >=
  • eq: ==
  • neq: !=
  • lt: <
  • lte: <=
  • user: Feedbacks logged by user id.
metric: typing_extensions.Required[str]
gt: typing_extensions.NotRequired[float]
gte: typing_extensions.NotRequired[float]
eq: typing_extensions.NotRequired[float]
neq: typing_extensions.NotRequired[float]
lt: typing_extensions.NotRequired[float]
lte: typing_extensions.NotRequired[float]
reasons: typing_extensions.NotRequired[typing.List[str]]
user: typing_extensions.NotRequired[typing.Any]
class CompletionLabelFilter(typing.TypedDict):

Filter for completion labels.

key: typing_extensions.Required[str]
value: typing_extensions.NotRequired[typing.List[str]]
CompletionSource = typing.Literal['LIVE', 'OFFLINE', 'AUTOMATION', 'DATASET']
class CursorPageInput(typing.TypedDict):

Paging config.

Arguments:
  • first: Retrieve first n items starting from the after cursor.
  • last: Retrieve last n items starting from the after cursor, limited to before cursor.
  • after: Start cursor.
  • before: End cursor.
first: typing_extensions.NotRequired[int]
after: typing_extensions.NotRequired[str]
before: typing_extensions.NotRequired[str]
last: typing_extensions.NotRequired[int]
class CustomRecipe(typing.TypedDict):
guidelines: typing_extensions.Required[typing.List[GuidelineInput]]
feedback_key: typing_extensions.Required[str]
class DpotrainingParamsInput(typing.TypedDict):
kl_div_coeff: typing_extensions.Required[float]
class EvaluationDatasourceCompletions(typing.TypedDict):
Arguments:
  • replay_interactions: If False, logged completions are evaluated. If True, prompts are replayed, and new completions are evaluated.
filter: typing_extensions.Required[ListCompletionsFilterInput]
replay_interactions: bool
class GuidelineInput(typing.TypedDict):
name: typing_extensions.Required[str]
description: typing_extensions.Required[str]
class GuidelinesTrainingParamsInput(typing.TypedDict):
judge_model: typing_extensions.Required[str]
judge_model_prompt: typing_extensions.Required[typing.List[GuidelineInput]]
class GrpotrainingParamsInput(typing.TypedDict):
kl_div_coeff: typing_extensions.Required[float]
steps: typing_extensions.Required[int]
class ListCompletionsFilterInput(typing.TypedDict):

Filter for listing interactions.

Arguments:
  • models: Model keys.
  • timerange: A timerange in timestamp format.
  • user_id: User ID that created interaction.
  • feedbacks: TypedDict for metric feedback filtering.
  • comparisons: TypedDict for preference feedback filtering.
  • labels: TypedDict for completion labels filtering.
  • completion_id: Completion id.
  • source: Interaction source filter.
models: typing_extensions.NotRequired[typing.List[str]]
timerange: typing_extensions.NotRequired[TimeRange]
session_id: typing_extensions.NotRequired[typing.Any]
user_id: typing_extensions.NotRequired[typing.Any]
feedbacks: typing_extensions.NotRequired[typing.List[CompletionFeedbackFilterInput]]
comparisons: typing_extensions.NotRequired[typing.List[CompletionComparisonFilterInput]]
labels: typing_extensions.NotRequired[typing.List[CompletionLabelFilter]]
prompt_hash: typing_extensions.NotRequired[str]
completion_id: typing_extensions.NotRequired[typing.Any]
tags: typing_extensions.NotRequired[typing.List[str]]
source: typing_extensions.NotRequired[typing.List[typing.Literal['LIVE', 'OFFLINE', 'AUTOMATION', 'DATASET']]]
class InteractionFeedbackDict(typing.TypedDict):

Interaction feedback.

Arguments:
  • feedback_key: Feedback key to register feedback against.
  • value: Metric feedback value.
  • details: Optional feedback text details.
feedback_key: typing_extensions.Required[str]
value: typing_extensions.Required[int | float | bool]
details: typing_extensions.NotRequired[str]
class MetricTrainingParamsInput(typing.TypedDict):
metric_key: typing_extensions.Required[str]
metric_metadata: typing_extensions.NotRequired[MetricTrainingParamsMetadata]
class MetricTrainingParamsMetadata(typing.TypedDict):
scalar_metric: typing_extensions.NotRequired[ScalarMetricConfigInput]
class ModelComputeConfigInput(typing.TypedDict):
tp: typing_extensions.NotRequired[int]
kv_cache_len: typing_extensions.NotRequired[int]
max_seq_len: typing_extensions.NotRequired[int]
class ModelFilter(typing.TypedDict):
in_storage: typing_extensions.NotRequired[bool]
available: typing_extensions.NotRequired[bool]
trainable: typing_extensions.NotRequired[bool]
kind: typing_extensions.NotRequired[typing.List[typing.Literal['Embedding', 'Generation']]]
view_all: typing_extensions.NotRequired[bool]
online: typing_extensions.NotRequired[typing.List[typing.Literal['ONLINE', 'OFFLINE', 'PENDING', 'ERROR']]]
class ModelPlacementInput(typing.TypedDict):
compute_pools: typing_extensions.Required[typing.List[str]]
max_ttft_ms: typing_extensions.NotRequired[int]
class PpotrainingParamsInput(typing.TypedDict):
kl_div_coeff: typing_extensions.Required[float]
steps: typing_extensions.Required[int]
class SampleConfigInput(typing.TypedDict):
feedback_type: typing_extensions.NotRequired[typing.Literal['DIRECT', 'PREFERENCE']]
datasource: typing_extensions.Required[SampleDatasourceInput]
class SampleDatasourceInput(typing.TypedDict):
completions: typing_extensions.NotRequired[SampleDatasourceCompletions]
dataset: typing_extensions.NotRequired[SampleDatasourceDataset]
class SampleDatasourceCompletions(typing.TypedDict):
selection_type: typing_extensions.Required[typing.Literal['ALL', 'RANDOM', 'LAST']]
max_samples: typing_extensions.NotRequired[int]
filter: typing_extensions.NotRequired[ListCompletionsFilterInput]
replay_interactions: typing_extensions.NotRequired[bool]
class SampleDatasourceDataset(typing.TypedDict):
dataset: typing_extensions.Required[str]
class ScalarMetricConfigInput(typing.TypedDict):
threshold: typing_extensions.NotRequired[float]
class SftTrainingParamsInput(typing.TypedDict):
class TimeRange(typing.TypedDict):

A timerange filter, in Unix timestamp format (ms).

Arguments:
  • from_: The start timestamp.
  • to: The end timestamp.
from_: typing_extensions.Required[int | str]
to: typing_extensions.Required[int | str]
class TrainingConfigInput(typing.TypedDict):
base_training_params: typing_extensions.NotRequired[BaseTrainingParamsInput]
training_metadata: typing_extensions.NotRequired[TrainingMetadataInput]
training_objective: typing_extensions.Required[TrainingObjectiveInput]
class TrainingMetadataInput(typing.TypedDict):
training_type: typing_extensions.Required[typing.Literal['PARAMETER_EFFICIENT', 'FULL_WEIGHTS']]
alignment_method: typing_extensions.Required[typing.Literal['PPO', 'DPO', 'SFT', 'GRPO']]
parameters: typing_extensions.NotRequired[TrainingMetadataInputParameters]
class TrainingMetadataInputParameters(typing.TypedDict):
dpo: typing_extensions.NotRequired[DpotrainingParamsInput]
ppo: typing_extensions.NotRequired[PpotrainingParamsInput]
grpo: typing_extensions.NotRequired[GrpotrainingParamsInput]
class TrainingObjectiveInput(typing.TypedDict):
metric: typing_extensions.NotRequired[MetricTrainingParamsInput]
guidelines: typing_extensions.NotRequired[GuidelinesTrainingParamsInput]
sft: typing_extensions.NotRequired[SftTrainingParamsInput]
reward_server: typing_extensions.NotRequired[adaptive_sdk.input_types.typed_dicts.RewardServerInput]
class Order(typing.TypedDict):

Ordering of interaction list results.

Arguments:
  • field: On what field to order by.
  • order: Ascending or descending; alphabetical for string fields.
field: typing_extensions.Required[str]
order: typing_extensions.Required[typing.Literal['ASC', 'DESC']]