# @desert-ant-labs/gist 中文文档

规范地址：https://npmcn.com/package/%40desert-ant-labs/gist/

版本：4\.3\.0
npm 元数据更新时间：2026-11-05T21:28:56.716Z
中文译文更新时间：2026-11-12T05:09:36.478Z
软件包许可：SEE LICENSE IN LICENSE\.md

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

原始 npm 页面：https://www.npmjs.com/package/%40desert-ant-labs/gist
原文对照：https://npmcn.com/package/%40desert-ant-labs/gist/?lang=original
项目主页：https://desertant.com/models/gist/
源码仓库：https://github.com/Desert-Ant-Labs/desert-ant-core

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

- 包体积（解压后）：175 MB，32 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：2 个
- peer 依赖：@litertjs/core \>=2\.1\.0
- 首次发布：2026-07-23T15:33:06.930Z
- 最新版本发布：2026-11-05T21:28:56.551Z
- 近 30 天下载量：2831（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：19（近 12 个月 19 个）

## 中文简介

用于JavaScript的On-device内容主题标记:多标签主题 来自一个跨越101个语言的36个主题分类学. 在浏览器(WebAssembly + LiteRT.js)和服务器端(native)运行,从一个导入.

## 安装

```sh
npm install @desert-ant-labs/gist
```

也可以使用：`pnpm add @desert-ant-labs/gist`、`yarn add @desert-ant-labs/gist`、`bun add @desert-ant-labs/gist`

## README

# @ 沙漠- ant- labs/ gist

在浏览器和节点运行的JavaScript的在线内容主题标记. 给Gist一个标题(或一个标题外加描述),它从一个固定的36个主题分类学中返回多标签主题,跨越101个语言. 文本保持本地状态 .

两条共用一条 `Gist` API : (英语)

-   **`@desert-ant-labs/gist`** (默认):一个WebAssembly输油管 [LitteRT.js (法语)](https://www.npmjs.com/package/@litertjs/core) 推论: **浏览器**。它没有本土的依赖性,因此,对于一个多目标捆绑器(Next.js, Remix, SvelteKit, Nuxt)的每个目标,包括浏览器捆绑和客户端-组件SSR通过在节点提供的这些框架,一个单一的导入结构是干净的。 这是安全的 _导入_ 在服务器侧渲染时,但LiteRT.js需要浏览器(或Web Worker)来初始化,所以 `Gist.load()` 运行仅在浏览器中推导;在平原节点中调用它会丢出一个可操作错误,指向您 `/native`。 。 。 .
-   **`@desert-ant-labs/gist/native`**: 预建的本地核心, macOS上的核心ML和Linux上的LiteRT, for **服务器侧推论** 在节点。 没有 `@litertjs/core`没有建筑工具 没有旗帜 从仅服务器代码(API路由,服务器动作,平分节点脚本)导入. 不要从同样在浏览器中的组件导入它 .

```bash
# Browser (default entry):
npm i @desert-ant-labs/gist @litertjs/core

# Server-side inference in Node (/native entry) needs no extra install:
npm i @desert-ant-labs/gist
```

该型号被从Hugging Face下载,首先在SDK的被贴标签上使用,后被缓存. Npm 柏油丸里没有模型大小的货.

```js
import { Gist } from "@desert-ant-labs/gist";

const gist = await Gist.load();
const topics = await gist.classify("How to start a podcast with just your iPhone");
// [{ slug: "technology", name: "Technology & Software", score: 0.93 }, ...]

gist.dispose(); // release the model (both builds)
```

纯服务器代码,希望本地核心从中导入相同的 API `/native` 子路径 :

```js
import { Gist } from "@desert-ant-labs/gist/native"; // server only
```

## 分数和频道滚动

`classify()` 你们的排名和门槛. `scores()` 返回整个 以你们所供养的,是纯洁的, 没有任何模型的决定性功能:

```js
import { Gist, channelTopics } from "@desert-ant-labs/gist";

const gist = await Gist.load();
const posts = [];
for (const title of titles) {
  posts.push({ topics: await gist.scores(title), timestampMillis: Date.now() });
}

channelTopics(posts, { topN: 5 });
// [{ slug: "technology", share: 0.41, postCount: 12 }, ...]
```

`channelTopics` 带 `topN`, (中文(简体) ), `floor`, (中文(简体) ), `minPosts`, (中文(简体) ), `halfLifeDays`, (中文(简体) ), `touch`,以及 `nowMillis`静脉衰变结束直到你通过 **两者** `halfLifeDays` 财务报告和审定财务报表 `nowMillis`与SDK相匹配.

## 正在装入模型

默认 `Gist.load()` 从 Hugging Face 下载模型文件([`desert-ant-labs/gist`](https://huggingface.co/desert-ant-labs/gist)在SDK的被贴标签, 验证,并缓存它们。 浏览器构建获取 `.tflite` 用于 LiteRT.js 并在浏览器中缓存它. 土著建筑`/native`获取 `.tflite` 在 Linux 上还是 `.mlmodelc/` 在 macOS 上,并在 OS 缓存目录下缓存它.

跳过 Higging Face 的下载:

-   `directory`:一个明确的模型目录(内部构建,或浏览器在节点下构建). 文件已经使用离线,否则模型会被下载到其中.
-   `modelBaseUrl`: 例如, 为模型文件服务的基础 URL `"/assets/gist/"` (浏览器建设).

`Gist.load()` 并接受:

-   `cacheRoot`: 管理上磁盘缓存的基础目录,默认 `~/.cache` (内部构建,或浏览器在节点下构建).
-   `onProgress`: 加载或下载进度回调,分数在 `[0, 1]`。 。 。 .

`classify()` 接受 `topK` (违约3)和 `threshold` (默认模式的调子之一).

浏览器- 仅构建- 选项 :

-   `litert`:一个带给你的 `@litertjs/core` 模块.
-   `litertWasmDir`: LiteRT.js Wasm 目录的URL或路径.
-   `accelerator`: 一个 `"wasm"`, (中文(简体) ), `"webgpu"`,或 `"webnn"`。 。 。 .

仅以英文为主的构建(~15 MB,仅以英文/拉丁文为主)目前只能从Swift SDK中选择.

## 保险箱和安保部

默认 `@desert-ant-labs/gist` 导入可直接用于组件 : 它是纯 JavaScript + Web Assembly 没有本地模块, 所以捆绑者可以构建 用于浏览器和节点 SSR 从同一个模块图中通过,没有 配置 .

这个 `@desert-ant-labs/gist/native` 子路径加载本地加通( 通过 `koffi`和 仅用于服务器代码。 如果您在捆绑服务器的框架内导入它 代码(例如 Next.js Route Handler 或 Server Action),将其标记为外部 捆绑者不会试图捆绑本地二进制。 在下一个.js中:

```js
// next.config.js
module.exports = { serverExternalPackages: ["@desert-ant-labs/gist"] };
```

## 平台

本地服务器构建( N)`/native`)为linux-x64,linux-arm64,和darwin-arm64的舰只. 其他节点平台投出一个明显的错误 `load()`; 使用默认的 Web Assembly 构建、 Swift 软件包或浏览器.

## 许可证

[沙漠蚂蚁实验室 源头可破坏许可证](https://license.desertant.com/)。为大多数免费提供 应用软件和商务许可证必须规模化。 完整的术语在链接. 许可证发放: [许可@ desertant.com](mailto:licensing@desertant.com)。 。 。 .

SDK的第三方通知: [`THIRD_PARTY_NOTICES.md`](https://github.com/Desert-Ant-Labs/desert-ant-core/blob/main/THIRD_PARTY_NOTICES.md)。 。 。 .

权重第三方通知: [`THIRD_PARTY_NOTICES.md`](https://huggingface.co/desert-ant-labs/gist/blob/main/THIRD_PARTY_NOTICES.md)。 。 。 .

## 常见问题

### @desert-ant-labs/gist 是什么？

用于JavaScript的On-device内容主题标记:多标签主题 来自一个跨越101个语言的36个主题分类学\. 在浏览器\(WebAssembly \+ LiteRT\.js\)和服务器端\(native\)运行,从一个导入\.

### 如何安装 @desert-ant-labs/gist？

在项目目录运行 npm install @desert-ant-labs/gist，或使用 pnpm add / yarn add / bun add。

### @desert-ant-labs/gist 支持 TypeScript 吗？

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

### @desert-ant-labs/gist 支持 ESM 还是 CommonJS？

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

### @desert-ant-labs/gist 可以商用吗？

@desert-ant-labs/gist 使用 SEE LICENSE IN LICENSE\.md 许可。许可条款写在包内的独立文件中，请阅读该文件确认可否商用。以上为概括，不构成法律意见，请以许可原文为准。

### @desert-ant-labs/gist 的下载量有多少？

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

### @desert-ant-labs/gist 还在维护吗？

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

