服务商类型
七种服务商类型,各自需要什么、能做什么。
| 类型 | 接口地址 | 密钥 | 能力 |
|---|---|---|---|
| Anthropic | 固定(https://api.anthropic.com) | 必填 | 对话、工具调用、图片、结构化输出 |
| OpenAI | 固定(https://api.openai.com/v1) | 必填 | 对话、工具调用、图片、结构化输出、向量 |
| Google Gemini | 固定 | 必填 | 对话、工具调用、图片、结构化输出、向量 |
| OpenAI 兼容 | 必填 | 可选 | 自己勾选(默认:对话、工具调用) |
| OpenAI Responses 接口 | 必填(用 OpenAI 官方时填 https://api.openai.com/v1) | 可选 | 自己勾选(默认:对话、工具调用、结构化输出) |
| Anthropic 兼容 | 必填 | 可选 | 自己勾选(默认:对话、工具调用) |
| Ollama | 必填 | 可选 | 自己勾选(默认:对话、工具调用、结构化输出、向量) |
兼容接口
任何提供 OpenAI Chat Completions、OpenAI Responses 或 Anthropic Messages 格式接口的服务都可以用兼容类型接入:DeepSeek、 OpenRouter、Kimi、智谱、vLLM 或 LiteLLM 网关等。Semestra 无法知道这类接口支持什么,所以能力由你自己勾选:
- 工具调用:Sem 操作你的数据时需要。
- 图片:让它能读取图片。
- 结构化输出:提取时使用接口的 JSON schema 模式;不勾选时,Semestra 会要求返回 JSON 并自行校验。
- 向量:启用文件搜索。
DeepSeek、Kimi 等已知服务的接口地址、模型和能力都已填好,折叠在密钥下方的接口设置里,需要修改时再展开。
添加兼容接口或 Ollama 时可以填一个模型名;它会被分配给还没有模型可用的用途:Sem、读取文档和标题,勾选了图片时还有读取图片。
模型参数
在模型页底部的高级里,可以为每项任务设置单次最多输出的 token 数。无论这项任务用哪个模型(包括“自动”)都会生效;留空按模型默认。 长的课程大纲提取不完整时,调高“读取文档”的上限。等待回答的时间按这个上限推算,调高后长任务等得更久。搜索没有输出,不需要设置。
读取文档与搜索
- 把文档读成字段(导入课程大纲、识别扫描页)时会关闭推理,不能关闭的模型用最低强度;你为该用途设置了推理强度时以你的设置为准。
- 文件搜索会按常见检索模型的要求区分查询和文档:nomic-embed-text、E5、Qwen3 Embedding、EmbeddingGemma 的前缀,以及 Gemini 的任务类型;Gemini 向量使用 768 维。你的模型因此发生变化时,下一次搜索后会自动重建文件索引,重建完成前按关键词匹配。
- 每次请求能接收的文本条数较少的服务(阿里云百炼为 10 条)会自动改用更小的批次。
同时请求数
Semestra 同时发给一个服务商的请求最多 4 个,其余的排队等候。后台任务总会留出一个名额,Sem 和搜索不用排在它们后面。要修改,在服务商的 ⋯ 菜单里选编辑,在高级里设置最多同时请求数。服务商经常提示请求过于频繁时调低。
后台任务(导入、识别扫描页、建立搜索索引)遇到服务商限流时最多等待 5 分钟,状态栏显示为等待中。Sem 和搜索只等几秒,不会让你一直等。
内网地址
在 SEMESTRA_ALLOW_PRIVATE_EGRESS 为 false 的服务器上(托管版和直接运行的 semestra dev),解析到内网、回环或链路本地地址的接口地址会被拒绝,
提示“该地址指向私有网络,无法使用。”见 Ollama。