@corbits/system-one

中文文档
0.4.0发布于 2026/10/27LGPL-2.1-onlyTypeScriptES Module近 30 天下载 4950

System One(Jev-class)型号的打入决定评价客户端:arktype问答计划,有网关覆盖的端点配置,以及出站/倒站语义.

中文使用文档
文档目录15 节
  1. 为什么 @c轨道/系统一?
  2. 安装
  3. 快速启动
  4. 合适的话
  5. 参考文献
  6. 问 题
  7. 密钥问题
  8. 配置
  9. 端点和密钥
  10. 退缩原因
  11. 使用互换
  12. 工厂
  13. 升级至0.3.1
  14. 从0.1升级
  15. 许可证

@c轨道/系统一

从TypeSafe的Jev模型中对JSON状态进行打出选择,分数和是/否决定,作为验证结果或打出倒数返回. 轨道和交流剂的推论提供者:登记为 @intx/inference 适配器,也可以独立操作 evaluate()。 。 。 .

为什么 @c轨道/系统一?

  1. 输入决定,而不是自由文本. 你用ID发送问题;你得到每个ID一个经过验证的决定,有概率和信心. 没有快速解析 .
  2. 失败是数据. 缺少密钥、 超时、 HTTP 出错或坏身体返回 a FallbackResult 带有 reason,所以一个门可以失败 关闭没有 try。只有无效的调用输入.
  3. 一个电话,很多问题. 列表中的每个问题都会在一个POST中出场,以1.5的默认超时为界.

它对照问题评价结构状态。 对于开放式聊天完成,请使用一般推论提供者,例如 @corbits/openai-responses。 。 。 .

安装

bun add @corbits/system-one @intx/inference@^0.4.0 @intx/types@^0.4.0

运行在 Bun QQ 1.2 或 Node QQ 24.

在发布前消耗一个精确的 Git 承诺, 启用包的 源条件, 因为 Git 依赖性不运行 prepack数字 :

bun add github:corbitsdev/corbits-system-one#<commit>
bun --conditions=corbits-system-one-src your-script.ts

已出版的消费者继续使用 dist 默认输入.

快速启动

需求 TYPESAFE_API_KEY 设置.

import { evaluate } from "@corbits/system-one";

const result = await evaluate({
  state: { action: "deploy", env: "production" },
  questions: [
    {
      id: "escalate",
      type: "boolean",
      instructions: "Must this request be escalated for human approval?",
    },
  ],
});

console.log(result.fallback ? result.reason : result.decisions);

如果成功,每个问题都有一个决定,或者失败的后退原因:

[{ id: "escalate", type: "noul", noul: 0.91 }];

布尔问题回答如下: noul,从0到1的概率,答案是肯定的.

合适的话

互换 管理AI代理作为主要负责人(持有自己身份、授权和证书的账户)。 轨道包增加了一个代理产品需要的周围.

参考文献

导出说明
evaluate(input, options?)运行一个评价。 回返 EvaluateResult:决定或决定 FallbackResult。 。 。 .
systemOne(input, options?)关键决定。 回返 answers 由问名,或同倒回.
choice, (中文(简体) ), noul, (中文(简体) ), score, (中文(简体) ), box构建一个按键问题 . box 定位一个区域并需要模型 jev-preview。 。 。 .
image, (中文(简体) ), Image.fromBase64PNG 或 JPEG 字节, a Blob,或基数64. 其他格式在发送前被拒绝.
withAssets标记这样插出图像的模板。 还有 withAssets.join。 。 。 .
createSystemOneAdapter(config?)回返a ProviderAdapter 页:1 runInference。 。 。 . config 是一个 EvaluateConfig。 。 。 .
createSystemOneAdapterFactory互换 AdapterFactory 页:1 SIDECAR_ADAPTER_MANIFEST{\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}用点夸张的语气.
SYSTEM_ONE_PROVIDER这个 "corbits-system-one" 提供方编号.
DEFAULT_TIMEOUT_MS1500默认值 timeoutMs。 。 。 .
SystemOneError丢入无效输入或 a custom 无终点 url。 。 。 .
SystemOneTelemetryEvent传递到的事件的图表和类型 onTelemetry。 。 。 .
EvaluateOptions, (中文(简体) ), EvaluateDeps类型 options数字 : onTelemetry,以及 deps: { fetch, scheduler }。 。 。 .

Question, (中文(简体) ), QuestionList, (中文(简体) ), Decision, (中文(简体) ), EvaluateInput, (中文(简体) ), EvaluateConfig, (中文(简体) ), EndpointConfig, (中文(简体) ), EvaluateResult 财务报告和审定财务报表 FallbackResult 导出为方舟型计划和类型.

问 题

type字段决策领域
choiceinstructions, (中文(简体) ), criteria (可选名称 ) null, 1–255 选项)choice, (中文(简体) ), probabilities, (中文(简体) ), confidence
scoreinstructions, (中文(简体) ), criteria (2至10个说明)score, (中文(简体) ), legend, (中文(简体) ), probabilities, (中文(简体) ), confidence
booleaninstructions选项 criteria: { true?, false? }noul
noul与 booleannoul
boxinstructions 说明要找到什么。 使用模式 jev-preview。 。 。 .box (单位:千美元)top, (中文(简体) ), bottom, (中文(简体) ), left, (中文(简体) ), right 作为分数, confidence

每个问题都有 id在列表中独一无二. box 外缘 [0, 1] 拒绝.

密钥问题

systemOne 使用相同的状态和记录 问题建立与 choice, (中文(简体) ), noul, (中文(简体) ), score,以及 box。名称是答案键。 这些帮助者汇编到列表中 evaluate 已经发送。 同样的倒计时理由也适用,这些失败是不会发生的。 帮助者也从 @corbits/system-one/decisions。 。 。 .

import { choice, noul, score, systemOne } from "@corbits/system-one";

const result = await systemOne({
  state: { document: "I was charged twice." },
  questions: {
    category: choice("What is this?", { billing: null, technical: null }),
    escalate: noul("Must this be escalated?"),
    severity: score("How severe?", ["none", "cosmetic", "unusable"]),
  },
});

关于成功,请阅读 result.answers.category.choice (单位:千美元) probabilities 财务报告和审定财务报表 confidence, (中文(简体) ), result.answers.escalate.noul,以及 result.answers.severity.score。 。 。 .

image() 接受一个 Blob 或者说 Uint8Array。 。 。 . Image.fromBase64() 接受 base64 文件字节。 只有PNG和JPEG被发送. 将图像放入 state,指示,或标准,或插入 withAssets (和 withAssets.join 名单。 普通模板字符串中的图像在请求前被拒绝. assets 将名称映射到图像中, 用于平整字符串; 每个名称必须在请求中显示为自己的符号 。 任何图像的请求是 multipart/form-data 发送 TypeSafe-Danger-Zone-Images: true否则尸体就留下JSON.

import { box, image, systemOne, withAssets } from "@corbits/system-one";

const photo = image(pngBytes);
const result = await systemOne({
  state: withAssets`Returned item: ${photo}`,
  questions: { damage: box("The damaged area") },
  model: "jev-preview",
});

providerOptions.systemOne.questions 接受此按键记录以及提问列表.

配置

input.config 页:1 evaluate,或参数为 createSystemOneAdapter数字 :

外地类型默认说明
endpointEndpointConfig{ kind: "official" }official, (中文(简体) ), gateway,或 custom 带有 url。每个选择 model。 。 。 . custom 可能设定 auth: "none"。 。 。 .
timeoutMsnumber1500整个来回的路程都要开着.
apiKeystring环境状况覆盖环境密钥.

端点和密钥

kind網址默认模式环境钥匙
officialhttps://api.typesafe.ai/v1/systemonejev-latestTYPESAFE_API_KEY
gatewayhttps://ai-gateway.vercel.sh/typesafe/v1/systemonetypesafe-ai/jevAI_GATEWAY_API_KEY,则 VERCEL_OIDC_TOKEN
customurltypesafe-ai/jevSYSTEM_ONE_API_KEY,除非 auth: "none"

SYSTEM_ONE_API_KEY 也是每个端点上支持的别名,在端点自己的密钥后读取. 自定义终点 auth: "none" 不需要密钥,也不发送 Authorization官方和网关总是需要钥匙。 任何其他 auth 值是无效的输入并丢出.

退缩原因

reason何时
no-key无密钥 apiKey 或环境,终点不是习惯的 auth: "none"未发出请求.
timeout包括尸体在内的往返旅行超过 timeoutMs。 。 。 .
network请求在答复前失败.
http-error非-2xx回应. httpStatus 保持状态.
parse-error尸体不是JSON或未验证.

detail 带有基本信息.

使用互换

将适配器注册到 SYSTEM_ONE_PROVIDER 并传递每个呼叫中的问题 providerOptions.systemOne (单位:千美元){ state?, questions? }) (中文(简体) ). 无 state,适配器将记录文本作为状态发送。 无 questions,它问一个布尔问题 与id response。 。 。 .

import { createDependencies, runInference } from "@intx/inference";
import {
  createSystemOneAdapter,
  SYSTEM_ONE_PROVIDER,
  type QuestionList,
} from "@corbits/system-one";

const deps = createDependencies({
  has: (provider) => provider === SYSTEM_ONE_PROVIDER,
  resolve: () => createSystemOneAdapter(),
});

const questions = [
  {
    id: "escalate",
    type: "boolean",
    instructions: "Must this request be escalated for human approval?",
  },
] satisfies QuestionList;

let seq = 0;
for await (const event of runInference({
  deps,
  source: {
    id: "system-one",
    provider: SYSTEM_ONE_PROVIDER,
    baseURL: "https://api.typesafe.ai/v1/systemone",
    credentialId: "TYPESAFE_API_KEY",
    model: "jev-latest",
  },
  turns: [
    {
      role: "user",
      timestamp: Date.now(),
      content: [{ type: "text", text: "Deploy to production?" }],
    },
  ],
  inferenceOptions: { providerOptions: { systemOne: { questions } } },
  nextSeq: () => seq++,
  readMaterial: (id) => {
    const secret = process.env[id];
    if (secret === undefined) throw new Error(`${id} is not set`);
    return { secret };
  },
})) {
  if (event.type === "inference.text.delta")
    console.log(JSON.parse(event.data.token));
}

适配器发出一个 inference.text.delta 每一决定 token 作为JSON的决定,然后 inference.usage 活动。 绳子能提供证书 readMaterial 并拥有复试。 一个畸形的反应机构是 ProtocolMismatchError而不是一个后退.

工厂

createSystemOneAdapterFactory(source, quirks?) 是互换 AdapterFactory,所以一个股票侧车装入它从 SIDECAR_ADAPTER_MANIFEST 没有自定义代码 :

[
  {
    "provider": "corbits-system-one",
    "specifier": "@corbits/system-one",
    "export": "createSystemOneAdapterFactory"
  }
]

中心供货 quirks 验证并全部可选 :

{
  "endpoint": {
    "kind": "custom",
    "url": "https://opencode.ai/zen/v1/systemone"
  },
  "model": "jev-1.13",
  "questions": [{ "type": "boolean", "id": "gate", "instructions": "Allow?" }],
  "state": {}
}

无 endpoint,适配器贴出目录提供者的 baseURL + 键 /systemone主办方的证书是发给的 A 类 model 奇克( 顶级 ) endpoint)是电线上发送的模型,因此一个目录模型可以由不同名称的提供者服务. questions 财务报告和审定财务报表 state (a) 按需要计算的缺省; providerOptions.systemOne 在呼叫中逐一获胜。 未知密钥丢出 。 适配器发送无记名信使,被接通的绳子注入祭品的证书,除了一个自定义的终点 auth: "none",省略 Authorization 因此,主机不附加密钥.

提供者提供者 baseURLmodel 诡异
类型安全https://api.typesafe.ai/v1jev-latest
Vercel AI 网关https://ai-gateway.vercel.sh/typesafe/v1typesafe-ai/jev
打开路透社https://openrouter.ai/api/v1typesafe/jev-1.13
打开代码禅https://opencode.ai/zen/v1jev-1.13 或者说 jev-1.13-free

升级至0.3.1

  • createSystemOneAdapterFactory 无 endpoint 怪怪的现在贴到目录提供者的 baseURL + 键 /systemone 代替正式的 TypeSafe URL 。 设置提供者 baseURL 转到 API 根(例如 https://api.typesafe.ai/v1),或保持旧行为 {"endpoint":{"kind":"official"}}带子向适配器返回的 URL 发送送礼证书,所以只设置一个明确的 endpoint 在证书所属的宿主上.
  • A 类 model 现在奇特地推翻了被绑住的模型(编目犬科名称).
  • createSystemOneAdapter 财务报告和审定财务报表 evaluate 接受 auth: "none" 自定义终点并省略 Authorization。任何其他 auth 值抛出 SystemOneError 在请求建立之前.

从0.1升级

  • HttpError, (中文(简体) ), NetworkError 财务报告和审定财务报表 TimeoutError 被删除。 运输故障返回a FallbackResult。 。 。 .
  • 一个不是JSON的2xx尸体 parse-error (曾经是) network) (中文(简体) ). 身体读取时的暂停是 timeout。 。 。 .
  • recordTelemetryEvent 财务报告和审定财务报表 drainTelemetryEvents 被删除。 过 evaluate(input, { onTelemetry })。 。 。 .
  • 电线帮手 怪胎预设, JsonRecord, (中文(简体) ), Confidence 而env-var名称常数不再被导出.
  • A 类 custom 无终点 model 发送 typesafe-ai/jev。 。 。 .
  • 同行是 @intx/inference 财务报告和审定财务报表 @intx/types ^0.4.0。 。 。 .
  • 环境变量不变,包括: SYSTEM_ONE_API_KEY。 。 。 .

许可证

LGPL - 2.1- 仅限

版本与发布记录

@corbits/system-one 共发布 6 个版本,首次发布于 2026/09/25;过去 12 个月发布了 6 个版本。

版本发布日期距今
0.4.0latest2026/10/2714 天前
0.3.22026/10/2021 天前
0.3.12026/10/071 个月前
0.3.02026/10/031 个月前
0.2.02026/09/281 个月前
0.1.02026/09/251 个月前

关于 @corbits/system-one 的常见问题

@corbits/system-one 是什么?

System One(Jev-class)型号的打入决定评价客户端:arktype问答计划,有网关覆盖的端点配置,以及出站/倒站语义.

如何安装 @corbits/system-one?

在项目目录运行 npm install @corbits/system-one,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@intx/types(^0.5.0)、@intx/inference(^0.5.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@corbits/system-one 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@corbits/system-one 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@corbits/system-one 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=24。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@corbits/system-one 可以商用吗?

@corbits/system-one 使用 LGPL-2.1-only 许可。弱 Copyleft:作为库被调用时通常不要求开源你自己的代码,但修改库本身需以 LGPL 开源;前端打包合并后的适用边界存在不同理解。以上为概括,不构成法律意见,请以许可原文为准。

@corbits/system-one 的下载量有多少?

根据 npm 官方下载统计,@corbits/system-one 在 2026/10/11 – 2026/11/09 这 30 天内被下载 4,950 次,日均约 165 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@corbits/system-one 还在维护吗?

最新版本 0.4.0 发布于 2026/10/27(14 天前);至今共发布 6 个版本,其中过去 12 个月发布了 6 个;首次发布于 2026/09/25。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。