mirai-openai-plugin | Mirai Console OpenAI ChatBot 插件 | Bot library
kandi X-RAY | mirai-openai-plugin Summary
kandi X-RAY | mirai-openai-plugin Summary
Mirai Console 下的 OpenAI Chat Bot 插件. Be based on OpenAI 目前对注册有一定要求,请先阅读 注册, 然后创建 Secret Key 注意,不是 Cookie Token, 是 api-key ~~另外,可以直连,不需要代理,只是注册账号的时候需要代理~~ api.openai.com 已列入黑名单,你需要配置代理 如果没有配置,本插件会尝试做一些特殊处理,~~一般情况下也能正常使用~~ api.openai.com IP地址变更,套了一层 cloudflare, 特殊处理失效, 表现为 403-text/html 响应. 开启聊天默认使用 chat (chat_prefix) 触发, 基于 /v1/chat/completions 默认模型 gpt-3.5-turbo 开启问答默认使用 Q&A (question_prefix) 触发, 基于 /v1/completions 默认模型 text-davinci-003 开启图片生成默认使用 ? (image_prefix) 触发 停止聊天或问答默认使用 stop 触发 重载配置默认使用 openai-reload (reload_prefix) 触发,使用后将重新加载配置,无需重启 Mirai Console. /v1/chat/completions 消耗 tokens 比 /v1/completions 小,但是聊天特化,请自行注意两者的区别 如果需要使用 GPT4,请参照 Model endpoint compatibility 替换模型. 默认情况下 权限检查 是关闭的, 需要在基本配置中配置开启 (开启后会在日志中给出权限ID). 预置 prompt (也称语境或人格) 用法例子 chat #猫娘 自定义配置请阅读 预置语境 预设的加载优先级 开始指令时指定(chat #xxx) > 用户绑定的预设 > 群绑定的预设. Since 1.1.0 添加 @ 触发聊天配置(手机端回复消息时会附带@, 请注意不要误触) Since 1.2.0 将 chat 功能对接至 节省 Usage Since 1.2.2 Fake SSLSocket Since 1.3.0 添加经济系统对接 和 预置语境 Since 1.3.1 添加一些可能会带来BUG的配置 立刻开始聊天, 保持前缀检查 Since 1.4.0 修改经济检查逻辑,仅在聊天开始前检查是否余额 Since 1.4.1 添加绑定预设的引用 ~ Since 1.5.0 添加控制 cname 功能的配置,用法:在 Java 启动参数中添加 -Dxyz.cssxsh.openai.cname=false.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of mirai-openai-plugin
mirai-openai-plugin Key Features
mirai-openai-plugin Examples and Code Snippets
Community Discussions
Trending Discussions on Bot
QUESTION
It's my first time seeing this feature from a Discord bot. I tried looking everywhere but it seems that I have failed. There's this feature from Captcha.bot Discord bot where you can accept input from a pop-up window inside Discord.
There's a button in an embedded message made by Captcha.bot where you will have to answer a Captcha test. After pressing the button, it creates a pop-up window like this.
After placing the right answer on the captcha bot, here's the aftermath of the experience.
All I want to learn is how to summon that pop-up window using Discord.js if it's even possible or at least learn how they did it.
...ANSWER
Answered 2022-Mar-30 at 07:12Those are called modals, and they will be available in the next discord.js version, v14. There is already a pull request for this.
In the meantime, you can use an npm package like discord-modals or discordjs-modal.
You can find a working example with the discord-modals
package below. Don't forget to install it first using npm i discord-modals
.
QUESTION
Using AWS Lambda functions with Python and Selenium, I want to create a undetectable headless chrome scraper by passing a headless chrome test. I check the undetectability of my headless scraper by opening up the test and taking a screenshot. I ran this test on a Local IDE and on a Lambda server.
Implementation:I will be using a python library called selenium-stealth and will follow their basic configuration:
...ANSWER
Answered 2021-Dec-18 at 02:01WebGL is a cross-platform, open web standard for a low-level 3D graphics API based on OpenGL ES, exposed to ECMAScript via the HTML5 Canvas element. WebGL at it's core is a Shader-based API using GLSL, with constructs that are semantically similar to those of the underlying OpenGL ES API. It follows the OpenGL ES specification, with some exceptions for the out of memory-managed languages such as JavaScript. WebGL 1.0 exposes the OpenGL ES 2.0 feature set; WebGL 2.0 exposes the OpenGL ES 3.0 API.
Now, with the availability of Selenium Stealth building of Undetectable Scraper using Selenium driven ChromeDriver initiated google-chrome Browsing Context have become much more easier.
selenium-stealthselenium-stealth is a python package selenium-stealth to prevent detection. This programme tries to make python selenium more stealthy. However, as of now selenium-stealth only support Selenium Chrome.
Code Block:
QUESTION
I handle a channelDelete event in my discord bot. My original intent was to do the following:
- Listen for when a channel is deleted
- Check to see if its type equals 'GUILD_CATEGORY'
- Delete all the channels under that category
I can typically access channels under a CategoryChannel
through its property called children
anywhere else except during this event...
ANSWER
Answered 2022-Feb-19 at 14:09Unfortunately, this is how CategoryChannels work in discord.js...
When the category is deleted, discord.js sends a request to the API to delete the channel. Only then, Discord sends you the event after the category is deleted.
What happens next is that the children are not located in the category anymore! So you will not be able to get the children inside the CategoryChannel object.
This is the code for the children
property
QUESTION
I am running a Spring Boot app that uses WebClient for both non-blocking and blocking HTTP requests. After the app has run for some time, all outgoing HTTP requests seem to get stuck.
WebClient is used to send requests to multiple hosts, but as an example, here is how it is initialized and used to send requests to Telegram:
WebClientConfig:
...ANSWER
Answered 2021-Dec-20 at 14:25I would propose to take a look in the RateLimiter direction. Maybe it does not work as expected, depending on the number of requests your application does over time. From the Javadoc for Ratelimiter: "It is important to note that the number of permits requested never affects the throttling of the request itself ... but it affects the throttling of the next request. I.e., if an expensive task arrives at an idle RateLimiter, it will be granted immediately, but it is the next request that will experience extra throttling, thus paying for the cost of the expensive task." Also helpful might be this discussion: github or github
I could imaginge there is some throttling adding up or other effect in the RateLimiter, i would try to play around with it and make sure this thing really works the way you want. Alternatively, consider using Spring @Scheduled to read from your queue. You might want to spice it up using embedded JMS for further goodies (message persistence etc).
QUESTION
Apparently, discord bots can have mobile status as opposed to the desktop (online) status that one gets by default.
After a bit of digging I found out that such a status is achieved by modifying the IDENTIFY packet
in discord.gateway.DiscordWebSocket.identify
modifying the value of $browser
to Discord Android
or Discord iOS
should theoretically get us the mobile status.
After modifying code snippets I found online which does this, I end up with this :
...ANSWER
Answered 2022-Feb-07 at 23:03The following works by subclassing the relevant class, and duplicating code with the relevant changes. We also have to subclass the Client
class, to overwrite the place where the gateway/websocket class is used. This results in a lot of duplicated code, however it does work, and requires neither dirty monkey-patching nor editing the library source code.
However, it does come with many of the same problems as editing the library source code - mainly that as the library is updated, this code will become out of date (if you're using the archived and obsolete version of the library, you have bigger problems instead).
QUESTION
SOLVED - The categories/channels were set to private which is why they couldn't be changed even with the correct permissions. My solution was to tell the user which ones and to add the role with the permissions manually. I added a message that said they can just give the bot administrator permissions and it will do it for them. Hopefully, this helps anyone who runs into this in the future.
I'm trying to change the permissions of multiple categories and channels using the following code:
...ANSWER
Answered 2021-Oct-31 at 12:05This is simply how Discord works, if a channel is private and the bot does not have administrator permissions or role that has permissions to view the channel, it is not able to view it.
You can create a new category that the bot can access like this:
QUESTION
I'm trying to make a Discord bot that just says if someone is online on the game.
However I keep getting this message:
[ERR_REQUIRE_ESM]: require() of ES Module from not supported. Instead change the require of index.js in... to a dynamic import() which is available in all CommonJS modules.
This is my code:
...ANSWER
Answered 2021-Sep-07 at 06:38node-fetch
v3 recently stopped support for the require
way of importing it in favor of ES Modules. You'll need to use ESM imports now, like:
QUESTION
If a user has the privacy setting "Allow direct messages from server members" turned off and a discord bot calls
...ANSWER
Answered 2022-Jan-22 at 22:03You can generate a Bad Request to the dm_channel. This can be accomplished by setting content to None, for example.
If it returns with 400 Bad Request
, you can DM them. If it returns with 403 Forbidden
, you can't.
QUESTION
I am working on certain stock-related projects where I have had a task to scrape all data on a daily basis for the last 5 years. i.e from 2016 to date. I particularly thought of using selenium because I can use crawler and bot to scrape the data based on the date. So I used the use of button click with selenium and now I want the same data that is displayed by the selenium browser to be fed by scrappy. This is the website I am working on right now. I have written the following code inside scrappy spider.
...ANSWER
Answered 2022-Jan-14 at 09:30The 2 solutions are not very different. Solution #2 fits better to your question, but choose whatever you prefer.
Solution 1 - create a response with the html's body from the driver and scraping it right away (you can also pass it as an argument to a function):
QUESTION
Scrapping links should be a simple feat, usually just grabbing the src
value of the a tag.
I recently came across this website (https://sunteccity.com.sg/promotions) where the href value of a tags of each item cannot be found, but the redirection still works. I'm trying to figure out a way to grab the items and their corresponding links. My typical python selenium code looks something as such
...ANSWER
Answered 2022-Jan-15 at 19:47You are using a wrong locator. It brings you a lot of irrelevant elements.
Instead of find_elements_by_class_name('thumb-img')
please try find_elements_by_css_selector('.collections-page .thumb-img')
so your code will be
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install mirai-openai-plugin
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page