glm-4.7-flash-report
用于克劳德代码的快速GLM-4.7-Flash-PRISM包装器,与谷歌搜索和视觉集成。
特性
- 快速GLM-4.7-闪光模型:针对RTX 4090 24GB和198k上下文进行了优化
- 谷歌搜索:通过Google自定义搜索API(MCP)进行快速网络搜索
- 视觉支持:通过OpenRouter集成(自动路由代理)进行图像分析
- 单独的对话历史记录:每个包装器的独立对话数据
- 汽车服务管理:服务器自动启动/关闭
图像路由
包装器使用HTTP代理来拦截Claude Code API请求:
- 文本请求 → 转发到本地GLM-4.7-Flash模型
- 图像请求 → 通过检查来检测
type: "image"块→ 转换为OpenAI格式→ 发送到OpenRouter视觉API→ 响应转换回Anthropic格式
# Image routing logic
if has_image_content(request):
# Route to OpenRouter (with format conversion)
target_url = "https://openrouter.ai/api/v1/chat/completions"
else:
# Route to local GLM model
target_url = local_api_url谷歌搜索集成
包装器禁用了Claude的内置WebSearch,并通过MCP将其替换为Google搜索:
"disallowedTools": ["WebSearch"]→ 禁用克劳德的内部搜索- 系统快速注射→ 告诉克劳德
google_searchMCP工具 - 需要搜索时→ 克劳德使用
google_search改用MCP工具 - MCP服务器(stdio)→ 调用Google API→ 直接返回结果
// Wrapper settings
"disallowedTools": ["WebSearch"], // Disable built-in
"appendSystemPrompt": "Use 'google_search' tool when..." // Add MCP tool系统要求
- Linux 系统
- 配备24GB VRAM的NVIDIA GPU(在RTX 4090上测试)
- 为GLM-4.7-Flash构建和配置的llama.cpp
- 用于MCP服务器的Node.js 18+
- Python 3,带有PIL、OpenCV和numpy的视觉脚本
安装
1.克隆和安装
cd /path/to/your/AI/directory
git clone https://github.com/Indras-Mirror/GLM-4.7-Flash-Rapport.git
cd GLM-4.7-Flash-Rapport2.安装依赖项
# Install Node.js dependencies for MCP servers
cd lib/mcp-servers/googlesearch/mcp-server
npm install
cd ../../visionproxy/mcp-server
npm install
# Install Python dependencies for vision scripts
pip install Pillow opencv-python numpy3.配置环境变量
创建 ~/.glm-flash-env 文件或添加到您的 ~/.bashrc:
# ============================================================================
# REQUIRED - GLM-4.7-Flash Model
# ============================================================================
export GLM_FLASH_SERVER_DIR="$HOME/AI/GLM-4.7-Flash-PRISM"
export GLM_FLASH_PORT="8082"
# ============================================================================
# OPTIONAL - Vision Support (for image analysis)
# ============================================================================
# Get key at: https://openrouter.ai/
export OPENROUTER_API_KEY="your-openrouter-api-key"
export OPENROUTER_MODEL="z-ai/glm-4.6v"
export IMAGE_ROUTING_PROXY_PORT="9101"
# ============================================================================
# OPTIONAL - Google Search (for web search)
# ============================================================================
# See "Getting API Keys" section below for setup instructions
export GOOGLE_SEARCH_API_KEY="your-google-api-key"
export GOOGLE_SEARCH_CX="your-custom-search-engine-id"备注:包装器可以在没有Vision或Google搜索的情况下工作,但您只能生成文本。添加两者以获得完整功能。
4.安装包装材料
cd /path/to/GLM-4.7-Flash-Rapport
chmod +x wrapper/glm-flash
chmod +x lib/base-wrapper.sh
# Link to your bin directory
ln -s "$(pwd)/wrapper/glm-flash" ~/.local/bin/glm-flash5.配置MCP服务器
选项A:自动设置(推荐)
cd /path/to/GLM-4.7-Flash-Rapport/claude-code-config
./claude-code-mcp-setup.sh此脚本会自动执行以下操作:
- 查找您的Claude Code配置目录
- 添加谷歌搜索和视觉代理MCP服务器
- 安装技能
~/.claude/skills/ - 创建现有配置的备份
选项B:手动设置
添加到您的 ~/.config/Claude/claude_desktop_config.json (或 ~/.config/claude-code/settings.json):
{
"mcpServers": {
"googlesearch": {
"command": "node",
"args": [
"/path/to/GLM-4.7-Flash-Rapport/lib/mcp-servers/googlesearch/mcp-server/index.js"
],
"env": {
"GOOGLE_SEARCH_API_KEY": "your-google-api-key",
"GOOGLE_SEARCH_CX": "your-cx-id"
}
},
"visionproxy": {
"command": "node",
"args": [
"/path/to/GLM-4.7-Flash-Rapport/lib/mcp-servers/visionproxy/mcp-server/index.js"
],
"env": {
"OPENROUTER_API_KEY": "your-openrouter-api-key"
}
}
}
}6.安装技能
mkdir -p ~/.claude/skills
cp -r skills/* ~/.claude/skills/获取API密钥
OpenRouter API密钥(用于视觉)
- 访问https://openrouter.ai/
- 创建帐户并生成API密钥
- 集
OPENROUTER_API_KEY环境变量
Google自定义搜索API(详细设置)
第一步:创建谷歌云项目
- 首选 谷歌云控制台
- 使用您的Google帐户登录
- 点击顶部的项目下拉列表
- 点击“新建项目”
- 输入项目名称(例如“Claude代码搜索”)
- 点击“创建”
步骤2:启用自定义搜索API
- 在Google Cloud控制台中,导航到:
API和服务>库
- 搜索“自定义搜索API”
- 点击它并按“启用”
步骤3:创建API凭据
- 导航到 API和服务>凭据
- 点击“创建凭据”
- 选择“API密钥”
- 复制生成的API密钥
- (可选)限制密钥:
- 点击“编辑API键” - 在“应用程序限制”下,选择“无”进行本地测试 - 在“API限制”下,仅选择“自定义搜索API” - 点击“保存”
步骤4:创建自定义搜索引擎
- 首选 谷歌自定义搜索
- 点击“添加”
- 输入要搜索的站点(例如。,
*.www.google.com搜索整个网络) - 为您的搜索引擎命名
- 点击“创建”
步骤5:配置搜索引擎
- 创建后,单击搜索引擎的“控制面板”
- 在“设置”下,找到“搜索引擎ID”
- 复制您的CX ID(搜索引擎ID)
- 重要:在“设置”下,启用“搜索整个网络”切换
- 这允许在指定网站之外进行搜索
- 如有需要,点击“保存”
步骤6:测试您的设置
# Test the API directly
curl "https://www.googleapis.com/customsearch/v1?key=$GOOGLE_SEARCH_API_KEY&cx=$GOOGLE_SEARCH_CX&q=test&num=1"您应该看到带有搜索数据的JSON结果。
用法
# Text generation
glm-flash --skip "your prompt here"
# With image (auto-routes to vision)
glm-flash --skip "analyze this image" screenshot.png
# With search (uses Google Search MCP)
glm-flash --skip "what's the latest news about AI?"
# Continue previous conversation
glm-flash --continue环境变量引用
| 变量 | 必填 | 描述 |
|---|---|---|
GLM_FLASH_SERVER_DIR | 是 | GLM模型目录的路径 |
GLM_FLASH_PORT | 否 | 本地服务器端口(默认:8082) |
OPENROUTER_API_KEY | 用于视觉 | 用于图像分析的OpenRouter API密钥 |
GOOGLE_SEARCH_API_KEY | 用于搜索 | Google自定义搜索API键 |
GOOGLE_SEARCH_CX | 搜索 | 谷歌自定义搜索引擎ID |
IMAGE_ROUTING_PROXY_PORT | 否 | 映像路由代理端口(默认值:9101) |
OPENROUTER_MODEL | 否 | 要使用的视觉模型(默认值:z-ai/glm-4.6v) |
MCP工具
谷歌搜索(google_search)
- 通过Google自定义搜索API进行快速网络搜索
- 返回标题、代码段和URL
视觉工具
describe_image:自然语言图像描述analyze_image:技术图像属性(尺寸、颜色)detect_faces:人脸检测和分析get_image_metadata:EXIF数据提取
项目结构
GLM-4.7-Flash-Rapport/
├── wrapper/
│ └── glm-flash # Main wrapper script
├── lib/
│ ├── base-wrapper.sh # Base wrapper framework
│ ├── image-routing-proxy.py # Image routing HTTP proxy
│ └── mcp-servers/
│ ├── googlesearch/ # Google Search MCP server
│ └── visionproxy/ # Vision MCP server + Python scripts
├── skills/ # Claude Code skills (google-search, vision-analysis)
├── claude-code-config/ # Claude Code MCP setup script + templates
├── utils/ # Standalone proxy servers (alternative)
├── assets/ # Screenshots
├── llama-cpp-settings.sh # Reference llama.cpp configuration
├── GLM-4.7-Flash-Rapport.sh # Quick-launch script
└── install.sh # Installation script故障排除
服务器无法启动
- 验证
GLM_FLASH_SERVER_DIR指向有效的llama.cpp模型目录 - 检查一下
start-local-server.sh存在于模型目录中 - 审核日志:
tail -f /tmp/glm-flash-server.log
愿景不起作用
- 验证
OPENROUTER_API_KEY已设置 - 检查映像路由代理日志:
tail -f /tmp/glm-flash-image-routing-proxy.log
谷歌搜索不起作用
- 验证
GOOGLE_SEARCH_API_KEY和GOOGLE_SEARCH_CX已设定 - 确保在Google云控制台中启用自定义搜索API
- 确保您的搜索引擎配置为“搜索整个网络”
- 测试MCP服务器:
claude mcp list
架构说明
为什么选择MCP而不是HTTP代理?
此包装器最初使用HTTP代理服务器(包含在 utils/)拦截了API请求。虽然功能正常,但代理会导致会话链膨胀并增加延迟。
MCP服务器通过直接的stdio集成、更清晰的对话和更快的响应来解决这个问题。代理服务器仍保留在 utils/ 用于实验或非克劳德代码集成。
看 utils/README.md 有关独立代理服务器的详细信息。
______________________________________________________________________
谷歌搜索设置帮助
这是最难工作的部分。以下是一些提示:
常见问题和修复
问题:“搜索未返回任何结果”
最可能的原因:“搜索整个网络”切换未启用。
修复:
- 首选https://cse.google.com/
- 点击您的搜索引擎→ “控制面板”
- 在“设置”下→ 搜索“搜索整个网络”
- 快捷开关 开
- 点击“保存”
问题:“API关键错误”或“禁止”
最可能的原因:未启用API限制或自定义搜索API。
修复:
- 首选 谷歌云控制台
- API和服务→ 图书馆→ 搜索“自定义搜索API”
- 如果尚未启用,请单击它并按“启用”
- API和服务→ 凭证→ 编辑API密钥
- 在“API限制”下,选择仅“自定义搜索API”
- 在“应用程序限制”下,选择“无”(用于本地测试)
问题:“仅获得相同的少数结果”
最可能的原因:搜索引擎仅为特定网站配置。
修复:
- 首选https://cse.google.com/
- 您的搜索引擎→ “设置”选项卡
- 在“要搜索的网站”下,添加:
*.www.google.com(或取消网站限制) - 启用“搜索整个网络”切换
- 保存
问题:“未找到CX ID”
最可能的原因:找错地方或尚未创建。
修复:
- 首选https://cse.google.com/(不是谷歌云控制台)
- 你必须先创建一个自定义搜索引擎
- 创建后,单击“控制面板”
- 在“设置”下→ “搜索引擎ID”是您的客户体验
- 它看起来像:
017576662512468239146:abc123def45
问题:“超出每日限额”
原因:谷歌自定义搜索API有免费等级限制(每天100次搜索)。
解决方案:
- 免费版应该足够测试
- 如果您遇到此问题,请等待24小时或启用计费(个人使用不会收取太多费用)
快速测试命令
# Test your API keys directly
curl "https://www.googleapis.com/customsearch/v1?key=$GOOGLE_SEARCH_API_KEY&cx=$GOOGLE_SEARCH_CX&q=test+query&num=5"预期响应:JSON格式 "items" 包含搜索结果的数组。
如果你遇到错误:
400→ API密钥无效或限制错误403→ 未启用自定义搜索API- 不
"items"→ 未启用“搜索整个网络”
最小可行设置
如果你只是想快速测试:
- API密钥:从https://console.cloud.google.com/apis/credentials
- CX-ID:从https://cse.google.com/(创建任何搜索引擎,然后启用“搜索整个网络”)
- 测试:运行上面的curl命令
不要过度考虑搜索引擎的配置——“搜索整个网络”开关是一个神奇的设置,使其像普通的谷歌一样工作。
许可证
MIT许可证
