Skip to content

Commit 1207391

Browse files
committed
Merge remote-tracking branch 'origin/pr99' into pr99
2 parents fef452f + 59a0d4a commit 1207391

18 files changed

Lines changed: 681 additions & 112 deletions

File tree

README.md

Lines changed: 47 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,18 @@ zerobot [-h] [-m] [-n nickname] [-t token] [-u url] [-g url] [-p prefix] [-d|w]
192192

193193
- [x] 早安 | 晚安
194194

195+
</details>
196+
<details>
197+
<summary>违禁词检测</summary>
198+
199+
`import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/antiabuse"
200+
`
201+
- [x] 添加违禁词
202+
203+
- [x] 删除违禁词
204+
205+
- [x] 查看违禁词
206+
195207
</details>
196208
<details>
197209
<summary>ATRI</summary>
@@ -255,6 +267,8 @@ zerobot [-h] [-m] [-n nickname] [-t token] [-u url] [-g url] [-p prefix] [-d|w]
255267
- [x] 翻牌
256268

257269
- [x] 赞我
270+
271+
- [x] 群签到
258272

259273
- [x] [开启 | 关闭]入群验证
260274

@@ -276,6 +290,20 @@ zerobot [-h] [-m] [-n nickname] [-t token] [-u url] [-g url] [-p prefix] [-d|w]
276290

277291
- 设置欢迎语可选添加参数说明:{at}可在发送时艾特被欢迎者 {nickname}是被欢迎者名字 {avatar}是被欢迎者头像 {uid}是被欢迎者QQ号 {gid}是当前群群号 {groupname} 是当前群群名
278292

293+
</details>
294+
<details>
295+
<summary>群应用:AI声聊</summary>
296+
297+
`import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/airecord"`
298+
299+
- [x] 设置AI语音群号1048452984(tips:机器人任意所在群聊即可)
300+
301+
- [x] 设置AI语音模型
302+
303+
- [x] 查看AI语音配置
304+
305+
- [x] 发送AI语音xxx
306+
279307
</details>
280308
<details>
281309
<summary>定时指令触发器</summary>
@@ -384,6 +412,18 @@ print("run[CQ:image,file="+j["img"]+"]")
384412

385413
- [x] 设置默认限速为每 m [分钟 | 秒] n 次触发
386414

415+
</details>
416+
<details>
417+
<summary>aiimage</summary>
418+
419+
`import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/aiimage"`
420+
421+
- [x] 设置AI画图密钥xxx
422+
- [x] 设置AI画图接口地址https://api.siliconflow.cn/v1/images/generations
423+
- [x] 设置AI画图模型名Kwai-Kolors/Kolors
424+
- [x] 查看AI画图配置
425+
- [x] AI画图 [描述]
426+
387427
</details>
388428
<details>
389429
<summary>AIWife</summary>
@@ -1468,7 +1508,7 @@ print("run[CQ:image,file="+j["img"]+"]")
14681508

14691509
`import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/word_count"`
14701510

1471-
- [x] 热词 [群号] [消息数目]|热词 123456 1000
1511+
- [x] 热词 [消息数目]|热词 1000
14721512

14731513
</details>
14741514
<details>
@@ -1584,16 +1624,20 @@ print("run[CQ:image,file="+j["img"]+"]")
15841624
- [x] 设置AI聊天温度80
15851625
- [x] 设置AI聊天接口类型[OpenAI|OLLaMA|GenAI]
15861626
- [x] 设置AI聊天(不)支持系统提示词
1587-
- [x] 设置AI聊天接口地址https://xxx
1627+
- [x] 设置AI聊天接口地址https://api.siliconflow.cn/v1/chat/completions
15881628
- [x] 设置AI聊天密钥xxx
1589-
- [x] 设置AI聊天模型名xxx
1629+
- [x] 设置AI聊天模型名Qwen/Qwen3-8B
15901630
- [x] 查看AI聊天系统提示词
15911631
- [x] 重置AI聊天系统提示词
15921632
- [x] 设置AI聊天系统提示词xxx
15931633
- [x] 设置AI聊天分隔符`</think>`(留空则清除)
15941634
- [x] 设置AI聊天(不)响应AT
15951635
- [x] 设置AI聊天最大长度4096
15961636
- [x] 设置AI聊天TopP 0.9
1637+
- [x] 设置AI聊天(不)以AI语音输出
1638+
- [x] 查看AI聊天配置
1639+
- [x] 重置AI聊天
1640+
- [x] 群聊总结 [消息数目]|群聊总结 1000
15971641

15981642
</details>
15991643
<details>

go.mod

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ go 1.20
44

55
require (
66
github.com/Baidu-AIP/golang-sdk v1.1.1
7-
github.com/FloatTech/AnimeAPI v1.7.1-0.20250530055006-50f5c7587c5b
7+
github.com/FloatTech/AnimeAPI v1.7.1-0.20250717123723-d300df538b46
88
github.com/FloatTech/floatbox v0.0.0-20250513111443-adba80e84e80
99
github.com/FloatTech/gg v1.1.3
1010
github.com/FloatTech/imgfactory v0.2.2-0.20230413152719-e101cc3606ef
1111
github.com/FloatTech/rendercard v0.2.0
1212
github.com/FloatTech/sqlite v1.7.1
1313
github.com/FloatTech/ttl v0.0.0-20240716161252-965925764562
1414
github.com/FloatTech/zbpctrl v1.7.0
15-
github.com/FloatTech/zbputils v1.7.2-0.20250614165821-95cf57cf2434
15+
github.com/FloatTech/zbputils v1.7.2-0.20250812085410-2741050f465f
1616
github.com/RomiChan/syncx v0.0.0-20240418144900-b7402ffdebc7
1717
github.com/RomiChan/websocket v1.4.3-0.20220227141055-9b2c6168c9c5
1818
github.com/Tnze/go-mc v1.20.2
@@ -22,7 +22,7 @@ require (
2222
github.com/disintegration/imaging v1.6.2
2323
github.com/fumiama/ahsai v0.1.0
2424
github.com/fumiama/cron v1.3.0
25-
github.com/fumiama/deepinfra v0.0.0-20250601112706-0175c95164c1
25+
github.com/fumiama/deepinfra v0.0.0-20250812083039-f1b27f21d8c9
2626
github.com/fumiama/go-base16384 v1.7.0
2727
github.com/fumiama/go-registry v0.2.7
2828
github.com/fumiama/gotracemoe v0.0.3
@@ -45,7 +45,7 @@ require (
4545
github.com/sirupsen/logrus v1.9.3
4646
github.com/tidwall/gjson v1.18.0
4747
github.com/wcharczuk/go-chart/v2 v2.1.2
48-
github.com/wdvxdr1123/ZeroBot v1.8.2-0.20250330133859-27c25d9412b5
48+
github.com/wdvxdr1123/ZeroBot v1.8.2-0.20250804063440-ccc03e33ac20
4949
gitlab.com/gomidi/midi/v2 v2.1.7
5050
golang.org/x/image v0.24.0
5151
golang.org/x/sys v0.30.0

go.sum

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
github.com/Baidu-AIP/golang-sdk v1.1.1 h1:RQsAmgDSAkiq22I6n7XJ2t3afgzFeqjY46FGhvrx4cw=
22
github.com/Baidu-AIP/golang-sdk v1.1.1/go.mod h1:bXnGw7xPeKt8aF7UCELKrV6UZ/46spItONK1RQBQj1Y=
33
github.com/DATA-DOG/go-sqlmock v1.3.3/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM=
4-
github.com/FloatTech/AnimeAPI v1.7.1-0.20250530055006-50f5c7587c5b h1:H/1xpchTGmdoHqrszH4gjafCyHIhsGSFryAkBNsu8OI=
5-
github.com/FloatTech/AnimeAPI v1.7.1-0.20250530055006-50f5c7587c5b/go.mod h1:XXG1eBJf+eeWacQx5azsQKL5Gg7jDYTFyyZGIa/56js=
4+
github.com/FloatTech/AnimeAPI v1.7.1-0.20250717123723-d300df538b46 h1:X6ZbOWoZJIoHCin+CeU92Q3EwpvglyQ4gc5BZhOtAwo=
5+
github.com/FloatTech/AnimeAPI v1.7.1-0.20250717123723-d300df538b46/go.mod h1:XXG1eBJf+eeWacQx5azsQKL5Gg7jDYTFyyZGIa/56js=
66
github.com/FloatTech/floatbox v0.0.0-20250513111443-adba80e84e80 h1:lFD1pd8NkYCrw0QpTX/T5pJ67I7AL5eGxQ4v0r9f81Q=
77
github.com/FloatTech/floatbox v0.0.0-20250513111443-adba80e84e80/go.mod h1:IWoFFqu+0FeaHHQdddyiTRL5z7gJME6qHC96qh0R2sc=
88
github.com/FloatTech/gg v1.1.3 h1:+GlL02lTKsxJQr4WCuNwVxC1/eBZrCvypCIBtxuOFb4=
@@ -17,8 +17,8 @@ github.com/FloatTech/ttl v0.0.0-20240716161252-965925764562 h1:snfw7FNFym1eNnLrQ
1717
github.com/FloatTech/ttl v0.0.0-20240716161252-965925764562/go.mod h1:fHZFWGquNXuHttu9dUYoKuNbm3dzLETnIOnm1muSfDs=
1818
github.com/FloatTech/zbpctrl v1.7.0 h1:Hxo6EIhJo+pHjcQP9QgIJgluaT1pHH99zkk3njqTNMo=
1919
github.com/FloatTech/zbpctrl v1.7.0/go.mod h1:xmM4dSwHA02Gei3ogCRiG+RTrw/7Z69PfrN5NYf8BPE=
20-
github.com/FloatTech/zbputils v1.7.2-0.20250614165821-95cf57cf2434 h1:oEYQFQ2/qx10FtZKCNbW3Ohj/Iw71aM4RWpIu+LMmf8=
21-
github.com/FloatTech/zbputils v1.7.2-0.20250614165821-95cf57cf2434/go.mod h1:ArZ0fMAcmPEIXOqDmfzbSx+oYH8sssApQnbCu694iS8=
20+
github.com/FloatTech/zbputils v1.7.2-0.20250812085410-2741050f465f h1:5jnrFe9FTydb/pcUhxkWHuQVCwmYIZmneOkvmgHOwGI=
21+
github.com/FloatTech/zbputils v1.7.2-0.20250812085410-2741050f465f/go.mod h1:HG/yZwExV3b1Vqu4chbqwhfX4hx7gDS07QO436JkwIg=
2222
github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc=
2323
github.com/RomiChan/syncx v0.0.0-20240418144900-b7402ffdebc7 h1:S/ferNiehVjNaBMNNBxUjLtVmP/YWD6Yh79RfPv4ehU=
2424
github.com/RomiChan/syncx v0.0.0-20240418144900-b7402ffdebc7/go.mod h1:vD7Ra3Q9onRtojoY5sMCLQ7JBgjUsrXDnDKyFxqpf9w=
@@ -59,8 +59,8 @@ github.com/fumiama/ahsai v0.1.0 h1:LXD61Kaj6kJHa3AEGsLIfKNzcgaVxg7JB72OR4yNNZ4=
5959
github.com/fumiama/ahsai v0.1.0/go.mod h1:fFeNnqgo44i8FIaguK659aQryuZeFy+4klYLQu/rfdk=
6060
github.com/fumiama/cron v1.3.0 h1:ZWlwuexF+HQHl3cYytEE5HNwD99q+3vNZF1GrEiXCFo=
6161
github.com/fumiama/cron v1.3.0/go.mod h1:bz5Izvgi/xEUI8tlBN8BI2jr9Moo8N4or0KV8xXuPDY=
62-
github.com/fumiama/deepinfra v0.0.0-20250601112706-0175c95164c1 h1:qE3l/y4Y1gMD2NokQ5Nw4NIUjL8ZwYLPIHOExQNu4hM=
63-
github.com/fumiama/deepinfra v0.0.0-20250601112706-0175c95164c1/go.mod h1:wW05PQSn8mo1mZIoa6LBUE+3xIBjkoONvnfPTV5ZOhY=
62+
github.com/fumiama/deepinfra v0.0.0-20250812083039-f1b27f21d8c9 h1:X2h8RnCgC04LmwBoizYbFawXh/h6CouXmhYtaVuUn7k=
63+
github.com/fumiama/deepinfra v0.0.0-20250812083039-f1b27f21d8c9/go.mod h1:wW05PQSn8mo1mZIoa6LBUE+3xIBjkoONvnfPTV5ZOhY=
6464
github.com/fumiama/go-base16384 v1.7.0 h1:6fep7XPQWxRlh4Hu+KsdH+6+YdUp+w6CwRXtMWSsXCA=
6565
github.com/fumiama/go-base16384 v1.7.0/go.mod h1:OEn+947GV5gsbTAnyuUW/SrfxJYUdYupSIQXOuGOcXM=
6666
github.com/fumiama/go-registry v0.2.7 h1:tLEqgEpsiybQMqBv0dLHm5leia/z1DhajMupwnOHeNs=
@@ -199,8 +199,8 @@ github.com/vcaesar/cedar v0.20.2/go.mod h1:lyuGvALuZZDPNXwpzv/9LyxW+8Y6faN7zauFe
199199
github.com/vcaesar/tt v0.20.1 h1:D/jUeeVCNbq3ad8M7hhtB3J9x5RZ6I1n1eZ0BJp7M+4=
200200
github.com/wcharczuk/go-chart/v2 v2.1.2 h1:Y17/oYNuXwZg6TFag06qe8sBajwwsuvPiJJXcUcLL6E=
201201
github.com/wcharczuk/go-chart/v2 v2.1.2/go.mod h1:Zi4hbaqlWpYajnXB2K22IUYVXRXaLfSGNNR7P4ukyyQ=
202-
github.com/wdvxdr1123/ZeroBot v1.8.2-0.20250330133859-27c25d9412b5 h1:HsMcBsVpYuQv+W8pjX5WdwYROrFQP9c5Pbf4x4adDus=
203-
github.com/wdvxdr1123/ZeroBot v1.8.2-0.20250330133859-27c25d9412b5/go.mod h1:C86nQ0gIdAri4K2vg8IIQIslt08zzrKMcqYt8zhkx1M=
202+
github.com/wdvxdr1123/ZeroBot v1.8.2-0.20250804063440-ccc03e33ac20 h1:Yzd+cbiJQYtf6cZDP5ZB/LqjNWiV752+5P6Eua+wnic=
203+
github.com/wdvxdr1123/ZeroBot v1.8.2-0.20250804063440-ccc03e33ac20/go.mod h1:C86nQ0gIdAri4K2vg8IIQIslt08zzrKMcqYt8zhkx1M=
204204
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
205205
github.com/yusufpapurcu/wmi v1.2.4 h1:zFUKzehAFReQwLys1b/iSMl+JQGSCSjtVqQn9bBrPo0=
206206
github.com/yusufpapurcu/wmi v1.2.4/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0=

gomod2nix.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ schema = 3
55
version = "v1.1.1"
66
hash = "sha256-hKshA0K92bKuK92mmtM0osVmqLJcSbeobeWSDpQoRCo="
77
[mod."github.com/FloatTech/AnimeAPI"]
8-
version = "v1.7.1-0.20250530055006-50f5c7587c5b"
9-
hash = "sha256-xDXPwphMS26J02q/ysQy3CJPK5B9c7uoqwFt1xFIF5Q="
8+
version = "v1.7.1-0.20250717123723-d300df538b46"
9+
hash = "sha256-ZauOGdJb6XcAVsXvZ8B76+1daRm1s84vXoKwmvS0rn4="
1010
[mod."github.com/FloatTech/floatbox"]
1111
version = "v0.0.0-20250513111443-adba80e84e80"
1212
hash = "sha256-Zt9zkUa3qqldrSttAq66YLPZPxrnkOR2MaU7oapIWEE="
@@ -227,8 +227,8 @@ schema = 3
227227
version = "v2.1.2"
228228
hash = "sha256-GXWWea/u6BezTsPPrWhTYiTetPP/YW6P+Sj4YdocPaM="
229229
[mod."github.com/wdvxdr1123/ZeroBot"]
230-
version = "v1.8.2-0.20250330133859-27c25d9412b5"
231-
hash = "sha256-gT3uFTg5E0Th3r1M1vLzr0QtOjbMusqEjD/ckoBdDFc="
230+
version = "v1.8.2-0.20250707133321-6197b8ee5df7"
231+
hash = "sha256-iVAgUtXm/SO3BcdW4XDRFnbZBUk9b1GbIILajibcFo8="
232232
[mod."github.com/yusufpapurcu/wmi"]
233233
version = "v1.2.4"
234234
hash = "sha256-N+YDBjOW59YOsZ2lRBVtFsEEi48KhNQRb63/0ZSU3bA="

main.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ import (
3838

3939
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/sleepmanage" // 统计睡眠时间
4040

41+
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/airecord" // 群应用:AI声聊
42+
4143
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/atri" // ATRI词库
4244

4345
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/manager" // 群管
@@ -65,6 +67,7 @@ import (
6567
_ "github.com/FloatTech/ZeroBot-Plugin/custom" // 自定义插件合集
6668
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/ahsai" // ahsai tts
6769
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/aifalse" // 服务器监控
70+
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/aiimage" // AI画图
6871
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/aiwife" // 随机老婆
6972
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/alipayvoice" // 支付宝到账语音
7073
_ "github.com/FloatTech/ZeroBot-Plugin/plugin/animetrace" // AnimeTrace 动画/Galgame识别

plugin/aichat/cfg.go

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package aichat
22

33
import (
4+
"fmt"
45
"strconv"
56
"strings"
67

@@ -13,7 +14,9 @@ import (
1314
"github.com/wdvxdr1123/ZeroBot/message"
1415
)
1516

16-
var cfg = newconfig()
17+
var (
18+
cfg = newconfig()
19+
)
1720

1821
type config struct {
1922
ModelName string
@@ -26,6 +29,7 @@ type config struct {
2629
Separator string
2730
NoReplyAT bool
2831
NoSystemP bool
32+
NoRecord bool
2933
}
3034

3135
func newconfig() config {
@@ -151,3 +155,44 @@ func newextrasetfloat32(ptr *float32) func(ctx *zero.Ctx) {
151155
ctx.SendChain(message.Text("成功"))
152156
}
153157
}
158+
159+
func printConfig(rate int64, temperature int64, cfg config) string {
160+
maxn := cfg.MaxN
161+
if maxn == 0 {
162+
maxn = 4096
163+
}
164+
topp := cfg.TopP
165+
if topp == 0 {
166+
topp = 0.9
167+
}
168+
var builder strings.Builder
169+
builder.WriteString("当前AI聊天配置:\n")
170+
builder.WriteString(fmt.Sprintf("• 模型名:%s\n", cfg.ModelName))
171+
builder.WriteString(fmt.Sprintf("• 接口类型:%d(%s)\n", cfg.Type, apilist[cfg.Type]))
172+
builder.WriteString(fmt.Sprintf("• 触发概率:%d%%\n", rate))
173+
builder.WriteString(fmt.Sprintf("• 温度:%.2f\n", float32(temperature)/100))
174+
builder.WriteString(fmt.Sprintf("• 最大长度:%d\n", maxn))
175+
builder.WriteString(fmt.Sprintf("• TopP:%.1f\n", topp))
176+
builder.WriteString(fmt.Sprintf("• 系统提示词:%s\n", cfg.SystemP))
177+
builder.WriteString(fmt.Sprintf("• 接口地址:%s\n", cfg.API))
178+
builder.WriteString(fmt.Sprintf("• 密钥:%s\n", maskKey(cfg.Key)))
179+
builder.WriteString(fmt.Sprintf("• 分隔符:%s\n", cfg.Separator))
180+
builder.WriteString(fmt.Sprintf("• 响应@:%s\n", yesNo(!cfg.NoReplyAT)))
181+
builder.WriteString(fmt.Sprintf("• 支持系统提示词:%s\n", yesNo(!cfg.NoSystemP)))
182+
builder.WriteString(fmt.Sprintf("• 以AI语音输出:%s\n", yesNo(!cfg.NoRecord)))
183+
return builder.String()
184+
}
185+
186+
func maskKey(key string) string {
187+
if len(key) <= 4 {
188+
return "****"
189+
}
190+
return key[:2] + strings.Repeat("*", len(key)-4) + key[len(key)-2:]
191+
}
192+
193+
func yesNo(b bool) string {
194+
if b {
195+
return "是"
196+
}
197+
return "否"
198+
}

0 commit comments

Comments
 (0)