/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; export type DpoHyperparametersBatchSize = string | number; export type Beta = string | number; export type DpoHyperparametersLearningRateMultiplier = string | number; export type DpoHyperparametersNEpochs = string | number; export type DpoHyperparameters = { /** * Number of examples in each batch */ batchSize?: string | number | null | undefined; /** * DPO beta parameter controlling alignment strictness */ beta?: string | number | null | undefined; /** * Scaling factor for learning rate */ learningRateMultiplier?: string | number | null | undefined; /** * Number of epochs to train for */ nEpochs?: string | number | null | undefined; }; /** @internal */ export const DpoHyperparametersBatchSize$inboundSchema: z.ZodType< DpoHyperparametersBatchSize, z.ZodTypeDef, unknown > = z.union([z.string(), z.number().int()]); /** @internal */ export type DpoHyperparametersBatchSize$Outbound = string | number; /** @internal */ export const DpoHyperparametersBatchSize$outboundSchema: z.ZodType< DpoHyperparametersBatchSize$Outbound, z.ZodTypeDef, DpoHyperparametersBatchSize > = z.union([z.string(), z.number().int()]); export function dpoHyperparametersBatchSizeToJSON( dpoHyperparametersBatchSize: DpoHyperparametersBatchSize, ): string { return JSON.stringify( DpoHyperparametersBatchSize$outboundSchema.parse( dpoHyperparametersBatchSize, ), ); } export function dpoHyperparametersBatchSizeFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => DpoHyperparametersBatchSize$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'DpoHyperparametersBatchSize' from JSON`, ); } /** @internal */ export const Beta$inboundSchema: z.ZodType = z .union([z.string(), z.number()]); /** @internal */ export type Beta$Outbound = string | number; /** @internal */ export const Beta$outboundSchema: z.ZodType = z.union([z.string(), z.number()]); export function betaToJSON(beta: Beta): string { return JSON.stringify(Beta$outboundSchema.parse(beta)); } export function betaFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => Beta$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'Beta' from JSON`, ); } /** @internal */ export const DpoHyperparametersLearningRateMultiplier$inboundSchema: z.ZodType< DpoHyperparametersLearningRateMultiplier, z.ZodTypeDef, unknown > = z.union([z.string(), z.number()]); /** @internal */ export type DpoHyperparametersLearningRateMultiplier$Outbound = string | number; /** @internal */ export const DpoHyperparametersLearningRateMultiplier$outboundSchema: z.ZodType< DpoHyperparametersLearningRateMultiplier$Outbound, z.ZodTypeDef, DpoHyperparametersLearningRateMultiplier > = z.union([z.string(), z.number()]); export function dpoHyperparametersLearningRateMultiplierToJSON( dpoHyperparametersLearningRateMultiplier: DpoHyperparametersLearningRateMultiplier, ): string { return JSON.stringify( DpoHyperparametersLearningRateMultiplier$outboundSchema.parse( dpoHyperparametersLearningRateMultiplier, ), ); } export function dpoHyperparametersLearningRateMultiplierFromJSON( jsonString: string, ): SafeParseResult< DpoHyperparametersLearningRateMultiplier, SDKValidationError > { return safeParse( jsonString, (x) => DpoHyperparametersLearningRateMultiplier$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'DpoHyperparametersLearningRateMultiplier' from JSON`, ); } /** @internal */ export const DpoHyperparametersNEpochs$inboundSchema: z.ZodType< DpoHyperparametersNEpochs, z.ZodTypeDef, unknown > = z.union([z.string(), z.number().int()]); /** @internal */ export type DpoHyperparametersNEpochs$Outbound = string | number; /** @internal */ export const DpoHyperparametersNEpochs$outboundSchema: z.ZodType< DpoHyperparametersNEpochs$Outbound, z.ZodTypeDef, DpoHyperparametersNEpochs > = z.union([z.string(), z.number().int()]); export function dpoHyperparametersNEpochsToJSON( dpoHyperparametersNEpochs: DpoHyperparametersNEpochs, ): string { return JSON.stringify( DpoHyperparametersNEpochs$outboundSchema.parse(dpoHyperparametersNEpochs), ); } export function dpoHyperparametersNEpochsFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => DpoHyperparametersNEpochs$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'DpoHyperparametersNEpochs' from JSON`, ); } /** @internal */ export const DpoHyperparameters$inboundSchema: z.ZodType< DpoHyperparameters, z.ZodTypeDef, unknown > = z.object({ batch_size: z.nullable(z.union([z.string(), z.number().int()])).optional(), beta: z.nullable(z.union([z.string(), z.number()])).optional(), learning_rate_multiplier: z.nullable(z.union([z.string(), z.number()])) .optional(), n_epochs: z.nullable(z.union([z.string(), z.number().int()])).optional(), }).transform((v) => { return remap$(v, { "batch_size": "batchSize", "learning_rate_multiplier": "learningRateMultiplier", "n_epochs": "nEpochs", }); }); /** @internal */ export type DpoHyperparameters$Outbound = { batch_size?: string | number | null | undefined; beta?: string | number | null | undefined; learning_rate_multiplier?: string | number | null | undefined; n_epochs?: string | number | null | undefined; }; /** @internal */ export const DpoHyperparameters$outboundSchema: z.ZodType< DpoHyperparameters$Outbound, z.ZodTypeDef, DpoHyperparameters > = z.object({ batchSize: z.nullable(z.union([z.string(), z.number().int()])).optional(), beta: z.nullable(z.union([z.string(), z.number()])).optional(), learningRateMultiplier: z.nullable(z.union([z.string(), z.number()])) .optional(), nEpochs: z.nullable(z.union([z.string(), z.number().int()])).optional(), }).transform((v) => { return remap$(v, { batchSize: "batch_size", learningRateMultiplier: "learning_rate_multiplier", nEpochs: "n_epochs", }); }); export function dpoHyperparametersToJSON( dpoHyperparameters: DpoHyperparameters, ): string { return JSON.stringify( DpoHyperparameters$outboundSchema.parse(dpoHyperparameters), ); } export function dpoHyperparametersFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => DpoHyperparameters$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'DpoHyperparameters' from JSON`, ); }