ryu-js / plugins /gptold.js
randydev's picture
Update plugins/gptold.js
51d3a07 verified
raw
history blame
3.81 kB
import express from 'express';
import { OpenaiRes } from '../lib/scrapper.js';
import { NvidiaTogether } from '../lib/@randydev/together/llama.js';
import { CohereAI } from '../lib/@randydev/together/cohere.js';
import { authenticateApiKey, apiLimiter } from '../middleware/midware.js';
const GptRoutes = express.Router();
/**
* @swagger
* /api/v1/ai/cohere/command-plus:
* get:
* summary: Cohere AI
* tags: [AI]
* parameters:
* - in: query
* name: query
* required: true
* description: null
* schema:
* type: string
* - in: query
* name: system_prompt
* required: false
* description: null
* schema:
* type: string
* - in: header
* name: x-api-key
* required: true
* description: API key for authentication
* schema:
* type: string
* responses:
* 200:
* description: Success
*/
GptRoutes.get('/api/v1/ai/cohere/command-plus', authenticateApiKey, apiLimiter, async (req, res) => {
try {
const query = req.query.query;
let system_prompt = "Your name is AkenoX AI A kind and friendly AI assistant that answers in\na short and concise answer. Give short step-by-step reasoning if required.\n";
system_prompt = req.query.system_prompt ? req.query.system_prompt : system_prompt;
const results = await CohereAI(query, {
system_prompt: system_prompt
});
res.json({ results });
} catch (error) {
res.status(401).json({ error: error.message });
}
});
/**
* @swagger
* /api/v1/ai/nvidia/llama-31-70b:
* get:
* summary: Nvidia LLama AI
* tags: [AI]
* parameters:
* - in: query
* name: query
* required: true
* description: null
* schema:
* type: string
* - in: query
* name: system_prompt
* required: false
* description: null
* schema:
* type: string
* - in: header
* name: x-api-key
* required: true
* description: API key for authentication
* schema:
* type: string
* responses:
* 200:
* description: Success
*/
GptRoutes.get('/api/v1/ai/nvidia/llama-31-70b', authenticateApiKey, apiLimiter, async (req, res) => {
try {
const query = req.query.query;
let system_prompt = "Your name is AkenoX AI A kind and friendly AI assistant that answers in\na short and concise answer. Give short step-by-step reasoning if required.\n";
system_prompt = req.query.system_prompt ? req.query.system_prompt : system_prompt;
const results = await NvidiaTogether(query, {
system_prompt: system_prompt
});
res.json({ results });
} catch (error) {
res.status(401).json({ error: error.message });
}
});
/**
* @swagger
* /api/v1/ai/gpt-old:
* get:
* summary: GPT OLD version turbo
* tags: [AI]
* parameters:
* - in: query
* name: query
* required: true
* description: The query to be processed by the GPT OLD.
* schema:
* type: string
* - in: header
* name: x-api-key
* required: true
* description: API key for authentication
* schema:
* type: string
* responses:
* 200:
* description: Success
*/
GptRoutes.get('/api/v1/ai/gpt-old', authenticateApiKey, apiLimiter, async (req, res) => {
try {
const query = req.query.query;
const results = await OpenaiRes(query);
res.json({ results });
} catch (error) {
res.status(401).json({ error: error.message });
}
});
export { GptRoutes };