模型与配置
可以在会话里切换模型,为某一次运行指定参数,或把个人偏好写到 ~/.siada-cli/conf.yaml。实际可用的模型取决于你配置的服务。
在会话中选择模型
输入 /model 打开模型选择器。要直接选择一个已配置的模型,可以输入 /model 模型名称;在终端运行 siada-cli --list-models 也可查看当前可用模型。
/model
/status
选择后用 /status 确认当前模型。/model 的选择会保存到个人配置中;仅想临时指定模型时,使用启动参数更合适。
只影响这次运行
启动参数优先于个人配置。使用 --model 指定模型,--reasoning-effort 设置推理强度,或 --no-thinking 关闭推理;具体值需与模型支持的能力匹配。
siada-cli --model MODEL_ID --reasoning-effort high
siada-cli --model MODEL_ID --no-thinking
配置 API Key 与模型服务
准备服务商提供的 API Key、API 地址和模型 ID。首次运行时选择 API Key 配置;已有配置时,在会话中输入 /configure 重新打开设置。
方式一:交互式配置
- 选择服务商;使用自建或第三方网关时,选择 Custom Provider。
- 选择模型。Custom Provider 需要填写 API 地址和该地址接受的模型 ID。
- 填写 API Key 并提交。输入时密钥会被遮挡,配置保存到个人目录。
- 进入会话后输入
/status核对模型,再发送一条简短消息确认连接。
方式二:手动编辑连接配置
编辑 ~/.siada-cli/conf.yaml,把下面示例值换成自己的服务信息。自备 API 服务使用 provider: default;provider_id: custom 标记自定义服务,协议由模型路由和 API 地址决定。
llm_config:
provider: default
provider_id: custom
model: "your-model-id"
base_url: "https://api.example.com/v1"
api_key: "YOUR_API_KEY"
如果文件里已有 llm_config,请修改同一段,避免重复添加。API Key 只填写在自己的电脑上,不要提交到项目版本库或发送给他人。
让模型与 API 协议匹配
同一模型可能由不同网关提供。请按服务商文档填写地址和模型 ID;下面的地址只用于说明协议格式。
| 服务协议 | API 地址示例 | 模型与连接要求 |
|---|---|---|
| OpenAI Chat Completions | https://api.example.com/v1 | 服务须支持 POST /chat/completions。自定义别名使用服务商给出的模型 ID。 |
| Anthropic Messages | https://api.anthropic.com | 模型可使用 anthropic/claude-sonnet-4-6;原生协议网关也可提供完整的 /v1/messages 地址。 |
| OpenAI Responses | https://api.openai.com/v1 | GPT-5 及更新的 GPT 模型使用 Responses API,服务须支持 POST /responses。 |
API 地址通常填写服务根路径,例如 /v1;Chat Completions 和 Responses 不要填写具体请求路径。Anthropic Messages 可使用服务根地址或完整 Messages 地址。
登记自定义模型能力
自定义网关模型可在 ~/.siada-cli/models.json 登记上下文窗口、输出上限和图片能力。模型名称要与 conf.yaml 中一致;已有 models.json 时,将模型合并到 models 数组。
{
"default_model": "your-model-id",
"models": [
{
"model_name": "your-model-id",
"context_window": 128000,
"max_tokens": 8192,
"supports_images": false,
"supports_prompt_cache": false
}
]
}
示例能力数值需按服务商文档调整。models.json 定义模型能力,conf.yaml 保存连接信息和 API Key。自定义模型列表会替换内置列表,请保留自己需要的模型。
若输出经常被截断,检查 max_tokens 是否足够,并在服务支持的上限内调整;支持图片或推理参数时,再添加相应能力字段。
推理和界面偏好
这些偏好可以直接在会话里设置并保存到 conf.yaml,通常无需手动编辑配置。
| 操作 | 配置项与含义 |
|---|---|
/effort high | llm_config.reasoning_effort:推理强度;不同模型的级别不同,输入 /effort 查看。 |
/thinking on / off | llm_config.enable_thinking:推理总开关;关闭后优先于推理强度与 token 预算。 |
/theme auto | ui.theme:跟随系统或终端;也可设为 dark、light。 |
/lang zh-CN | preferred_language:回复语言;英文使用 en。 |
图片与视觉模型
主模型支持图片时,截图可以直接参与任务。如果主模型无法读取图片,可设置 llm_config.vision_model,让视觉模型先提取文字证据,再交给主模型处理。
llm_config:
model: "your-main-model"
vision_model: "your-vision-model"
vision_provider: default
这里仅展示视觉相关字段,添加到已有 llm_config 中即可。视觉模型必须是你已配置、可访问且支持图片的模型。
常用运行设置
没有对应命令的设置,可直接编辑 conf.yaml,或使用 /siada-help 请 Siada 帮你调整并检查类型。
| 配置项 | 用途 |
|---|---|
code_agent.max_turns | 一次 Agent 执行的最大轮数,使用整数。 |
command_timeout | Shell 命令超时秒数,使用整数。 |
goal.max_turns | 目标验证连续失败时允许自动续跑的轮数,默认 6。 |
checkpoint_config.enable | 交互模式的文件检查点开关,见 检查点。 |
memory.enabled | 记忆总开关;可用 user_profile_enabled、memory_facts_enabled 控制记忆内容。 |
memory.holographic.enabled | 结构化事实记忆开关,受 memory.enabled 总开关控制。 |
web.enabled | 联网工具开关:true 开启,false 关闭。 |
sub_agent.enabled | 子 Agent 派发开关;关闭后任务由主 Agent 完成。 |
sub_agent.llm_config | 为子 Agent 配置模型;未设置时沿用父会话模型。 |
proactive.llm_config | 后台与定时任务的专用模型,见 后台设置。 |
compaction_strategy | 上下文压缩策略;省略时自动选择,支持 header_summary、turn_prune_summary。 |
enable_notification | 任务结束后的系统通知开关。 |
各类配置放在哪里
| 文件 | 内容 |
|---|---|
~/.siada-cli/conf.yaml | 模型、界面、记忆、子 Agent 和后台等主要偏好。 |
~/.siada-cli/models.json | 自定义模型列表、上下文窗口、输出上限与能力设置。 |
~/.siada-cli/mcp_config.json | MCP 服务器;项目可用 siada_mcp_config.json。 |
~/.siada-cli/commands/ | 自定义命令的 TOML 文件。 |
~/.siada-cli/workspace/cron_tasks.json | 由定时任务技能维护的周期任务。 |
让手动配置生效
手动修改 conf.yaml 后,重启后台并重新启动会话,使各组件重新读取配置。随后用 /status 核对当前模型与工作区。
siada-cli --stop-daemon
siada-cli
如果不确定配置是否有效,输入 /siada-help 帮我检查 conf.yaml 的语法与配置项。模型连接问题见 常见问题。