From 83e64585dd63b2e98a444daa2c42f00d7f99dea4 Mon Sep 17 00:00:00 2001 From: derpystuff <3515180-derpystuff@users.noreply.gitlab.com> Date: Fri, 24 Feb 2023 16:06:20 +0100 Subject: [PATCH] ask --- commands/message/fun/ask.js | 32 ++++++++++++++++++++++++++++++++ labscore/api/endpoints.js | 1 + labscore/api/index.js | 6 ++++++ 3 files changed, 39 insertions(+) create mode 100644 commands/message/fun/ask.js diff --git a/commands/message/fun/ask.js b/commands/message/fun/ask.js new file mode 100644 index 0000000..bfb9515 --- /dev/null +++ b/commands/message/fun/ask.js @@ -0,0 +1,32 @@ +const { createEmbed } = require('../../../labscore/utils/embed') +const { format } = require('../../../labscore/utils/ansi') +const { editOrReply } = require('../../../labscore/utils/message') +const { STATICS } = require('../../../labscore/utils/statics') + +const { inferkit, textGenerator } = require('../../../labscore/api') +const { codeblock } = require('../../../labscore/utils/markdown') + +module.exports = { + name: 'ask', + label: 'text', + metadata: { + description: 'Ask AI questions. May not be accurate.', + description_short: 'AI questions', + examples: ['ask How many otter species are there?'], + category: 'fun', + usage: 'ask ' + }, + run: async (context, args) => { + context.triggerTyping(); + if(!args.text) return editOrReply(context, {embeds:[createEmbed("warning", context, `Missing Parameter (text).`)]}) + try{ + let res = await textGenerator(context, args.text) + return editOrReply(context, {embeds:[createEmbed("default", context, { + description: codeblock("ansi", [format(args.text, "cyan") + res.response.body.text]) + })]}) + }catch(e){ + console.log(e) + return editOrReply(context, {embeds:[createEmbed("error", context, `Unable to generate text.`)]}) + } + } +}; \ No newline at end of file diff --git a/labscore/api/endpoints.js b/labscore/api/endpoints.js index 11eddce..e8b5c1a 100644 --- a/labscore/api/endpoints.js +++ b/labscore/api/endpoints.js @@ -53,6 +53,7 @@ const Api = Object.freeze({ UTILS_INFERKIT: '/utils/inferkit', UTILS_PERSPECTIVE: '/utils/perspective', UTILS_SCREENSHOT: '/utils/screenshot', + UTILS_TEXTGENERATOR: '/utils/text-generator', }) module.exports = { diff --git a/labscore/api/index.js b/labscore/api/index.js index 3bda0e1..e2d8103 100644 --- a/labscore/api/index.js +++ b/labscore/api/index.js @@ -307,6 +307,12 @@ module.exports.screenshot = async function(context, url, nsfw){ }) } +module.exports.textGenerator = async function(context, input){ + return await request(Api.UTILS_TEXTGENERATOR, "GET", {}, { + input: input + }) +} + module.exports.emojiKitchen = async function(emoji){ return await superagent.get("https://tenor.googleapis.com/v2/featured").query({ key: process.env.GOOGLE_TENOR_KEY,