# @basenative/evals 中文文档

规范地址：https://npmcn.com/package/%40basenative/evals/

版本：3\.0\.0
npm 元数据更新时间：2026-10-31T13:47:06.630Z
中文译文更新时间：2026-10-31T16:21:08.545Z
软件包许可：Apache-2\.0

本文由上游 README 机器翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40basenative/evals
原文对照：https://npmcn.com/package/%40basenative/evals/?lang=original
项目主页：https://github.com/DuganLabs/BaseNative/tree/main/packages/evals#readme
源码仓库：https://github.com/DuganLabs/BaseNative

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：48.7 kB，12 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：4 个
- 首次发布：2026-10-18T05:29:12.590Z
- 最新版本发布：2026-10-31T13:47:06.297Z
- 已发布版本数：11（近 12 个月 11 个）

## 中文简介

Eval线束测量模型是否实际产生正确的基线

## 安装

```sh
npm install @basenative/evals
```

也可以使用：`pnpm add @basenative/evals`、`yarn add @basenative/evals`、`bun add @basenative/evals`

## README

# @basenative /测评

衡量模型是否实际生产 **正确** 基本转换 人工智能易读性声明从营销变成任何人都可以检查的数字。

```bash
bn-evals --models anthropic:claude-opus-5,openai:gpt-5,google:gemini-2.5-pro --out results.md
```

## 语料库是手工创作的

`prompts/` 和 `fixtures/` 是由回购所有者手写的。没有技能，没有 子代理，任何层的模型都不能生成它们。

如果模型写入提示，则引用实现， _和_ 断言, eval衡量的是模型的自洽性，仅此而已， 高，无意义的数字。因此，线束 **拒绝对抗一个空的 语料库** 而不是退回到生成的任何东西。

断言 _类型_ 是基础设施和生活在 `src/assertions.js`。断言 _值_ -什么是正确的-是你的。

## 管道

```
prompts/ (hand-authored) → model runner → generated template
    → @basenative/validate   does it parse?
    → @basenative/server     does it render?
    → @basenative/runtime    (stateful cases only) does it hydrate and react?
    → behavioural assertions does it do the thing?
    → score
```

水合物阶段只在声明的情况下运行 `state` 或水合物家族 断言 (`hydrated_contains`/`hydrated_excludes`/`after_set` ——看 `prompts/README.md`)-大多数病例仅由SSR输出完全评分。当它 运行时，它将生成的模板-指令完整-安装到同一个DOM中 垫片 `@basenative/runtime`的自己的测试使用，并运行真实的客户端 `hydrate()` 在真实信号的背景下，这是对信号进行评分的唯一方法， 计算，或效果，而不仅仅是模板的静态形状。

阶段短路: 不解析的模板不能有意义 呈现,所以 `failedAt` 告诉你 _哪里_ 一个模型出了问题，而不仅仅是模型出了问题。

## 标题号码

该套件对每个模型运行两次——一次使用提供的BaseNative MCP工具，另一次 没有。增量是产品声明: 实际上给模型一个验证器 让它写正确的BaseNative？

这两个提示不同 **只有** 用一句话来命名工具。任何更多的 会混淆 “有工具” 与 “被告知更多关于语言”。

除了通过率，报告还追踪了 **漂移率** -一个模型多久到达一次 对于另一个框架的语法，而不是仅仅得到错误的逻辑。那是 这是检验论文的数字，即使它使论文难堪，也要报道出来。

## 多提供者按设计

排行榜只是在测试克劳德，而不是证据。 `resolveCredentials` 列表 **每一个** 缺少密钥且拒绝启动的提供程序，而不是 安静地制作一张桌子，三个模特默默地缺席。

提供者: `anthropic`， `openai`， `google`， `openaiCompatible` (任何OpenAI-shaped 端点，对于开放权重模型)， `ollama` (本地模型通过 [奥拉玛](https://ollama.com/)，不需要API密钥)。

**本地模型是排行榜非人类方面的预期路径。** 云模型api单独收费，该项目在所有者的硬件上运行 已经拥有而不是购买钥匙。使用Ollama在本地运行开重模型:

```bash
ollama pull llama3.2
ollama pull qwen2.5-coder
bn-evals --models anthropic:claude-opus-5,ollama:llama3.2,ollama:qwen2.5-coder
```

`ollama` 模型默认为 `http://localhost:11434`; 重写为 `--ollama-url` 如果 奥拉玛跑到别处去了。在运行之前, `bn-evals` 支票 `/api/tags` 在那个端点上 并大声失败-打印确切的 `ollama pull <model>` 命令-用于任何请求 尚未拉出的模型，而不是在错字上燃烧运行。

`resolveCredentials` 从不将本地模型视为缺少的凭据: `ollama` 需要 根本没有钥匙，只有指向 `openaiCompatible` 在 `localhost` `baseUrl` (Ollama OpenAI-compatible `/v1` 端点、LM工作室等) 也放弃了关键要求。云 提供商不受影响-缺少的云密钥仍然拒绝运行。

> **注意：** 针对云提供商运行套件需要一个API密钥。一个 Claude Max/Pro订阅不包括API访问-这些是单独收费的。

## 许可证

apache - 2.0

## 常见问题

### @basenative/evals 是什么？

Eval线束测量模型是否实际产生正确的基线

### 如何安装 @basenative/evals？

在项目目录运行 npm install @basenative/evals，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 bn-evals，可以用 npx bn-evals 直接运行。

### @basenative/evals 支持 TypeScript 吗？

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

### @basenative/evals 支持 ESM 还是 CommonJS？

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

### @basenative/evals 可以商用吗？

@basenative/evals 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @basenative/evals 还在维护吗？

最新版本 3\.0\.0 发布于 2026/10/31（2 天前）；至今共发布 11 个版本，其中过去 12 个月发布了 11 个；首次发布于 2026/10/18。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

