@juspay/neurolink
Version:
The pipe layer of an AI nervous system: one interface connecting provider neurons to your application, across three inference types — generate, stream and decide. `decide` returns typed, calibrated judgements from a non-generative model (~400ms, ~$0.00002
30 lines (29 loc) • 776 B
JavaScript
export const isRecord = (v) => typeof v === "object" && v !== null && !Array.isArray(v);
export const asNumber = (v) => typeof v === "number" && Number.isFinite(v) ? v : undefined;
export const asNumberMap = (v) => {
if (!isRecord(v)) {
return undefined;
}
const out = {};
for (const [k, raw] of Object.entries(v)) {
const n = asNumber(raw);
if (n === undefined) {
return undefined;
}
out[k] = n;
}
return out;
};
export const asStringMap = (v) => {
if (!isRecord(v)) {
return undefined;
}
const out = {};
for (const [k, raw] of Object.entries(v)) {
if (typeof raw !== "string") {
return undefined;
}
out[k] = raw;
}
return out;
};