@langchain/core
Version:
Core LangChain.js abstractions and schemas
23 lines (22 loc) • 715 B
JavaScript
const require_errors_index = require("../errors/index.cjs");
const require_base = require("../messages/base.cjs");
// src/output_parsers/refusal.ts
/**
* Throws {@link ModelRefusalError} if the generation's message is a refusal.
*
* @internal
*/
function throwIfRefused(generation) {
if (!generation || !("message" in generation)) return;
const { message } = generation;
if (!require_base.isBaseMessage(message)) return;
let blocks;
try {
blocks = message.contentBlocks;
} catch {
return;
}
for (const block of blocks) if (block.type === "refusal") throw require_errors_index.ModelRefusalError.fromRefusal(block, message);
}
exports.throwIfRefused = throwIfRefused;
//# sourceMappingURL=refusal.cjs.map