Repolode
jkrup

jkrup/jeveryword

基于 TypeSafe Jev 模型的零依赖 JavaScript 库,从短文本中提取原文字段、精确引文和 PII 标签。

Star
42
Fork
3
未关闭 Issue
0
最近提交
2个月前

这是什么?

jeveryword 让 TypeSafe 的 Jev 模型能够用于文本抽取。Jev 只能回答选择题,无法生成文字,因此本库会为输入文本的每个词编号,把编号作为候选答案交给模型,再把模型选中的编号换算回原文的子串及字符位置。因此返回的每个值都是输入原文的精确片段,每个结果还附带概率,便于决定哪些值需要向用户确认。

主要接口包括:extractSpans 按用自然语言描述定义的字段抽取内容;classifyChunks 配合 mergeChunks 为每个词打标签,例如 PII 类别;底层的 tokenize 则可用于自定义问题。本库无依赖,支持 Node 20+、Cloudflare Workers、Deno 和 Bun,并提供用于测试的模拟模型客户端。README 还介绍了一个通过 x402 以 USDC 按次付费的托管 HTTP API。

项目目前处于实验阶段,作者仅在少量合成消息上做过检验。它适合实时处理的短文本,不适合长文档,也不适合需要计算或重新格式化的值。

核心功能

  • 01从文本中抽取命名字段,返回带起止位置的原文精确片段。
  • 02结果区分已提取、缺失和歧义三种状态,并附带概率值。
  • 03为每个词打上 PII 或自定义类别标签,并把相邻的同类词合并为文本片段。
  • 04提供底层 tokenize 接口,用于构建自定义选择题。
  • 05无运行时依赖,可在 Node、Deno、Bun 和 Cloudflare Workers 上运行。

适用场景

  • 从客服消息或登记表单中提取姓名、邮箱或订单号。
  • 在短聊天消息存储或展示前,高亮标出个人隐私信息。
  • 构建审核环节,由用户确认概率较低的抽取结果。
  • 在编程代理或无服务器函数中,对短文本执行抽取任务。

快速上手

  1. 1

    从 npm 安装该包

    npm install jeveryword
  2. 2

    将 TypeSafe API 密钥设置为环境变量

    export TYPESAFE_API_KEY=…
  3. 3

    导入 extractSpans 和 createJevClient,对你的文本运行提取(参见 README 示例)

使用前须知

  • README 称其为实验性项目,仅在少量合成消息上做过检查,未进行基准测试。
  • 运行需要 TypeSafe API 密钥,每次调用按 Jev 的标价计费。
  • 需要 Node 20 或更高版本。

收录于专题

标签

常见问题

jeveryword 是什么?
基于 TypeSafe Jev 模型的零依赖 JavaScript 库,从短文本中提取原文字段、精确引文和 PII 标签。 jeveryword 让 TypeSafe 的 Jev 模型能够用于文本抽取。Jev 只能回答选择题,无法生成文字,因此本库会为输入文本的每个词编号,把编号作为候选答案交给模型,再把模型选中的编号换算回原文的子串及字符位置。因此返回的每个值都是输入原文的精确片段,每个结果还附带概率,便于决定哪些值需要向用户确认。
jeveryword 可以免费使用吗?用的什么许可证?
jeveryword 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
jeveryword 还在维护吗?
半年内有更新。jeveryword 最近一次提交是在 2026年9月20日。
jeveryword 适合用来做什么?
从客服消息或登记表单中提取姓名、邮箱或订单号。 在短聊天消息存储或展示前,高亮标出个人隐私信息。 构建审核环节,由用户确认概率较低的抽取结果。 在编程代理或无服务器函数中,对短文本执行抽取任务。
jeveryword 怎么安装和运行?
从 npm 安装该包: npm install jeveryword 将 TypeSafe API 密钥设置为环境变量: export TYPESAFE_API_KEY=… 导入 extractSpans 和 createJevClient,对你的文本运行提取(参见 README 示例)
在哪里获取 jeveryword?
源代码和安装说明在 GitHub 上:https://github.com/jkrup/jeveryword

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目