项目简介
sd_chat 是一个基于 Model Context Protocol (MCP) 构建的应用后端,它作为一个 MCP 服务器,旨在通过自然语言聊天的方式,让用户能够方便地使用 Stable Diffusion 进行图像生成,并管理和安装来自 Civitai 社区的模型资源。
主要功能点
- 文生图 (txt2img) 生成: 通过自然语言指令,调用 Stable Diffusion 模型生成图像。支持选择不同的 Checkpoint 和 Lora 模型,调整生成参数。
- Civitai 模型管理: 集成 Civitai API,允许用户通过聊天指令搜索、查看和安装 Civitai 上的 Checkpoint 和 Lora 模型。
- 模型资源管理: 支持列出已安装的 Checkpoint 和 Lora 模型,方便用户了解当前可用的模型资源。
- 默认模型安装: 提供快速安装预设的常用 Checkpoint 模型的功能。
- 灵活的API选择: 支持 Diffusers 和 sdwebuiapi 两种 Stable Diffusion API 后端。
- 用户友好的配置界面: 提供 Gradio UI 界面,方便用户配置服务器设置,包括 API 选择、API 密钥、模型路径等。
安装步骤
- 安装 uv: 根据 uv 安装指南 安装 uv 包管理器。
- 克隆仓库: 使用 'git clone https://github.com/NON906/sd_chat' 命令克隆仓库到本地。
- 进入仓库目录: 使用 'cd sd_chat' 命令进入克隆下来的仓库目录。
- 安装依赖: 运行 'uv sync --all-extras' 命令安装项目依赖。
- 启动配置界面: 运行 'uv run sd-chat-ui' 命令打开配置用户界面。
- 配置 API 和 Civitai 密钥: 在配置界面中,填写 "Image Generation API" 和 "Civitai API Key" 等必要信息,并点击 "Save" 按钮。
- 复制 MCP Server Template: 保存配置后,界面会显示 "MCP Server Template" 的 JSON 代码模板。复制这段 JSON 代码。
- 配置 MCP 客户端: 将复制的 JSON 代码添加到你的 MCP 客户端的配置文件中。例如,对于 Claude Desktop App (Windows 版本),需要将代码添加到 'C:\Users\xxx\AppData\Roaming\Claude\claude_desktop_config.json' 文件中。
服务器配置
以下是 MCP 客户端需要配置的服务器启动信息 JSON 模板。请根据你的操作系统和实际路径进行调整:
通用配置 (例如 Linux/macOS):
{ "mcpServers": { "sd_chat": { "command": "uv", "args": [ "--directory", "/path/to/sd_chat", // 替换为 sd_chat 仓库的实际路径 "run", "run.py", "-f", "/path/to/settings.json" // 替换为 settings.json 文件的实际路径 ] } } }
Windows 配置:
{ "mcpServers": { "sd_chat": { "command": "cmd", "args": [ "/c", "/path/to/sd_chat\\.venv\\Scripts\\activate", // 替换为 .venv\\Scripts\\activate 的实际路径 "&&", "python", "/path/to/sd_chat\\run.py", // 替换为 run.py 的实际路径 "-f", "/path/to/settings.json" // 替换为 settings.json 文件的实际路径 ] } } }
参数说明:
- 'server name': 服务器名称,这里是 "sd_chat"。
- 'command': 启动服务器的命令,例如 "uv" 或 "cmd"。
- 'args': 命令参数列表:
- '--directory /path/to/sd_chat': 指定 sd_chat 仓库的根目录 (仅 uv 命令需要)。
- 'run': uv 命令的子命令,用于运行项目脚本。
- 'run.py': 服务器主程序脚本。
- '-f /path/to/settings.json': 指定配置文件路径。
注意:
- 请将 '/path/to/sd_chat' 和 '/path/to/settings.json' 替换为你的实际文件路径。
- Windows 路径需要使用双反斜杠 '\' 或单斜杠 '/'。
- 建议在配置前先运行一次 'uv run sd-chat-ui' 并保存设置,生成 'settings.json' 文件。
基本使用方法
配置完成后,在支持 MCP 协议的客户端(如 Claude Desktop App, MCP-Bridge, mcp-cli)中连接到 sd_chat 服务器。
你可以通过自然语言指令与 LLM 对话,指示 sd_chat 服务器执行以下操作:
- 查询 Lora 模型: 例如 "Do you have a Lora for xxx?"
- 安装 Lora 模型: 例如 "Please install the Lora for xxx."
- 生成图像: 例如 "Generate an image of a girl using xxx(model name)."
更多使用示例请参考仓库 README.md 文件。
信息
分类
AI与计算