# LM Studio 工具集 这个目录放的是和 `LM Studio` 相关的**工具脚本**,不是长期运行服务。 ## 目录定位 - `tools/lmstudio/` - 可执行工具 - 临时代理 - 包装器生成器 - `tools/lmstudio/probes/` - 实测脚本 - 行为探针 - 接口验证脚本 如果一个组件需要长期运行、对外提供 HTTP 服务,它应该放到 `services/` 下,而不是这里。 ## 文件说明 ### [wrapper_generator.py](E:\opencode\Fix-HauHasuCS-ThinkingMode-Toggle\tools\lmstudio\wrapper_generator.py) 用途: - 基于官方 `Qwen3.6` 的 `model.yaml` / `manifest.json` - 生成一个面向本地模型的 `LM Studio wrapper` - 让本地模型具备 reasoning 元数据、UI reasoning 开关、原生 `/api/v1/chat` reasoning 能力 适合场景: - 你有一个本地 GGUF - 模型本身支持 thinking 开关 - 但 `LM Studio` 没把它识别成 reasoning-capable model ### [openai_reasoning_proxy.py](E:\opencode\Fix-HauHasuCS-ThinkingMode-Toggle\tools\lmstudio\openai_reasoning_proxy.py) 用途: - 这是早期做的一个较小型 OpenAI 兼容代理 - 重点是把 `reasoning` / `enable_thinking` 翻译到 `LM Studio /api/v1/chat` 定位: - 工具型原型 - 小范围实验和快速验证 说明: - 现在更完整的长期服务方案已经在: [services/litellm-lmstudio-adapter](E:\opencode\Fix-HauHasuCS-ThinkingMode-Toggle\services\litellm-lmstudio-adapter) ## probes 子目录 ### [probes/lmstudio_thinking_probe.py](E:\opencode\Fix-HauHasuCS-ThinkingMode-Toggle\tools\lmstudio\probes\lmstudio_thinking_probe.py) 用途: - 顺序测试 `LM Studio` 的 OpenAI 兼容接口和原生接口 - 对比官方模型、本地模型、wrapper 模型在 reasoning 开关上的差异 ### [probes/lmstudio_openai_reasoning_probe.py](E:\opencode\Fix-HauHasuCS-ThinkingMode-Toggle\tools\lmstudio\probes\lmstudio_openai_reasoning_probe.py) 用途: - 针对 `LM Studio /v1/chat/completions` - 批量测试各种可能的 reasoning 字段 - 判断 OpenAI 兼容层是否真的把 thinking 开关传到了底层模板 ### [probes/llama_cpp_openai_probe.py](E:\opencode\Fix-HauHasuCS-ThinkingMode-Toggle\tools\lmstudio\probes\llama_cpp_openai_probe.py) 用途: - 测试 `llama.cpp` OpenAI 兼容接口 - 对比官方模型和 HauhauCS 模型在 OpenAI 兼容层下的 reasoning 行为 ## 什么时候用哪个 | 需求 | 用哪个 | | --- | --- | | 生成本地模型 wrapper | `wrapper_generator.py` | | 快速做一个 reasoning 翻译代理 | `openai_reasoning_proxy.py` | | 验证 LM Studio 原生与兼容层差异 | `probes/lmstudio_thinking_probe.py` | | 批量试 OpenAI reasoning 字段 | `probes/lmstudio_openai_reasoning_probe.py` | | 测 llama.cpp 路由器或兼容层 | `probes/llama_cpp_openai_probe.py` | ## 和 services 的区别 - `tools/` 是工具 - 运行一下就结束 - 用来生成、验证、排查 - `services/` 是服务 - 需要启动后持续监听端口 - 用来接入 LiteLLM、应用、统一 API 调用链 当前正式的服务型组件是: - [services/litellm-lmstudio-adapter](E:\opencode\Fix-HauHasuCS-ThinkingMode-Toggle\services\litellm-lmstudio-adapter)