全平台,多模态(语音/图片)理解,自维护套件,实时信息支持
如果您没有所需的即时消息平台,或者您想开发一个新的应用程序,欢迎您为该仓库贡献。
您可以使用“Event.py”开发新的控制器。
我们使用自维护的 llm-kira 实现对话客户端
- 异步
- 支持聊天速率限制
- 支持私聊、群聊
- 支持黑名单和白名单系统
- 支持使用管理、角色以及自定义行文风格 🤖
- 内存池保证1000轮的上下文内存保存 💾
- 跨平台,还支持本地语音助手 🗣️
- 允许多个Api密钥轮询,便于管理和弹出窗口 📊
- 主动搜索要回复的内容并支持贴纸回复 😊
- 跨平台支持的通用接口,理论上允许访问任何聊天平台 🌐
- 拥有可移除的内容安全组件,也支持官方Api过滤内容 🔒
- 实时网页索引支持,万能爬虫 (支持 UrlQueryHtml url?q={}) 🕸️
- 多模态交互支持,图像Blip理解支持,语音识别 👂 , 贴纸支持 😎
请确保您的服务器有 1GB 的 RAM 和 10GB的 可用存储空间
对于 Arm 架构服务器: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
curl -LO https://raw.githubusercontent.com/LLMKira/Openaibot/main/setup.sh && sh setup.sh
给中国用户
curl -LO https://raw.kgithub.com/LLMKira/Openaibot/main/setup.sh && sh setup.sh
- 初始化
cp Config/app_exp.toml Config/app.toml
nano Config/app.toml
- 数据
apt-get install redis
systemctl start redis.service
- 配置/app.toml
# Comment out which part you don't want to start
# QQ Bot
[Controller.QQ]
master = [114, 514] # master user id
account = 0
http_host = 'http://localhost:8080' # Mirai http Server
ws_host = 'http://localhost:8080' # Mirai Websocket Server
verify_key = ""
trigger = false # Proactive response when appropriate
INTRO = "POWER BY OPENAI" # Suffixes for replies
ABOUT = "Created by github.com/LLMKira/Openaibot" # /about
WHITE = "Group NOT in WHITE list" # Whitelist/Blacklist tips
# Proxy set, but does not proxy openai api, only bot
proxy = { status = false, url = "http://127.0.0.1:7890" }
# Telegram Bot
[Controller.Telegram]
master = [114, 514] # master user id
botToken = '' # Bot Token @botfather
trigger = false
INTRO = "POWER BY OPENAI"
ABOUT = "Created by github.com/LLMKira/Openaibot"
WHITE = "Group NOT in WHITE list"
# 设置的代理,但是不代理 openai api, 只代理 bot
proxy = { status = false, url = "http://127.0.0.1:7890" }
# 基础对话事件服务器,Web支持或者音箱用
[Controller.BaseServer]
host = "127.0.0.1"
port = 9559
- Config/service.json
{
// ....other config
// ******Models
"backend": {
"type": "openai",
// TYPE!
"openai": {
"model": "text-davinci-003",
"token_limit": 4000
},
"chatgpt": {
"api": null,
"agree": false
}
},
}
- Telegram
请确保 机器人是组管理员 或 隐私模式已关闭.
我们的机器人可以多线程运行
apt install npm
npm install pm2@latest -g
# or
yarn global add pm2
# test bot
python3 main.py
# run bot
pm2 start pm.json
查看机器人的运行状况
pm2 monit
停止运行机器人
pm2 stop pm2.json
除了机器人,我们还有语音助手.
Voice Assistant 是一个依赖于 Web 的语音助手,你可以通过 Azure 或 Openai 的识别服务在小型设备上轻松地运行它
- 运行
BaseEvent
服务器
# 基础对话事件服务器,Web支持或者音箱用
[Controller.BaseServer]
port = 9559
- 运行 Vits 服务器
https://github.com/LlmKira/MoeGoe
- 运行助手
cd Assistant
cat install.md
pip3 install -r requirements.txt
python3 clinet.py
使用 /add_api_key
命令将 OpenaiKey 添加到 Config/api_keys.json
.
您可能对我们的多平台 ID 系统感到好奇。这我们将您的 ID 存储在我们的 json/数据库中的方式: real_id
+ suffix
.
- toml
在 app.toml
中使用您的真实 ID, 即为没有后缀的白名单.
- json/command
当您使用 用户/组 授权命令时,需要在真实ID后面加上对应的后缀ID.
Controller | suffix_id | desc |
---|---|---|
101 | ||
Telegram | 100 | |
Api | 103 |
models | token limit | cost |
---|---|---|
code-davinci-002 | 8000 | 在最初的有限测试期间,Codex 使用是免费的。 |
code-cushman-001 | 2048 | 在最初的有限测试期间,Codex 使用是免费的。 |
text-davinci-003 | 4000 | $0.0200 /1K tokens |
text-curie-001 | 2048 | $0.0020 /1K tokens |
text-babbage-001 | 2048 | $0.0005 /1K tokens |
text-ada-001 | 2048 | $0.0004 /1K tokens |
我们的 llm-kira
依赖库在没有 Redis 支持的时候,存储在当前包目录下。
程序本身除了 api_keys.json
service.json
assistants.json
全部存储在 Redis 中以获得稳健性。
如果你有放 config.json
,程序会自动初始化此文件。且使用 /config
命令可以更新配置到此文件。
因为缺乏维护者的原因,部分命令仅在部分平台起效。
chat - 交谈
write - 续写
forgetme - 重置记忆
remind - 场景设定 取消用短文本覆盖
voice - 启用语音支持
style - 设定偏好词
help - 帮助
trigger - 管理员启动主动回复
trace - 管理员启动关联频道贴文自动追踪
cross - 管理员启动是否交叉回复
silent - 管理员启动报错沉默
auto_adjust - 自动优化器
set_user_cold - 设置用户冷却时间
set_group_cold - 设置群组冷却时间
set_token_limit - 设置输出限制长度
set_input_limit - 设置输入限制长度
see_api_key - 现在几个 Api key
del_api_key - 删除 Api key
add_api_key - 增加 Api key
config - 获取/备份热配置文件
set_per_user_limit - 设置普通用户额度
set_per_hour_limit - 设置用户小时额度
promote_user_limit - 提升用户额度
reset_user_usage - 重置用户额度
add_block_group - 禁止群组
del_block_group - 解禁群组
add_block_user - 禁止用户
del_block_user - 解禁用户
add_white_group - 加入白名单群组
add_white_user - 加入白名单用户
del_white_group - 除名白名单群
del_white_user - 除名白名单人
update_detect - 更新敏感词
open_user_white_mode - 开用户白名单
open_group_white_mode - 开群组白名单
close_user_white_mode - 关用户白名单
close_group_white_mode - 关群组白名单
open - 开启机器人
close - 关闭机器人
change_head - 设定人设开关
change_style - 设定风格开关
部署文档的详细信息
Network Plugins/Proxy Settings/自定义模型名称/语音服务/图片理解/Censor配置请参见 服务器配置指南
详细接口/服务配置/自定义 请查看文档 部署指南
插件设置/代理设置/自定义模型名称/语音服务/图片理解/审查配置 请查看 服务配置
- ChatGPT Mirai Bot是一款基于 ChatGPT Web 端 Api 的 QQ 机器人
https://github.com/lss233/chatgpt-mirai-qq-bot
This project open source and available under
the [AGPL License](https://github.com/LLMKira/Openaibot/blob/main/LICENSE).
CLAUSE 说明了如何授权,声明,附加条款等内容。
你不会相信,但是 Ai 也写了这个 Readme 的一部分