LLM 连接和语音识别

Screph 支持云和本地连接,但不执行运行时回退到另一个配置文件。用户内容仅发送至为功能选择的运行时;保存连接可能会启动目录/访问探测,而激活语音设置可以在没有项目内容的情况下运行单独的检查。

1. LLM 连接

打开设置→LLM 设置。每个连接都存储其提供者类型、端点、所选模型和访问参数。支持的连接有:

  • OpenAI, Anthropic, Gemini, OpenRouter;
  • Ollama 和 LM Studio;
  • 自定义 OpenAI 兼容端点;
  • LiteLLM Proxy — 以高级模式显示。

请求通过共享 LiteLLM 运行时运行。保存预定义的连接行会立即启动访问/目录检查。在通用配置文件编辑器中,Check 首先保存当前表单和 API 密钥,然后运行探针;它不是只读的。凭证、端点或功能错误不会将请求重新路由到另一个配置文件。

已验证的访问/模型状态仅存在于当前连接服务实例中。新启动后,配置的模型可能会显示为访问未验证。即使提供商未列出配置文件的手动模型,也会将其附加到成功的目录中。对于 cv 角色,列表使用名称/元数据启发式,但在未找到愿景候选结果时回退到完整列表;组合中的存在和一般测试并不能证明图像或结构化响应支持。

Screph Cloud LLM 是计划的方向,而不是当前可用的连接。对于当前的工作流,配置 BYOK 提供商或本地 Ollama/LM Studio。

2. 将配置文件分配给角色

一个连接不必为整个产品提供服务。角色为特定路径选择配置文件/模型;该角色本身不会创建单独的功能或安全策略:

  • assistant — 内置 AI Assistant;
  • cv — CV 自动调节、管道规划和 Action CV/VLM;
  • codegen — Screph Code;
  • semantic_selection — 语义元素选择;
  • test — 连接和模型测试。

保存第一个配置文件时,清空 cvtestsemantic_selection 角色自动分配给它;仅当启用该 UI 时,才会包含 codegenassistant 角色不会自动填充。这是初始分配,而不是运行时回退。删除配置文件会清除引用它的每个角色。

如果角色配置文件被禁用、删除或不可用,相关操作显然会失败。解析顺序是显式请求配置文件/模型,然后是角色配置文件/模型,然后是配置文件的默认模型。即使基本连接通过了常规检查,也要单独测试角色。

3. 按键、本地操作和数据传输

  • LLM 和当前语音 API 密钥通过系统密钥环存储;在 Windows 版本中,这是服务名称 Screph 下的 Windows Credential Manager。 ScrephData/settings_modules/settings.json 中的普通配置文件负载包含提供者种类、模型、端点、超时和角色,但不包含 API-key 值。
  • 如果密钥环不可用,则保存密钥失败:普通设置 JSON 没有明文回退。环境变量仍然是显式的运行时源,并且可以由子进程继承。
  • Ollama 和 LM Studio 可以在服务和模型实际在本地运行时将请求保留在本地计算机上。
  • 云配置文件可以将提示、选定的上下文和图像发送给其提供商。确切的有效负载取决于功能及其隐私/附件设置。
  • AI Assistant 中,图片和产物共享默认关闭。 Action CV 默认为 block_unredacted,它会阻止提供者调用; roi_only 绘制 ROI 之外的所有内容,而 allow_unredacted 明确允许原始帧。其提示还包括操作类型、时间和源、键或按钮和坐标(如果存在)、ROI 提示、帧元数据和哈希值、响应契约和允许的方法目录。

当共享 LLM 请求实际收到image_path时,Screph 读取文件,将其转换为 RGB JPEG,将其缩小到最多 1024×1024 质量为 85,并发送带有 detail=low 的 Base64 数据 URL。对于 CV/image 请求,配置文件超时替换为 120 分钟传输超时;重试计数仍然来自请求/配置文件设置并传递给 LiteLLM。

成功的共享运行时响应会将本地行附加到 ScrephData/llm/usage_events.jsonl,其中包含特征、配置文件、模型、令牌、计算成本、延迟和状态。提示/响应文本未写在那里。没有自动保留或清除按钮,并且通常不存在响应之前引发的异常,因此它不是完整的计费或错误分类帐。

秘密的存储位置以及如何删除它们 →

4. 语音识别

打开 设置 → 语音识别。该部分包括设置和测试选项卡;语音注释使用选定的识别器。提供者感知适配器的实现目的是:

  • Vosk — 本地批处理和流传输模式;需要 voice.local、麦克风和匹配的语言模型。
  • Yandex — SDK,流式传输或异步,具体取决于可用配置。
  • Google Cloud — 明确选择的云识别及其凭据/功能。
  • OpenAI — 通过其配置的提供程序路径进行识别。

本地使用的网络 Vosk. 识别本身是本地的,但首先打开语言或型号列表会启动后台请求https://alphacephei.com/vosk/models/model-list.json。结果在进程中缓存五分钟,并在失败时使用嵌入列表。仅在单独操作后才下载所选语音或标点模型 ZIP,并且不会将任何音频发送到 Alpha Cephei。

OpenAI/LiteLLM 激活检查。 当设置页面变为活动状态时,其 refresh_on_open 无需单独运行检查 单击。对于具有解析密钥的 OpenAI,它将加载 GET https://api.openai.com/v1/models。对于配置的非 OpenAI LiteLLM 转录路径,它执行​​真实的探测:提供者接收凭据/配置和生成的 0.1 秒无声 WAV(单声道,16 kHz)。这不是麦克风音频,但提供商可能会记录或解释该请求。

并非每个提供商都支持所有模式。加载程序检查所选功能,并在流/异步/后端路径未实现或可用于该配置时将其报告为不可用;它不会用本地 Vosk 替换提供程序。

5. 配置并测试语音

  1. 选择识别器和模式。对于 Vosk,首先在依赖项选项卡上准备voice.local
  2. 输入该提供商所需的模型、区域、端点或凭据。
  3. 允许 Windows 中的麦克风访问并选择正确的输入设备。
  4. 识别测试 选项卡上,记录一个短语并验证转录内容、语言和延迟。
  5. 仅在测试后才在工作项目中启用语音标注。

Commit 和语义处理是单独的设置。 Normal 将转录本发送到选定的注释目标;两种 Copy... 模式仅使用剪贴板。正常提交后,语音标注也会默认通过选择语义,并且可以应用高可信度类型化规则。对于仅听写行为,请在 Element Selection → Semantics 下禁用语音注释处理。

6. 快速诊断

  • 型号未列出: 检查端点和连接测试;对于本地服务,验证其是否正在运行。
  • CV 使用另一个连接: 检查 cv 角色分配,而不仅仅是上次编辑的配置文件。
  • Vosk 未启动: 重新探测 voice.local,语言模型路径和麦克风权限。
  • 云语音返回功能错误: 选择提供商支持的模式;该错误并不意味着 Screph 切换到批处理或其他服务。