No description
- C# 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .vscode | ||
| Properties | ||
| Settings | ||
| .gitignore | ||
| AITools.cs | ||
| appsettings.Development.json | ||
| appsettings.json | ||
| KodoShion.csproj | ||
| KodoShion.slnx | ||
| MilkyWorker.cs | ||
| Program.cs | ||
| README.md | ||
| Shion.cs | ||
KodoShion
一个基于 .NET Worker 的 QQ 群聊 AI 机器人项目。
它通过 Milky 接收群消息,使用 Ollama 本地模型生成回复,并支持按需调用工具获取随机图片。
功能简介
- 监听指定 QQ 群消息
- 被 @ 时触发 AI 回复
- 维护最近对话上下文(最多 10 轮)
- 支持工具调用:随机图片 URL
- 支持配置 HTTP 代理下载图片
技术栈
- .NET 10 Worker Service
- Milky.Net.Client
- OllamaSharp
- Microsoft.Agents.AI
环境要求
- .NET 10 SDK
- 可用的 Milky 服务(用于接收/发送 QQ 消息)
- 可用的 Ollama 服务与模型
快速开始
-
克隆项目并进入目录。
-
还原依赖:
dotnet restore -
修改
appsettings.json中的配置(见下文)。 -
运行项目:
dotnet run
配置说明
appsettings.json 主要配置项:
Milky.BaseAddress:Milky 服务地址(示例:ws://localhost:3010/)Milky.TargetGroupId:目标群号Ollama.Endpoint:Ollama 服务地址(示例:http://localhost:11434)Ollama.ModelId:使用的模型 IDApp.HttpProxy:可选,HTTP 代理地址(用于拉取图片)
运行逻辑(简版)
- 程序启动后连接 Milky WebSocket。
- 接收到目标群消息时:
- 未 @ 机器人:仅写入上下文。
- @ 机器人:调用模型生成回复并发送回群。
- 若模型工具调用返回图片 URL,则尝试下载并以图片形式发送。
说明
- 这是一个实验性质项目,建议先在测试群验证行为与配置。
- 如需更安全的生产部署,请补充鉴权、审计、限流与异常告警策略。