in packages/inference/src/providers/hf-inference.ts [436:462]
override async getResponse(
response: QuestionAnsweringOutput | QuestionAnsweringOutput[number]
): Promise<QuestionAnsweringOutput[number]> {
if (
Array.isArray(response)
? response.every(
(elem) =>
typeof elem === "object" &&
!!elem &&
typeof elem.answer === "string" &&
typeof elem.end === "number" &&
typeof elem.score === "number" &&
typeof elem.start === "number"
)
: typeof response === "object" &&
!!response &&
typeof response.answer === "string" &&
typeof response.end === "number" &&
typeof response.score === "number" &&
typeof response.start === "number"
) {
return Array.isArray(response) ? response[0] : response;
}
throw new InferenceClientProviderOutputError(
"Received malformed response from HF-Inference question-answering API: expected Array<{answer: string, end: number, score: number, start: number}>"
);
}