@toloka-platform/sdk 0.1.0-preview.9 → 0.2.0-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -5
- package/dist/cli/toloka.js +143 -139
- package/dist/cli/toloka.js.jsc +0 -0
- package/dist/cli/toloka.js.jsc.sha256 +1 -1
- package/dist/cli/toloka.js.sha256 +1 -1
- package/docs/authoring.md +9 -4
- package/docs/cli-v2.md +3 -3
- package/docs/cli.md +16 -3
- package/docs/getting-started.md +4 -4
- package/docs/limitations.md +3 -3
- package/docs/testing.md +1 -1
- package/examples/face-image-collection/README.md +1 -1
- package/openapi/gen/api.ts +1482 -777
- package/openapi/gen/models/createDatasetExportBody.ts +5 -3
- package/openapi/gen/models/createDatasetExportBodyFormat.ts +2 -0
- package/openapi/gen/models/createProjectTrainingBody.ts +6 -0
- package/openapi/gen/models/createTrainingRunBody.ts +6 -0
- package/openapi/gen/models/datasetExportReportTokens.ts +4 -1
- package/openapi/gen/models/datasetExportReportTokensEstimatorVersion.ts +2 -0
- package/openapi/gen/models/datasetExportReportTokensTotal.ts +2 -0
- package/openapi/gen/models/estimateTrainingCostBody.ts +5 -0
- package/openapi/gen/models/exportJob.ts +2 -0
- package/openapi/gen/models/exportJobError.ts +3 -0
- package/openapi/gen/models/exportJobErrorAnyOf.ts +7 -0
- package/openapi/gen/models/exportJobErrorAnyOfCode.ts +2 -0
- package/openapi/gen/models/exportJobStatus.ts +1 -1
- package/openapi/gen/models/getTrainingRunLogsParams.ts +5 -0
- package/openapi/gen/models/gistingTrainingConfiguration.ts +13 -0
- package/openapi/gen/models/gistingTrainingConfigurationInput.ts +13 -0
- package/openapi/gen/models/gistingTrainingConfigurationInputRegime.ts +2 -0
- package/openapi/gen/models/gistingTrainingConfigurationRegime.ts +2 -0
- package/openapi/gen/models/index.ts +230 -16
- package/openapi/gen/models/listProjectTrainings200.ts +7 -0
- package/openapi/gen/models/listProjectTrainingsParams.ts +5 -0
- package/openapi/gen/models/listTrainingRuns200.ts +7 -0
- package/openapi/gen/models/listTrainingRunsParams.ts +5 -0
- package/openapi/gen/models/modelVersion.ts +6 -1
- package/openapi/gen/models/modelVersionContent.ts +4 -0
- package/openapi/gen/models/modelVersionContentDownload.ts +11 -0
- package/openapi/gen/models/modelVersionContentDownloadContent.ts +4 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOf.ts +10 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfManifestItem.ts +8 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfManifestItemMediaType.ts +2 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfNine.ts +8 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfNineManifestItem.ts +8 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfNineManifestItemMediaType.ts +2 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfNineRuntimeBase.ts +2 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfParent.ts +4 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfParentOneOf.ts +6 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfParentOneOfBaseModelId.ts +2 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfParentOneOfThree.ts +5 -0
- package/openapi/gen/models/modelVersionContentDownloadContentOneOfRuntimeBase.ts +2 -0
- package/openapi/gen/models/modelVersionContentDownloadFilesItem.ts +9 -0
- package/openapi/gen/models/modelVersionContentDownloadFilesItemMediaType.ts +2 -0
- package/openapi/gen/models/modelVersionContentOneOf.ts +10 -0
- package/openapi/gen/models/modelVersionContentOneOfManifestItem.ts +8 -0
- package/openapi/gen/models/modelVersionContentOneOfManifestItemMediaType.ts +2 -0
- package/openapi/gen/models/modelVersionContentOneOfNine.ts +8 -0
- package/openapi/gen/models/modelVersionContentOneOfNineManifestItem.ts +8 -0
- package/openapi/gen/models/modelVersionContentOneOfNineManifestItemMediaType.ts +2 -0
- package/openapi/gen/models/modelVersionContentOneOfNineRuntimeBase.ts +2 -0
- package/openapi/gen/models/modelVersionContentOneOfParent.ts +4 -0
- package/openapi/gen/models/modelVersionContentOneOfParentOneOf.ts +6 -0
- package/openapi/gen/models/modelVersionContentOneOfParentOneOfBaseModelId.ts +2 -0
- package/openapi/gen/models/modelVersionContentOneOfParentOneOfThree.ts +5 -0
- package/openapi/gen/models/modelVersionContentOneOfRuntimeBase.ts +2 -0
- package/openapi/gen/models/modelVersionProducer.ts +5 -0
- package/openapi/gen/models/prepareTrainingCostEstimateInputsBody.ts +2 -0
- package/openapi/gen/models/replaceTrainingConfigurationBody.ts +5 -0
- package/openapi/gen/models/sftTrainingConfiguration.ts +13 -0
- package/openapi/gen/models/sftTrainingConfigurationInput.ts +13 -0
- package/openapi/gen/models/sftTrainingConfigurationInputRegime.ts +2 -0
- package/openapi/gen/models/sftTrainingConfigurationRegime.ts +2 -0
- package/openapi/gen/models/training.ts +16 -0
- package/openapi/gen/models/trainingArchivedAt.ts +2 -0
- package/openapi/gen/models/trainingConfiguration.ts +4 -0
- package/openapi/gen/models/trainingConfigurationInput.ts +4 -0
- package/openapi/gen/models/trainingCostEstimate.ts +4 -0
- package/openapi/gen/models/trainingCostEstimateInputSet.ts +12 -0
- package/openapi/gen/models/trainingCostEstimateInputSetExports.ts +6 -0
- package/openapi/gen/models/trainingCostEstimateInputSetExportsValidation.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateInputSetId.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOf.ts +16 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputs.ts +7 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsTraining.ts +9 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsTrainingFailure.ts +3 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsTrainingFailureAnyOf.ts +7 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsTrainingFailureAnyOfCode.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsTrainingReport.ts +3 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsTrainingReportAnyOf.ts +9 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsTrainingReportAnyOfErrorsItem.ts +5 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsTrainingReportAnyOfTokens.ts +10 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsTrainingReportAnyOfTokensEstimatorVersion.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsTrainingReportAnyOfTokensTotal.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidation.ts +3 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidationAnyOf.ts +9 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidationAnyOfFailure.ts +3 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidationAnyOfFailureAnyOf.ts +7 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidationAnyOfFailureAnyOfCode.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidationAnyOfReport.ts +3 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidationAnyOfReportAnyOf.ts +9 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidationAnyOfReportAnyOfErrorsItem.ts +5 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidationAnyOfReportAnyOfTokens.ts +10 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidationAnyOfReportAnyOfTokensEstimatorVersion.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfInputsValidationAnyOfReportAnyOfTokensTotal.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfIssuesItem.ts +8 -0
- package/openapi/gen/models/trainingCostEstimateOneOfIssuesItemCode.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfIssuesItemPurpose.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwoseven.ts +23 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenBudget.ts +9 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputs.ts +7 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsTraining.ts +9 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsTrainingFailure.ts +3 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsTrainingFailureAnyOf.ts +7 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsTrainingFailureAnyOfCode.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsTrainingReport.ts +3 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsTrainingReportAnyOf.ts +9 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsTrainingReportAnyOfErrorsItem.ts +5 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsTrainingReportAnyOfTokens.ts +10 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsTrainingReportAnyOfTokensEstimatorVersion.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsTrainingReportAnyOfTokensTotal.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidation.ts +3 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidationAnyOf.ts +9 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidationAnyOfFailure.ts +3 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidationAnyOfFailureAnyOf.ts +7 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidationAnyOfFailureAnyOfCode.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidationAnyOfReport.ts +3 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidationAnyOfReportAnyOf.ts +9 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidationAnyOfReportAnyOfErrorsItem.ts +5 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidationAnyOfReportAnyOfTokens.ts +10 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidationAnyOfReportAnyOfTokensEstimatorVersion.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenInputsValidationAnyOfReportAnyOfTokensTotal.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenIssuesItem.ts +8 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenIssuesItemCode.ts +2 -0
- package/openapi/gen/models/trainingCostEstimateOneOfTwosevenIssuesItemPurpose.ts +2 -0
- package/openapi/gen/models/trainingDatasetItemFilter.ts +8 -0
- package/openapi/gen/models/trainingDatasetItemFilterFieldSourcesItem.ts +6 -0
- package/openapi/gen/models/trainingDatasetItemFilterFieldSourcesItemSourcesItem.ts +4 -0
- package/openapi/gen/models/trainingDatasetItemFilterFieldSourcesItemSourcesItemOneOf.ts +5 -0
- package/openapi/gen/models/trainingDatasetItemFilterFieldSourcesItemSourcesItemOneOfTwo.ts +5 -0
- package/openapi/gen/models/trainingDatasetItemFilterFieldValuesItem.ts +12 -0
- package/openapi/gen/models/trainingDatasetItemFilterFieldValuesItemOperator.ts +2 -0
- package/openapi/gen/models/trainingDatasetItemFilterFieldValuesItemSourcesItem.ts +4 -0
- package/openapi/gen/models/trainingDatasetItemFilterFieldValuesItemSourcesItemOneOf.ts +5 -0
- package/openapi/gen/models/trainingDatasetItemFilterFieldValuesItemSourcesItemOneOfTwo.ts +5 -0
- package/openapi/gen/models/trainingDatasetItemFilterFieldValuesItemValue.ts +2 -0
- package/openapi/gen/models/trainingDatasetItemFilterInput.ts +8 -0
- package/openapi/gen/models/trainingDatasetItemFilterInputFieldSourcesItem.ts +6 -0
- package/openapi/gen/models/trainingDatasetItemFilterInputFieldSourcesItemSourcesItem.ts +4 -0
- package/openapi/gen/models/trainingDatasetItemFilterInputFieldSourcesItemSourcesItemOneOf.ts +5 -0
- package/openapi/gen/models/trainingDatasetItemFilterInputFieldSourcesItemSourcesItemOneOfTwo.ts +5 -0
- package/openapi/gen/models/trainingDatasetItemFilterInputFieldValuesItem.ts +12 -0
- package/openapi/gen/models/trainingDatasetItemFilterInputFieldValuesItemOperator.ts +2 -0
- package/openapi/gen/models/trainingDatasetItemFilterInputFieldValuesItemSourcesItem.ts +4 -0
- package/openapi/gen/models/trainingDatasetItemFilterInputFieldValuesItemSourcesItemOneOf.ts +5 -0
- package/openapi/gen/models/trainingDatasetItemFilterInputFieldValuesItemSourcesItemOneOfTwo.ts +5 -0
- package/openapi/gen/models/trainingDatasetItemFilterInputFieldValuesItemValue.ts +2 -0
- package/openapi/gen/models/trainingDatasetSelection.ts +6 -0
- package/openapi/gen/models/trainingDatasetSelectionInput.ts +6 -0
- package/openapi/gen/models/trainingId.ts +2 -0
- package/openapi/gen/models/trainingModelId.ts +3 -0
- package/openapi/gen/models/trainingModelSource.ts +4 -0
- package/openapi/gen/models/trainingModelSourceOneOf.ts +6 -0
- package/openapi/gen/models/trainingModelSourceOneOfBaseModelId.ts +2 -0
- package/openapi/gen/models/trainingModelSourceOneOfThree.ts +5 -0
- package/openapi/gen/models/trainingRun.ts +39 -0
- package/openapi/gen/models/trainingRunBillingStatus.ts +2 -0
- package/openapi/gen/models/trainingRunBlockedReason.ts +2 -0
- package/openapi/gen/models/trainingRunChargedAmount.ts +2 -0
- package/openapi/gen/models/trainingRunError.ts +3 -0
- package/openapi/gen/models/trainingRunErrorAnyOf.ts +7 -0
- package/openapi/gen/models/trainingRunErrorAnyOfCode.ts +2 -0
- package/openapi/gen/models/trainingRunId.ts +2 -0
- package/openapi/gen/models/trainingRunInputs.ts +3 -0
- package/openapi/gen/models/trainingRunInputsAnyOf.ts +7 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTraining.ts +15 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingContract.ts +2 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilter.ts +9 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilterFieldSourcesItem.ts +6 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilterFieldSourcesItemSourcesItem.ts +4 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilterFieldSourcesItemSourcesItemOneOf.ts +5 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilterFieldSourcesItemSourcesItemOneOfTwo.ts +5 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilterFieldValuesItem.ts +12 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilterFieldValuesItemOperator.ts +2 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilterFieldValuesItemSourcesItem.ts +4 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilterFieldValuesItemSourcesItemOneOf.ts +5 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilterFieldValuesItemSourcesItemOneOfTwo.ts +5 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingItemFilterFieldValuesItemValue.ts +2 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingReport.ts +9 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingReportErrorsItem.ts +5 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingReportTokens.ts +10 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingReportTokensEstimatorVersion.ts +2 -0
- package/openapi/gen/models/trainingRunInputsAnyOfTrainingReportTokensTotal.ts +2 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidation.ts +3 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOf.ts +15 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfContract.ts +2 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilter.ts +9 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilterFieldSourcesItem.ts +6 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilterFieldSourcesItemSourcesItem.ts +4 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilterFieldSourcesItemSourcesItemOneOf.ts +5 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilterFieldSourcesItemSourcesItemOneOfTwo.ts +5 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilterFieldValuesItem.ts +12 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilterFieldValuesItemOperator.ts +2 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilterFieldValuesItemSourcesItem.ts +4 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilterFieldValuesItemSourcesItemOneOf.ts +5 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilterFieldValuesItemSourcesItemOneOfTwo.ts +5 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfItemFilterFieldValuesItemValue.ts +2 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfReport.ts +9 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfReportErrorsItem.ts +5 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfReportTokens.ts +10 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfReportTokensEstimatorVersion.ts +2 -0
- package/openapi/gen/models/trainingRunInputsAnyOfValidationAnyOfReportTokensTotal.ts +2 -0
- package/openapi/gen/models/trainingRunLogs.ts +9 -0
- package/openapi/gen/models/trainingRunLogsEntriesItem.ts +7 -0
- package/openapi/gen/models/trainingRunLogsEntriesItemLevel.ts +2 -0
- package/openapi/gen/models/trainingRunLogsNextCursor.ts +2 -0
- package/openapi/gen/models/trainingRunMessage.ts +2 -0
- package/openapi/gen/models/trainingRunOutputModelVersionRevision.ts +2 -0
- package/openapi/gen/models/trainingRunProgress.ts +3 -0
- package/openapi/gen/models/trainingRunProgressAnyOf.ts +10 -0
- package/openapi/gen/models/trainingRunProgressAnyOfMessage.ts +2 -0
- package/openapi/gen/models/trainingRunProgressAnyOfStep.ts +2 -0
- package/openapi/gen/models/trainingRunProgressAnyOfTotal.ts +2 -0
- package/openapi/gen/models/trainingRunQuote.ts +17 -0
- package/openapi/gen/models/trainingRunQuoteBudget.ts +9 -0
- package/openapi/gen/models/trainingRunQuoteInputs.ts +7 -0
- package/openapi/gen/models/trainingRunQuoteInputsTraining.ts +9 -0
- package/openapi/gen/models/trainingRunQuoteInputsTrainingFailure.ts +3 -0
- package/openapi/gen/models/trainingRunQuoteInputsTrainingFailureAnyOf.ts +7 -0
- package/openapi/gen/models/trainingRunQuoteInputsTrainingFailureAnyOfCode.ts +2 -0
- package/openapi/gen/models/trainingRunQuoteInputsTrainingReport.ts +3 -0
- package/openapi/gen/models/trainingRunQuoteInputsTrainingReportAnyOf.ts +9 -0
- package/openapi/gen/models/trainingRunQuoteInputsTrainingReportAnyOfErrorsItem.ts +5 -0
- package/openapi/gen/models/trainingRunQuoteInputsTrainingReportAnyOfTokens.ts +10 -0
- package/openapi/gen/models/trainingRunQuoteInputsTrainingReportAnyOfTokensEstimatorVersion.ts +2 -0
- package/openapi/gen/models/trainingRunQuoteInputsTrainingReportAnyOfTokensTotal.ts +2 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidation.ts +3 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidationAnyOf.ts +9 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidationAnyOfFailure.ts +3 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidationAnyOfFailureAnyOf.ts +7 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidationAnyOfFailureAnyOfCode.ts +2 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidationAnyOfReport.ts +3 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidationAnyOfReportAnyOf.ts +9 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidationAnyOfReportAnyOfErrorsItem.ts +5 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidationAnyOfReportAnyOfTokens.ts +10 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidationAnyOfReportAnyOfTokensEstimatorVersion.ts +2 -0
- package/openapi/gen/models/trainingRunQuoteInputsValidationAnyOfReportAnyOfTokensTotal.ts +2 -0
- package/openapi/gen/models/trainingRunStatus.ts +2 -0
- package/openapi/gen/models/updateTrainingMetadataBody.ts +5 -0
- package/package.json +3 -3
- package/skills/catalog.json +19 -7
- package/skills/toloka-build/SKILL.md +4 -4
- package/skills/toloka-build/references/node-semantics.md +2 -2
- package/skills/toloka-build/references/workflow-and-cli.md +21 -3
- package/skills/toloka-report-issue/references/report-template.md +1 -1
- package/src/authoring/index.ts +10 -0
- package/src/cli/auth.ts +1 -1
- package/src/cli/auto-update.ts +1 -5
- package/src/cli/bin.ts +1 -1
- package/src/cli/check.ts +91 -30
- package/src/cli/cost.ts +8 -2
- package/src/cli/models.ts +107 -2
- package/src/cli/program.ts +271 -2
- package/src/cli/project-context.ts +55 -11
- package/src/cli/project.ts +55 -11
- package/src/cli/secrets.ts +4 -4
- package/src/cli/trainings.ts +627 -0
- package/src/cli/version.ts +68 -0
- package/src/client.ts +164 -30
- package/src/index.ts +4 -0
- package/openapi/gen/models/createDatasetExportBodyOneOf.ts +0 -6
- package/openapi/gen/models/createDatasetExportBodyOneOfFormat.ts +0 -2
- package/openapi/gen/models/createDatasetExportBodyOneOfThree.ts +0 -10
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeContract.ts +0 -2
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeFormat.ts +0 -2
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilter.ts +0 -9
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItem.ts +0 -6
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItem.ts +0 -4
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOf.ts +0 -5
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOfTwo.ts +0 -5
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItem.ts +0 -12
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemOperator.ts +0 -2
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItem.ts +0 -4
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOf.ts +0 -5
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOfTwo.ts +0 -5
- package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemValue.ts +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { assert } from "es-toolkit";
|
|
2
|
-
import { readTolokaState, writeTolokaState } from "../state";
|
|
2
|
+
import { readTolokaState, TOLOKA_STATE_FILENAME, writeTolokaState } from "../state";
|
|
3
3
|
import type { TolokaState } from "../state";
|
|
4
4
|
import type { AuthPrompt } from "./auth";
|
|
5
5
|
import type { TolokaCliFlags, TolokaEnvironment } from "./config";
|
|
@@ -35,10 +35,10 @@ export type ProjectCreateApi = {
|
|
|
35
35
|
};
|
|
36
36
|
|
|
37
37
|
export const MISSING_PROJECT_ID_MESSAGE =
|
|
38
|
-
"Missing project ID. Pass --project-id, set TOLOKA_PROJECT_ID,
|
|
38
|
+
"Missing project ID. Pass --project-id, set TOLOKA_PROJECT_ID, use a bound toloka.json, run toloka project create for a new project, or run toloka project add for an existing project.";
|
|
39
39
|
|
|
40
40
|
export const NO_PROJECT_SELECTED_MESSAGE =
|
|
41
|
-
"No project selected. Run toloka project add, or cd into a checkout.";
|
|
41
|
+
"No project selected. Run toloka project create for a new project, toloka project add for an existing project, or cd into a checkout.";
|
|
42
42
|
|
|
43
43
|
const NETWORK_MISMATCH_MESSAGE =
|
|
44
44
|
"project add writes the machine registry; unset --api-key / --base-url / POTATO_API_KEY / POTATO_BASE_URL, or run login against that platform first.";
|
|
@@ -168,7 +168,8 @@ export const formatProjectContextLine = (
|
|
|
168
168
|
project: ProjectContext | undefined,
|
|
169
169
|
stored?: StoredCredentials,
|
|
170
170
|
): string => {
|
|
171
|
-
if (project === undefined)
|
|
171
|
+
if (project === undefined)
|
|
172
|
+
return "Project: (none). Run toloka project create or toloka project add.";
|
|
172
173
|
const alias = project.alias === undefined ? "" : `alias ${project.alias}, `;
|
|
173
174
|
const registryNote =
|
|
174
175
|
project.source !== "registry" && stored?.current !== undefined
|
|
@@ -232,14 +233,12 @@ export async function listRemoteProjects(options: {
|
|
|
232
233
|
}): Promise<{ readonly output: string }> {
|
|
233
234
|
const limit = options.limit ?? 20;
|
|
234
235
|
const page = await options.client.projects.listPage({ limit });
|
|
235
|
-
const
|
|
236
|
-
const
|
|
237
|
-
const alias =
|
|
238
|
-
|
|
239
|
-
? `\t${options.context.alias}`
|
|
240
|
-
: "";
|
|
241
|
-
return `${mark}\t${project.id}\t${project.name}${alias}`;
|
|
236
|
+
const rows = page.projects.map((project) => {
|
|
237
|
+
const current = options.context?.id === project.id;
|
|
238
|
+
const alias = current ? (options.context.alias ?? "-") : "-";
|
|
239
|
+
return `${current ? "*" : "-"}\t${project.id}\t${project.name}\t${alias}`;
|
|
242
240
|
});
|
|
241
|
+
const lines = rows.length === 0 ? [] : ["CURRENT\tID\tNAME\tALIAS", ...rows];
|
|
243
242
|
if (page.pagination.hasMore) {
|
|
244
243
|
lines.push(
|
|
245
244
|
`Showing ${page.projects.length} of ${page.pagination.total} projects. Raise --limit to see more.`,
|
|
@@ -250,6 +249,51 @@ export async function listRemoteProjects(options: {
|
|
|
250
249
|
return { output };
|
|
251
250
|
}
|
|
252
251
|
|
|
252
|
+
export type TrackedResourceKind = "pipeline" | "dataset";
|
|
253
|
+
|
|
254
|
+
export async function untrackProjectResource(options: {
|
|
255
|
+
readonly sourceRoot: string;
|
|
256
|
+
readonly type: TrackedResourceKind;
|
|
257
|
+
readonly name: string;
|
|
258
|
+
readonly confirm: boolean;
|
|
259
|
+
readonly io: ProjectIo;
|
|
260
|
+
}): Promise<{ readonly output: string }> {
|
|
261
|
+
const state = await readTolokaState(options.sourceRoot);
|
|
262
|
+
assert(state, `No ${TOLOKA_STATE_FILENAME} found in ${options.sourceRoot}.`);
|
|
263
|
+
const bindings = options.type === "pipeline" ? state.pipelines : state.datasets;
|
|
264
|
+
const binding = bindings[options.name];
|
|
265
|
+
assert(
|
|
266
|
+
binding,
|
|
267
|
+
`${options.type === "pipeline" ? "Pipeline" : "Dataset"} ${options.name} is not tracked.`,
|
|
268
|
+
);
|
|
269
|
+
const id = "pipelineId" in binding ? binding.pipelineId : binding.datasetId;
|
|
270
|
+
const label = `${options.type} ${options.name} (${id})`;
|
|
271
|
+
|
|
272
|
+
if (!options.confirm) {
|
|
273
|
+
assert(
|
|
274
|
+
options.io.prompt,
|
|
275
|
+
`Refusing to untrack ${label} without confirmation. Pass --confirm after reviewing ${TOLOKA_STATE_FILENAME}.`,
|
|
276
|
+
);
|
|
277
|
+
const answer = (
|
|
278
|
+
await options.io.prompt(`Untrack ${label}? The live resource will not be deleted. [y/N] `)
|
|
279
|
+
)
|
|
280
|
+
.trim()
|
|
281
|
+
.toLowerCase();
|
|
282
|
+
assert(answer === "y" || answer === "yes", "Untrack canceled.");
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
const remaining = Object.fromEntries(
|
|
286
|
+
Object.entries(bindings).filter(([candidate]) => candidate !== options.name),
|
|
287
|
+
);
|
|
288
|
+
await writeTolokaState(options.sourceRoot, {
|
|
289
|
+
...state,
|
|
290
|
+
...(options.type === "pipeline" ? { pipelines: remaining } : { datasets: remaining }),
|
|
291
|
+
});
|
|
292
|
+
const output = `Untracked ${label}. The live ${options.type} was not deleted.`;
|
|
293
|
+
options.io.stdout(output);
|
|
294
|
+
return { output };
|
|
295
|
+
}
|
|
296
|
+
|
|
253
297
|
export async function addProject(options: {
|
|
254
298
|
readonly environment: CliEnvironment;
|
|
255
299
|
readonly flags?: TolokaCliFlags;
|
package/src/cli/project.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { dirname, join, resolve } from "node:path";
|
|
|
4
4
|
import type {
|
|
5
5
|
PipelineGraphSnapshot,
|
|
6
6
|
PipelineGraphV1,
|
|
7
|
+
PipelineValidationIssue,
|
|
7
8
|
PipelineValidationReport,
|
|
8
9
|
} from "../../openapi/gen/models";
|
|
9
10
|
import { resolvePipelineDefinition, validatePipelineDefinition } from "../authoring";
|
|
@@ -83,10 +84,13 @@ export type ApplyProjectResult = {
|
|
|
83
84
|
|
|
84
85
|
export type ValidateProjectOptions = PlanProjectOptions;
|
|
85
86
|
|
|
87
|
+
export type PipelineValidationStatus = "valid" | "invalid" | "checks_pending";
|
|
88
|
+
|
|
86
89
|
export type PipelineValidationResult = {
|
|
87
90
|
readonly sourceDirectory: string;
|
|
88
91
|
readonly pipelineId?: string;
|
|
89
92
|
readonly report?: PipelineValidationReport;
|
|
93
|
+
readonly status?: PipelineValidationStatus;
|
|
90
94
|
readonly skipped?: string;
|
|
91
95
|
};
|
|
92
96
|
|
|
@@ -844,10 +848,11 @@ export async function applyProject(
|
|
|
844
848
|
if (valueKey(inspection.state) !== valueKey(nextState))
|
|
845
849
|
await writeTolokaState(options.sourceRoot, nextState);
|
|
846
850
|
const action = writes === 0 ? "unchanged" : "changed";
|
|
851
|
+
const plannedChanges = inspection.changes.length;
|
|
847
852
|
const output =
|
|
848
853
|
writes === 0
|
|
849
854
|
? "No changes."
|
|
850
|
-
: `Applied ${writes} ${writes === 1 ? "write" : "writes"} to project ${inspection.projectId}.`;
|
|
855
|
+
: `Applied ${plannedChanges} planned ${plannedChanges === 1 ? "change" : "changes"} with ${writes} platform ${writes === 1 ? "write" : "writes"} to project ${inspection.projectId}.`;
|
|
851
856
|
return {
|
|
852
857
|
action,
|
|
853
858
|
state: nextState,
|
|
@@ -860,10 +865,47 @@ export async function applyProject(
|
|
|
860
865
|
const issueLocation = (issue: { nodeId?: string; checkId?: string }) =>
|
|
861
866
|
[issue.nodeId, issue.checkId].filter((value): value is string => value !== undefined).join("/");
|
|
862
867
|
|
|
868
|
+
const PENDING_CHECK_CODE = "not_ran_node_check";
|
|
869
|
+
|
|
870
|
+
const normalizeValidationIssue = (issue: PipelineValidationIssue): PipelineValidationIssue =>
|
|
871
|
+
issue.code === "empty_node_checks"
|
|
872
|
+
? { ...issue, message: "No stored check cases are configured for this node" }
|
|
873
|
+
: issue;
|
|
874
|
+
|
|
875
|
+
const normalizeValidationReport = (
|
|
876
|
+
report: PipelineValidationReport,
|
|
877
|
+
): { readonly report: PipelineValidationReport; readonly status: PipelineValidationStatus } => {
|
|
878
|
+
const seen = new Set<string>();
|
|
879
|
+
const issues = report.issues.flatMap((rawIssue) => {
|
|
880
|
+
const issue = normalizeValidationIssue(rawIssue);
|
|
881
|
+
const key = [
|
|
882
|
+
issue.code,
|
|
883
|
+
issue.severity,
|
|
884
|
+
issue.nodeId ?? "",
|
|
885
|
+
issue.checkId ?? "",
|
|
886
|
+
issue.message,
|
|
887
|
+
].join("\n");
|
|
888
|
+
if (seen.has(key)) return [];
|
|
889
|
+
seen.add(key);
|
|
890
|
+
return [issue];
|
|
891
|
+
});
|
|
892
|
+
const pending = issues.some((issue) => issue.code === PENDING_CHECK_CODE);
|
|
893
|
+
const blocking = issues.some(
|
|
894
|
+
(issue) => issue.severity === "error" && issue.code !== PENDING_CHECK_CODE,
|
|
895
|
+
);
|
|
896
|
+
const status: PipelineValidationStatus =
|
|
897
|
+
blocking || (!report.valid && !pending) ? "invalid" : pending ? "checks_pending" : "valid";
|
|
898
|
+
return {
|
|
899
|
+
status,
|
|
900
|
+
report: { ...report, valid: status !== "invalid", issues },
|
|
901
|
+
};
|
|
902
|
+
};
|
|
903
|
+
|
|
863
904
|
const formatValidationIssues = (report: PipelineValidationReport) =>
|
|
864
905
|
report.issues.map((issue) => {
|
|
865
906
|
const location = issueLocation(issue);
|
|
866
|
-
|
|
907
|
+
const severity = issue.code === PENDING_CHECK_CODE ? "pending" : issue.severity;
|
|
908
|
+
return ` ${severity} ${issue.code}${location.length === 0 ? "" : ` ${location}`}: ${issue.message}`;
|
|
867
909
|
});
|
|
868
910
|
|
|
869
911
|
export async function validateProject(
|
|
@@ -898,24 +940,26 @@ export async function validateProject(
|
|
|
898
940
|
resolvePipelineDefinition(pipeline.source.definition, { datasetId: dataset.id }),
|
|
899
941
|
pipeline.snapshot.graph,
|
|
900
942
|
);
|
|
901
|
-
const
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
943
|
+
const normalized = normalizeValidationReport(
|
|
944
|
+
await client.pipelines.validateGraph({
|
|
945
|
+
pipelineId: pipeline.pipeline.id,
|
|
946
|
+
graph,
|
|
947
|
+
}),
|
|
948
|
+
);
|
|
905
949
|
results.push({
|
|
906
950
|
sourceDirectory: pipeline.source.sourceDirectory,
|
|
907
951
|
pipelineId: pipeline.pipeline.id,
|
|
908
|
-
report,
|
|
952
|
+
report: normalized.report,
|
|
953
|
+
status: normalized.status,
|
|
909
954
|
});
|
|
910
955
|
}
|
|
911
|
-
const valid = results.every((result) => result.
|
|
956
|
+
const valid = results.every((result) => result.status !== "invalid");
|
|
912
957
|
const lines = results.flatMap((result) => {
|
|
913
958
|
if (result.skipped !== undefined)
|
|
914
959
|
return [`- ${result.sourceDirectory}: skipped (${result.skipped})`];
|
|
915
960
|
assert(result.report, `Pipeline ${result.sourceDirectory} is missing a validation report`);
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
: `- ${result.sourceDirectory}: invalid`;
|
|
961
|
+
assert(result.status, `Pipeline ${result.sourceDirectory} is missing a validation status`);
|
|
962
|
+
const header = `- ${result.sourceDirectory}: ${result.status.replace("_", "-")}`;
|
|
919
963
|
return [header, ...formatValidationIssues(result.report)];
|
|
920
964
|
});
|
|
921
965
|
return {
|
package/src/cli/secrets.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import type { PipelineGraphV1 } from
|
|
1
|
+
import type { PipelineGraphV1 } from "../../openapi/gen/models";
|
|
2
2
|
|
|
3
3
|
export function collectGraphSecretNames(graph: {
|
|
4
|
-
readonly nodes: ReadonlyArray<PipelineGraphV1[
|
|
4
|
+
readonly nodes: ReadonlyArray<PipelineGraphV1["nodes"][number]>;
|
|
5
5
|
}): readonly string[] {
|
|
6
6
|
const names = new Set<string>();
|
|
7
7
|
for (const node of graph.nodes) {
|
|
8
|
-
if (node.type !==
|
|
8
|
+
if (node.type !== "code") continue;
|
|
9
9
|
for (const environmentVariable of node.settings.envVars ?? []) {
|
|
10
|
-
if (environmentVariable.type ===
|
|
10
|
+
if (environmentVariable.type === "secret") names.add(environmentVariable.secretName);
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
return [...names].toSorted((left, right) => left.localeCompare(right));
|