| 特性 | 描述 |
|---|---|
| 🤖 多 API 支持 | 支持 Kobold、OpenAI、Ollama 等多种 LLM API |
| 🎭 智能代理系统 | 可创建和管理多个 AI 代理,每个代理可配置不同角色和设置 |
| 💾 聊天历史管理 | 完整的聊天记录保存和管理功能 |
| 🎨 主题切换 | 支持深色/浅色主题切换 |
| 🔌 插件系统 | 内置插件系统,支持动态加载和扩展功能 |
| 🌐 多语言支持 | 支持中英文界面 |
| 🖼️ 自定义背景 | 支持为代理设置自定义背景和头像 |
| ⚙️ 对话配置 | 丰富的对话参数配置选项(温度、最大长度、重复惩罚等) |
| 技术 | 描述 |
|---|---|
| .NET 10 | 底层运行时框架 |
| Blazor Server | Web 应用框架 |
| SharperLLM | 自研 LLM 多功能工具库 |
| Markdig | Markdown 渲染 |
| Newtonsoft.Json | JSON 序列化 |
| Bootstrap Icons | UI 图标 |
- .NET 10 SDK 或更高版本
- 操作系统: Windows, Linux, 或 macOS (未经测试)
安装 .NET 10。
- Windows 用户: 下载 .NET 10
- Linux 用户: 下载 .NET 10
- macOS 用户: 下载 .NET 10
⚠️ 注意:macOS 未经测试。
git clone --recurse-submodules https://github.com/Kas1o/ShimmerChat.git我没用 --recurse-submodules 怎么办?
先 cd ShimmerChat 到目录里,git submodule init 初始化子模块,git submodule update 拉取子模块。
cd ./ShimmerChat
dotnet run💡 提示: 请在项目根目录下的 ShimmerChat 目录中执行
dotnet run
ShimmerChat 支持多种 LLM API,您可以在 "API 设置" 页面进行配置:
- Kobold API: 支持完整的 Kobold 参数配置,包括温度、上下文长度、重复惩罚、采样参数等
- OpenAI API: 支持 OpenAI 兼容的 API 配置,包括 URL、密钥、模型等
- Ollama API: 支持本地 Ollama 服务接入
如果需要更改默认端口(5000),请在 appsettings.json 中添加 Kestrel 配置节点:
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*",
"Kestrel": {
"Endpoints": {
"Http": {
"Url": "http://localhost:你的端口号"
}
}
}
}ShimmerChat 提供了灵活的插件系统,自带了以下功能扩展:
- 🧠 动态提示(DynPrompt): 智能动态提示系统
- 📝 变量管理: 灵活的变量注入和管理
- 🧠 记忆注入: 持久化记忆功能
- 🧪 自定义 C# 代码执行: 运行自定义代码片段
- 📄 消息打印和格式化: 高级消息处理功能
- Markdig - BSD-2-Clause license
- Newtonsoft.Json - MIT license
- qdrant-dotnet - Apache-2.0 license
- SharperLLM - MIT license
- Tokenizers.HuggingFace.DotNet - Apache-2.0 license


