autotagger v2 lol

This commit is contained in:
Flummi
2022-05-05 16:02:17 +02:00
parent 72267a8740
commit 7d49a0ce52
4 changed files with 131 additions and 37 deletions

View File

@ -191,35 +191,57 @@ export default async bot => {
speed = !Number.isFinite(speed) ? "yes" : `${speed.toFixed(2)} Mbit/s`;
// autotagger
let tag;
let tags = [];
try {
if(mime.startsWith('image') && mime != 'image/gif') {
const body = { headers: { Authorization: `Basic ${cfg.tagger.btoa}` } };
const res = await (await fetch(`${cfg.tagger.endpoint}/categories/nsfw_beta?image_url=${cfg.main.url}/b/${filename}`, body)).json();
if(res)
tag = (res.result.categories[0].name.en === 'safe') ? 'sfw' : 'nsfw';
}
else if(mime.startsWith('audio')) {
tag = 'sfw';
}
if(mime.startsWith('image')) {
const res = await lib.detectNSFW(filename);
if(tag === 'sfw' || tag === 'nsfw') {
await db`
insert into "tags_assign" ${
db({
tag_id: tag === "sfw" ? 1 : 2,
item_id: itemid,
user_id: 7 // user: autotagger (ID: 7)
}, 'tag_id', 'item_id', 'user_id')
tag_id: res.nsfw ? 2 : 1,
user_id: 7
})
}
`;
tags.push(res.nsfw ? 'nsfw' : 'sfw');
if(res.hentai >= .7) {
await db`
insert into "tags_assign" ${
db({
item_id: f.id,
tag_id: 8, // hentai
user_id: 7 // autotagger
})
}
`;
tags.push('hentai');
}
}
else if(mime.startsWith('audio')) {
await db`
insert into "tags_assign" ${
db([{
item_id: itemid,
tag_id: 1,
user_id: 7
}, {
item_id: itemid,
tag_id: 7178,
user_id: 7
}])
}
`;
tags.push('sfw', 'audio');
}
} catch(err) {
console.error(err);
}
e.reply([
`[f0cked] link: ${cfg.main.url}/${itemid} | size: ${lib.formatSize(size)} | speed: ${speed}` + (tag ? ` | ${tag}` : "")
`[f0cked] link: ${cfg.main.url}/${itemid} | size: ${lib.formatSize(size)} | speed: ${speed}` + (tags.length > 0 ? ` | tags: ${tags.join(', ')}` : '')
]);
});