UNPKG

opex-ai

Version:

AI tools: rewriter, summarizer, text generator, chat with ai, image classifier

164 lines (135 loc) 6.26 kB
# opex-ai ### generateText #### Example ```js const { generateText } = require("opex-ai") await generateText(`Рассказ на тему: Мои летние каникулы. на 4000 символов, 9 класс `) //или await generateText("Жил был Великий Белый Гриб") :) ``` #### Usage ```js await generateText(text) ``` #### `text` - начальная фраза по которой он будет генерировать текст (в некоторых случаях может попытаться дать ответ на вопрос или написать текст на данную тему, но в основном просто продолжит текст после этой фразы ) ### summarize #### Usage ```js await summarize(text, num_beams, num_return_sequences, length_penalty,genstrategy,no_repeat_ngram_size) ``` #### `text` - оригинальный текст для переписывания #### `num_beams` - default: 8 - границы 1-40+ - количество источников генерации текста #### `num_return_sequences` - кол-во примеров, из которых выбирается лучший вариант. - default: 7 - границы: 1 - 50 - чем болше тем лучше качество - при большом количестве может долго обрабатывать или выдать ошибку #### `no_repeat_ngram_size` - все ngrams такого размера могут встречаться только один раз. - default: 5; #### `length_penalty` - параметр генерации текста length_penalty — экспоненциальный штраф к длине. - default: 2.0; #### `genstrategy` - параметр переключения между стратегиями генерации (0 — для beam search, 1 — для sampling). - default: 0; top_k — параметр top_k текста для генерации. Дефолтное значение 30; top_p — параметр top_p текста для генерации. Дефолтное значение 0.95. ### rewrite #### Usage ```js await rewrite (text, temperature, top_k, top_p, repetition_penalty, num_return_sequences, range_mode) ``` #### `text` - оригинальный текст для переписывания #### `temperature` - default: 1 - границы: 0.1 - 1.9 - параметр температуры текста для генерации. - Температура текста - его актуальность(~качество). - Чем она выше, тем ближе текст к идеальному прототипу - Чем меньше коэффициент тем ближе к оригиналу #### `top_k` - default: 50 - границы: 1 - 300 - Коэффициент показывает насколько тема близка или аналогична теме запроса. Уникальность текста. #### `top_p` - default: 0.7 - границы: 0.1 - 150 - параметр отвечает за то сколько процентов оригинала содержится в статье - чем меньше, тем больше оригинального текста содержится в переписанном тексте #### `repetition_penalty` - (штраф за повторные реплики.) - default: 0.1-1.99 - определяет, сколько раз каждое выражение должно пройти проверку на соответствие по запросу #### `num_return_sequences` - кол-во примеров, из которых выбирается лучший рерайт. - default: 5 - границы: 1 - 40+ - чем болше тем лучше качество - при большом количестве может долго обрабатывать или выдать ошибку #### `range_mode` - выбор режима ранжирования кандидатов ("bertscore"/"classifier"). - default: сразу оба ### chat #### Подключение #### - SQLite3 ```js const SQLite3 = require('better-sqlite3'); var db = new SQLite3("./db.sqlite") const { SQLite3Chat } = require('opex-ai') const ai = new SQLite3Chat(db,"ОрехБот"/*?bot_name*/); ``` #### - MySQL ```js const MySQL = require('mysql-database'); const database = new MySQL() const db = await database.connect({ host: "localhost", user: "root", password: "passwrd", database: "db" }) db.on('connected',(connection) => { log('Database Connected'); }) const { MySQLChat } = require('opex-ai') const ai = new MySQLChat(db,"ОрехБот"/*?bot_name*/); ``` #### Functions ```js await ai.sendMessage(msg,?id)) //отправляет сообщение боту, и возвращает ответ await ai.getAllMessages(?id) //возвращает массив сообщений указанного чата await ai.deleteData(?id) // Удаляет все сообщения по указанному айди ( если указать "all" в поле id, то удалятся все сообщения из всех чатов) //Если вы используете только один чат, можно не указывать айди, по умолчанию будет использоваться 123456 ``` #### Можно вручную указать массив сообщений ```js const { chat } = require("opex-ai") history = [ "привет", "привет, как дела?", "хорошо, а у тебя как?" ] await chat(history,?bot_name="Орех") ``` ```js const { chat } = require("opex-ai") await chat(["Привет, как дела?"],"Ева") ``` #### `history` - история сообщений в виде массива - контекст, чтобы бот мог отвечать, по смыслу учитывая прошлые сообщения #### `bot_name` - можно указать имя бота ### Developers - package by: [OpexDev](https://t.me/OpexDev)