@n8n/n8n-nodes-langchain
Version:

51 lines • 2.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.textModelSearch = textModelSearch;
exports.visionModelSearch = visionModelSearch;
exports.imageGenerationModelSearch = imageGenerationModelSearch;
exports.textToVideoModelSearch = textToVideoModelSearch;
exports.imageToVideoModelSearch = imageToVideoModelSearch;
const transport_1 = require("../transport");
async function baseModelSearch(modelFilter, filter) {
const response = await transport_1.apiRequest.call(this, 'GET', '/api/v1/models', {
qs: { page_size: 200 },
});
const output = response?.output ?? response;
const items = (output?.models ?? output?.data ?? []);
let models = items
.filter((item) => item.model && modelFilter(item.model))
.map((item) => item.model);
if (filter) {
models = models.filter((id) => id.toLowerCase().includes(filter.toLowerCase()));
}
return {
results: models.map((id) => ({ name: id, value: id })),
};
}
async function textModelSearch(filter) {
return await baseModelSearch.call(this, (model) => !model.includes('-vl-') &&
!model.startsWith('qvq') &&
!model.includes('-ocr') &&
!model.includes('-image') &&
!model.includes('-t2i') &&
!model.includes('-t2v') &&
!model.includes('-i2v') &&
!model.includes('-kf2v') &&
!model.includes('-r2v') &&
!model.includes('-s2v') &&
!model.includes('-videoedit') &&
!model.includes('-animate-'), filter);
}
async function visionModelSearch(filter) {
return await baseModelSearch.call(this, (model) => model.includes('-vl-') || model.startsWith('qvq') || model.includes('-ocr'), filter);
}
async function imageGenerationModelSearch(filter) {
return await baseModelSearch.call(this, (model) => model.includes('-image') || model.includes('-t2i'), filter);
}
async function textToVideoModelSearch(filter) {
return await baseModelSearch.call(this, (model) => model.includes('-t2v'), filter);
}
async function imageToVideoModelSearch(filter) {
return await baseModelSearch.call(this, (model) => model.includes('-i2v'), filter);
}
//# sourceMappingURL=listSearch.js.map