/** * Generated by orval v8.9.1 🍺 * Do not edit manually. * Api * Io HST Search Engine API * OpenAPI spec version: 0.1.0 */ import * as zod from 'zod'; /** * Returns server health status * @summary Health check */ export const HealthCheckResponse = zod.object({ "status": zod.string() }) /** * Runs the HST search engine across 200+ sources and returns a synthesized answer * @summary Search and synthesize */ export const searchBodyQueryMax = 500; export const searchBodyTargetDefault = 6; export const searchBodyTargetMax = 12; export const SearchBody = zod.object({ "query": zod.string().min(1).max(searchBodyQueryMax), "target": zod.number().min(1).max(searchBodyTargetMax).default(searchBodyTargetDefault) }) export const SearchResponse = zod.object({ "answer": zod.string(), "sources": zod.array(zod.string()), "topUrl": zod.string().nullish(), "query": zod.string(), "intent": zod.string().optional(), "selfReferential": zod.boolean().optional(), "sourceCount": zod.number().optional(), "processingMs": zod.number().optional() }) /** * Runs inference on the Io HST checkpoint * @summary Generate text from Io neural model */ export const modelGenerateBodyPromptMax = 1500; export const modelGenerateBodyMaxTokensDefault = 200; export const modelGenerateBodyMaxTokensMax = 1024; export const modelGenerateBodyTemperatureDefault = 0.85; export const modelGenerateBodyTemperatureMin = 0.01; export const modelGenerateBodyTemperatureMax = 2; export const modelGenerateBodyTopKDefault = 50; export const modelGenerateBodyTopKMax = 200; export const modelGenerateBodyTopPDefault = 0.95; export const modelGenerateBodyTopPMin = 0.01; export const modelGenerateBodyTopPMax = 1; export const modelGenerateBodyRepetitionPenaltyDefault = 1.15; export const modelGenerateBodyRepetitionPenaltyMax = 2; export const modelGenerateBodyPresencePenaltyDefault = 0; export const modelGenerateBodyPresencePenaltyMin = 0; export const modelGenerateBodyPresencePenaltyMax = 2; export const modelGenerateBodyNSamplesDefault = 1; export const modelGenerateBodyNSamplesMax = 8; export const ModelGenerateBody = zod.object({ "prompt": zod.string().min(1).max(modelGenerateBodyPromptMax), "maxTokens": zod.number().min(1).max(modelGenerateBodyMaxTokensMax).default(modelGenerateBodyMaxTokensDefault), "temperature": zod.number().min(modelGenerateBodyTemperatureMin).max(modelGenerateBodyTemperatureMax).default(modelGenerateBodyTemperatureDefault), "topK": zod.number().min(1).max(modelGenerateBodyTopKMax).default(modelGenerateBodyTopKDefault), "topP": zod.number().min(modelGenerateBodyTopPMin).max(modelGenerateBodyTopPMax).default(modelGenerateBodyTopPDefault), "repetitionPenalty": zod.number().min(1).max(modelGenerateBodyRepetitionPenaltyMax).default(modelGenerateBodyRepetitionPenaltyDefault), "presencePenalty": zod.number().min(modelGenerateBodyPresencePenaltyMin).max(modelGenerateBodyPresencePenaltyMax).default(modelGenerateBodyPresencePenaltyDefault), "nSamples": zod.number().min(1).max(modelGenerateBodyNSamplesMax).default(modelGenerateBodyNSamplesDefault) }) export const ModelGenerateResponse = zod.object({ "text": zod.string(), "step": zod.number(), "checkpoint": zod.string().optional(), "coherenceScore": zod.number().optional(), "bestOfN": zod.number().optional(), "bestScore": zod.number().optional(), "error": zod.string().nullish() }) /** * @summary Submit thumbs up/down for a search answer */ export const submitFeedbackBodyQueryMax = 500; export const submitFeedbackBodyAnswerMax = 8000; export const SubmitFeedbackBody = zod.object({ "query": zod.string().min(1).max(submitFeedbackBodyQueryMax), "rating": zod.enum(['up', 'down']), "sources": zod.array(zod.string()).optional(), "answer": zod.string().max(submitFeedbackBodyAnswerMax).optional() }) export const SubmitFeedbackResponse = zod.object({ "ok": zod.boolean(), "ts": zod.number() }) /** * @summary Aggregate feedback stats */ export const FeedbackStatsResponse = zod.object({ "totalFeedback": zod.number(), "totalUp": zod.number(), "totalDown": zod.number(), "sources": zod.array(zod.object({ "source": zod.string(), "up": zod.number(), "down": zod.number(), "multiplier": zod.number() })) }) /** * @summary Start light CPU fine-tuning of the Io checkpoint */ export const modelFineTuneBodyStepsDefault = 30; export const modelFineTuneBodyStepsMax = 200; export const modelFineTuneBodyLrDefault = 0.00001; export const modelFineTuneBodyLrMin = 1e-7; export const modelFineTuneBodyLrMax = 0.001; export const modelFineTuneBodySeqLenDefault = 256; export const modelFineTuneBodySeqLenMin = 64; export const modelFineTuneBodySeqLenMax = 1024; export const ModelFineTuneBody = zod.object({ "steps": zod.number().min(1).max(modelFineTuneBodyStepsMax).default(modelFineTuneBodyStepsDefault), "lr": zod.number().min(modelFineTuneBodyLrMin).max(modelFineTuneBodyLrMax).default(modelFineTuneBodyLrDefault), "seqLen": zod.number().min(modelFineTuneBodySeqLenMin).max(modelFineTuneBodySeqLenMax).default(modelFineTuneBodySeqLenDefault) }) export const ModelFineTuneResponse = zod.object({ "status": zod.enum(['idle', 'running', 'success', 'failed']), "startedAt": zod.number().nullish(), "finishedAt": zod.number().nullish(), "steps": zod.number().optional(), "currentStep": zod.number().optional(), "loss": zod.number().nullish(), "avgLoss": zod.number().nullish(), "error": zod.string().nullish(), "checkpointOut": zod.string().nullish(), "activeCheckpoint": zod.string().optional(), "fineTunedExists": zod.boolean().optional(), "guideStats": zod.record(zod.string(), zod.unknown()).optional(), "log": zod.array(zod.record(zod.string(), zod.unknown())).optional(), "ok": zod.boolean().optional() }) /** * @summary Fine-tune status */ export const ModelFineTuneStatusResponse = zod.object({ "status": zod.enum(['idle', 'running', 'success', 'failed']), "startedAt": zod.number().nullish(), "finishedAt": zod.number().nullish(), "steps": zod.number().optional(), "currentStep": zod.number().optional(), "loss": zod.number().nullish(), "avgLoss": zod.number().nullish(), "error": zod.string().nullish(), "checkpointOut": zod.string().nullish(), "activeCheckpoint": zod.string().optional(), "fineTunedExists": zod.boolean().optional(), "guideStats": zod.record(zod.string(), zod.unknown()).optional(), "log": zod.array(zod.record(zod.string(), zod.unknown())).optional(), "ok": zod.boolean().optional() }) /** * @summary Model status */ export const ModelStatusResponse = zod.object({ "available": zod.boolean(), "message": zod.string(), "step": zod.number().nullish(), "checkpoint": zod.string().nullish() })