Skip to content

使用 Reasonix 集成 GenStudio API ​

连接 AI 助手

Reasonix 是终端优先的 AI 编程助手,面向 DeepSeek 模型做了长会话、工具调用和前缀缓存优化。它支持 OpenAI 兼容接口,可通过 GenStudio 使用 DeepSeek V4 Flash、DeepSeek V4 Pro 等模型。

Reasonix 更适合以下场景:

  • 需要在终端中持续运行长时间编码、重构、调试任务。
  • 希望使用 DeepSeek reasoning 模型,并在工具调用后的后续请求中保持 reasoning 内容连续。
  • 希望观察长会话中的缓存命中情况,减少重复上下文带来的成本压力。

注意

本文示例以 DeepSeek 系列模型为主。模型 ID、上下文长度和可用能力以 GenStudio 模型广场和 /models 接口返回为准。

获取 API 接入信息 ​

在配置之前,您需要先获取对应的 API Key。

GenStudio LLM API ​

适用于按量付费、包并发服务等场景,可用于大语言模型、生图模型、视频模型等。LLM API 按 Token 计费,请关注账户余额。GenStudio 通用 LLM API 使用平台通用的 Base URL 和 Endpoints,请根据您的客户端工具支持的协议来配置。

  • API Key:创建以 sk- 前缀的 API 密钥。详见 GenStudio API 快速集成。

    注意

    GenStudio 通用 LLM API 服务有 API 频率限制。租户在 GenStudio 的服务等级决定了 API 调用是否计费,以及享受的 API 频率上限。详见 LLM API 计费规则。

  • OpenAI (OpenAI Compatible)

    • Base URL: https://cloud.infini-ai.com/maas/v1

    • Endpoints

      • Create Chat Completion: /chat/completions
      • List Models: /models

通过 API 获取最新可用模型列表 ​

若需获取当前接入方式下最新可用的模型 ID,建议通过 Agent 或手动调用模型列表接口。

该接口仅返回当前可用的模型列表,不返回上下文长度、最大输出长度等模型元数据。请使用通用 API Key(sk- 前缀)查询。

language-shell
curl --request GET \
  --url 'https://cloud.infini-ai.com/maas/v1/models' \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer sk-xxxxxxxxxx'

在控制台查看上下文长度和最大输出长度 ​

如需查看模型的上下文长度和最大输出长度,请前往模型广场查看对应模型卡片。模型卡片会展示每个模型的上下文长度、最大输出长度等信息。

安装 Reasonix ​

Reasonix 有两个安装形态:CLI 和 Desktop App。CLI 提供 reasonix 命令,适合在终端中运行交互式 TUI、一次性任务和代码审查;Desktop App 提供图形界面,适合用窗口管理会话、配置 Provider 和查看历史。

CLI 和 Desktop App 是不同安装包,可以单独安装,也可以同时安装。两者共用全局配置文件和全局 .env 凭据文件。

安装 CLI ​

如果需要在终端中运行 reasonix、reasonix run 或 reasonix review,请安装 CLI。

language-bash
# 使用 npm 安装 v1.x CLI
npm i -g reasonix@next

# macOS 可使用 Homebrew
brew install esengine/reasonix/reasonix

CLI 安装完成后,运行以下命令验证安装是否成功:

language-bash
reasonix --version

安装 Desktop App ​

如果希望使用图形界面,请从 Reasonix 官网 下载对应系统的 Desktop 安装包。官网提供 macOS、Windows 和 Linux 的桌面端下载入口。

Desktop App 安装的是图形界面应用,不等同于 CLI 安装。只安装 Desktop App 时,终端中不一定会有 reasonix 命令;如果还需要在终端执行任务,请另外安装 CLI。

同时安装 CLI 和 Desktop App 是合理的:用 Desktop App 管理配置、Provider 和会话,用 CLI 在项目目录中执行编码任务。

配置 Reasonix ​

Reasonix CLI 和 Reasonix Desktop 共用全局 TOML 配置。建议优先使用全局配置文件,便于在不同项目、终端和桌面端之间复用 GenStudio 接入配置。

  • macOS / Linux / WSL:~/.reasonix/config.toml
  • Windows:%AppData%\reasonix\config.toml

如果只希望当前项目使用该配置,也可以在项目根目录创建 reasonix.toml。

配置 GenStudio Provider ​

将以下内容写入配置文件。请根据您要使用的模型,调整 models、default 和 context_window。

language-toml
default_model = "genstudio-deepseek"

[[providers]]
name        = "genstudio-deepseek"
kind        = "openai"
base_url    = "https://cloud.infini-ai.com/maas/v1"
models      = ["deepseek-v4-flash", "deepseek-v4-pro"]
default     = "deepseek-v4-flash"
api_key_env = "GENSTUDIO_API_KEY"
context_window = 1000000
reasoning_protocol = "deepseek"
effort      = "high"

字段说明:

  • base_url:填写 GenStudio 的 OpenAI Compatible Base URL,不要追加 /chat/completions。
  • models:填写可用模型 ID。最新列表请以 /models 接口返回为准。
  • default:Reasonix 默认使用的模型。
  • api_key_env:Reasonix 用来查找 API Key 的凭据名称。示例使用 GENSTUDIO_API_KEY;真实密钥值不要写入 config.toml。
  • reasoning_protocol = "deepseek":通过 GenStudio 等第三方 OpenAI 兼容入口使用 DeepSeek 模型时,建议显式设置。这样 Reasonix 会使用 DeepSeek reasoning 请求形态,并在工具调用链路中保留必要的 reasoning 内容。
  • effort:reasoning 深度。DeepSeek V4 提供 low、high 和 max 三档有效强度,默认值为 high。简单任务使用 low,日常 Agent 任务使用 high,高度复杂的任务使用 max。medium 和 xhigh 是映射到 high 的兼容值,新配置不需要使用。

重要

通过 GenStudio 接入 DeepSeek 模型时,请保留 reasoning_protocol = "deepseek"。如果省略该字段,Reasonix 可能会把 GenStudio 当作普通 OpenAI 兼容 Provider 处理,影响 DeepSeek reasoning 模型的工具调用连续性。

设置 API Key ​

Reasonix 不从 config.toml 读取真实 API Key。api_key_env 只声明密钥名称,真实密钥值保存在 Reasonix 全局 .env 文件中,CLI 和桌面端共用。

如果还没有创建 Reasonix 配置,可以使用配置向导初始化配置并保存密钥:

language-bash
reasonix setup

如果已经按上文手动写好了 config.toml,不要再为了保存密钥运行 reasonix setup,避免配置被向导重写。此时可以使用 Reasonix Desktop 的 Provider 设置保存 API Key;桌面端会写入同一个全局 .env 文件。

也可以手动写入密钥。在对应文件中添加 GENSTUDIO_API_KEY:

  • macOS / Linux / WSL:~/.reasonix/.env
  • Windows:%AppData%\reasonix\.env
  • 设置了 REASONIX_HOME 时:<REASONIX_HOME>/.env
language-bash
GENSTUDIO_API_KEY=sk-xxxxxxxxxx

不要把 API Key 写进当前代码项目(也就是您让 Reasonix 操作的代码仓库)的 .env 文件;也不要把真实密钥直接写进 Reasonix 的 config.toml 或项目根目录的 reasonix.toml。这些配置文件只写 api_key_env = "GENSTUDIO_API_KEY";真实密钥只放在上面列出的 Reasonix 全局 .env 文件中。

启动 Reasonix ​

进入项目目录后,启动交互式 TUI:

language-bash
cd your-project
reasonix

也可以使用 reasonix run 执行一次性任务:

language-bash
reasonix run "阅读当前 diff,并给出代码审查建议"
reasonix run --model genstudio-deepseek/deepseek-v4-pro "为这个模块补充单元测试"

首次在项目中使用时,可以在 Reasonix 会话内运行 /init,让它生成项目记忆文件。之后在同一项目中继续会话,有助于保持上下文连续。

Reasoning 与工具调用 ​

DeepSeek reasoning 模型在工具调用场景中,可能要求后续请求带回同一轮 assistant 工具调用对应的 reasoning 内容。Reasonix 的 DeepSeek 协议会处理这类工具调用续接,降低因 reasoning 内容缺失导致请求失败的风险。

Reasonix 更适合作为 GenStudio DeepSeek reasoning 模型的复杂工具调用客户端。对于长任务、自动执行、需要多轮读写文件的场景,建议优先使用 Reasonix、MiMo Code 等已验证支持 reasoning 连续性的工具。

注意

Reasonix 只会在需要保留工具调用连续性的 DeepSeek 工具调用轮次回传 reasoning 内容。普通回答轮次不会把 reasoning 内容重复发送给模型,以避免不必要的输入 Token 消耗。

前缀缓存与费用观察 ​

Reasonix 的缓存优势不依赖特殊请求头或额外 API 参数。它主要通过稳定的请求结构提升前缀缓存命中概率,例如保持系统提示、工具定义和历史消息顺序稳定。

GenStudio 或上游模型服务是否返回缓存命中统计、如何计费、缓存命中率能达到多少,取决于当前模型服务能力和实际会话形态。使用 Reasonix 时,可关注响应中的缓存命中、未命中 Token 统计,以及 GenStudio 账单中的实际费用。

使用建议:

  • 避免频繁清空会话或重写早期上下文。
  • 长任务尽量在同一个 Reasonix 会话中持续推进。
  • 大型工具输出应适度总结,避免把无关内容长期留在上下文中。
  • 需要切换模型时,优先使用同一个 Provider 下的模型配置,减少重复配置带来的会话中断。

常见问题 ​

Reasonix 是否只能使用 DeepSeek 模型? ​

不是。Reasonix 支持 OpenAI 兼容 Provider,也支持配置其他模型。

Reasonix 的主要优势集中在 DeepSeek reasoning 模型上:它会使用 DeepSeek reasoning 请求形态,在工具调用续接时保留必要的 reasoning 内容,并能观察 DeepSeek 风格的缓存命中、未命中 Token 统计。因此,本文推荐优先用于以下模型:

模型建议用途原因
deepseek-v4-flash默认选择,适合长会话编码、持续调试、常规重构速度和成本更适合高频工具调用;更容易发挥 Reasonix 的前缀缓存优势
deepseek-v4-pro升级选择,适合复杂设计、代码审查、疑难问题分析推理能力更强,适合在关键步骤或高难任务中使用

简而言之:Reasonix 不是只能用 DeepSeek,但在 GenStudio 场景下,最值得推荐的是 deepseek-v4-flash 和 deepseek-v4-pro。

为什么不直接使用普通 OpenAI Compatible 配置? ​

GenStudio 的 Base URL 不是 DeepSeek 官方域名。对于 DeepSeek 模型,建议显式设置 reasoning_protocol = "deepseek",让 Reasonix 使用 DeepSeek reasoning 请求形态和工具调用续接逻辑。

使用 Reasonix 一定能降低费用吗? ​

不保证。Reasonix 的稳定上下文组织有利于前缀缓存命中,但最终费用取决于模型、上下文长度、缓存命中情况和 GenStudio 当前计费规则。请以 GenStudio 账单和响应中的 Token 统计为准。

遇到 400 错误怎么办? ​

请按以下顺序检查:

  1. 确认 base_url 没有追加 /chat/completions。
  2. 确认模型 ID 与 /models 接口返回一致。
  3. 使用 DeepSeek 模型时,确认已设置 reasoning_protocol = "deepseek"。
  4. 确认目标模型支持工具调用和流式输出。
  5. 如果刚切换模型,重启 Reasonix 会话后再试。