Jev-X · 实践记录

JEV 在 Jev-X 中的实际应用

用一次请求完成分类与评分,再把结果接入内容筛选、排序和展示。

内容流进入 JEV 决策节点,再连接分类、评分和排序步骤的抽象科技图。
JEV 提供判断,程序把结果组织成内容精选流程。

在做 Jev-X 的过程中,JEV 降低了我实现内容分类、评分和推荐排序的难度。

Jev-X 希望把 X 上围绕 JEV 的讨论整理起来,让读者更容易找到重要更新、教程、开源项目、评测和应用案例。抓取内容只是起点。更关键的问题是:这些内容分别在讲什么?提供了多少实际信息?哪些值得优先展示?

只靠关键词和互动数字,我需要维护许多规则,也容易遇到难以区分的情况。一条包含 GitHub 链接的帖子,可能是在发布工具,也可能只是顺带引用资料;一条获得大量回复的帖子,可能很有价值,也可能只是引发了争论。

有了 JEV,我可以把这些判断直接放进现有流程:模型提供分类和评分,程序根据结果执行筛选、排序和展示。对于当前这个内容精选项目,我因此可以用比较少的代码,完成一套可以持续运行的处理流程。

一次请求,三种判断

每条进入分类流程的内容,我会通过同一次 JEV 请求提出三个问题,分别对应 Choice、Noul 和 Score:

一条内容的三个判断(可左右滑动查看)
判断类型要解决的问题程序使用的结果
内容分类Choice这条帖子主要在讲什么?类别、类别置信度
相关性NoulJEV 或 TypeSafe AI 是否是内容的主角?相关性概率
内容质量Score对想了解 JEV 的读者而言,它有多少信息价值?质量评分
帖子正文和上下文进入同一次请求,Choice 返回类别及置信度,Noul 返回相关性概率,Score 返回 0–4 的质量分。
同一次请求里完成内容分类、相关性判断和质量评分。 查看原图 ↗

输入是内容及其上下文,输出是程序可以直接使用的结构化结果。TypeSafe 官方文档也支持在一次请求中组合这些问题。[1]

拿到类别之后,我可以生成筛选标签;拿到质量分之后,我可以决定是否进入精选,以及怎样参与排序。Prompt 是否贴合项目需要,决定了这些结果是否好用。

分类:把边界写清楚

分类 Prompt 设置了九个类别:集成、开源、竞品比较、教程、案例、评测、访谈、资讯和观点。每个类别除了名称,还写了定义、排除条件和示例。

例如,平台宣布支持 JEV,通常归入“集成”;作者展示自己用 JEV 做出的应用,通常归入“案例”;发布供别人安装使用的仓库、CLI 或插件,则更适合归入“开源”。这些内容都可能提到“用 JEV 做了什么”,但读者寻找它们的目的不同。

我要求模型按照帖子的主要目的分类。如果一条内容同时符合多个类别,就选择读者最希望用来筛选它的那个类别。

“教程”和“评测”也有明确标准。教程需要实际教会读者一些东西,或者明确介绍作者写出的指南;评测需要包含实际测试得到的数据。仅仅重复官方的速度宣传,不会因此自动成为一篇评测。

类别置信度不足时,程序会退回关键词规则。JEV 减少了需要手工维护的判断,但现有流程仍然保留了这个备用处理方式。

相关性:先记录和观察

相关性问题单独判断:帖子是在认真讨论 JEV,还是只顺带提到它、加了一个标签,甚至讨论的是同名人物或其他产品。

当前默认配置会保存这个结果,供观察和调整使用,没有把它作为强制筛选门槛。

质量:先看内容,再看互动

在质量评分上,我最重视的一条要求是:看内容实际提供了什么,而不是它听起来有多兴奋。

我没有只让模型“打一个 0 到 100 的分数”,而是先定义五档可理解的标准:

  1. 噪音:垃圾信息、抽奖、诱导互动或无关内容。
  2. 纯反应:情绪、感叹或没有信息的一句话。
  3. 有一定信息:带理由的观点,或者对已有事实的简短整理。
  4. 具体信息:真实新闻、集成进展、应用演示、实测数据或清楚的解释。
  5. 值得反复阅读:原创洞见、可复用方法、教程、开源工具或值得保存的数据,并有读者互动作为佐证。

JEV 按这些标准返回 0–4 的数值评分,程序再换算成页面使用的 0–100 分。它表达的是内容对目标读者的参考价值。

输入里包含哪些信息

为了给模型足够的上下文,我会把正文、作者、引用内容、外链、媒体类型和互动数据一起整理成输入。互动数据包括点赞、转发、引用、回复、收藏和浏览量,也包含计算后的互动指标。

Prompt 要求先判断内容,再把互动当作辅助证据。例如,较高的收藏比例可能说明读者愿意保存这条内容,但抽奖、“回复 1”、关注转发要求和争吵带来的互动,不应该因此获得高分。最高档也不能只靠热闹来判断。

对于介绍文章、仓库或视频的帖子,我要求模型根据正文对它们的描述判断价值。一个清楚介绍工具用途的短帖,仍然可能提供有用的信息。

当前流程没有让 JEV 阅读外链全文或观看视频画面,判断依据仍然是传入的文字和元信息。这也是理解评分时需要记住的边界。

排序:把质量分放进公式

拿到质量分之后,最终排序仍然由程序完成。目前项目使用的公式很简单:

互动分 = 点赞 × 0.5 +(转发 + 引用)+ 回复 × 13.5

收藏和浏览会进入 Prompt,不直接进入上面的互动分公式。

排序分 = JEV 质量分 × log10(10 + 互动分)

对互动分取对数,可以压缩热门内容在数字上的优势,让质量分在排序中发挥作用。

以两条假设内容为例:

  • 质量分为 80、互动分为 100:
    80 × log10(110) ≈ 163.3
  • 质量分为 25、互动分为 1,000:
    25 × log10(1010) ≈ 75.1
假设示例:质量分 80、互动分 100 的内容,排序分约 163;质量分 25、互动分 1000 的内容,排序分约 75。
在这组假设示例中,质量分较高的内容排在前面。实际排序由质量和互动共同决定。 查看原图 ↗

这组例子说明,质量更高的内容可以超过互动更多的内容。公式仍然同时考虑两者,不能保证所有高质量内容都一定排在高互动内容前面。

实际精选还包含互动门槛、候选数量限制、低质量过滤和同一作者的展示数量限制。这套机制服务于内容精选,没有引入用户画像或个性化推荐。

流程:从抓取到页面展示

Jev-X 的六步数据流程:抓取 X 内容、保存至 D1、队列调用 JEV、保存分类与评分、筛选排序写入 KV、网页读取展示。
抓取、判断和展示各自承担清楚的职责。 查看原图 ↗
  1. 抓取相关 X 内容
  2. 保存内容至 D1
  3. 队列调用 JEV
  4. 保存分类与评分
  5. 筛选排序并写入 KV
  6. 网页读取结果

新抓取且进入分类范围的内容会登记任务。JEV 的结果保存完成后,再由后台整理和发布列表。

同一条内容如果已经有当前 Prompt 版本的完整结果,就可以复用。互动数字更新后,程序在后续发布时重新计算排序,不必每次都重新调用模型。发布失败后,也可以继续使用已经保存的判断。

网页访问直接读取整理好的结果,因此读者打开页面时,不需要等待模型现场评分。JEV 在这里承担的是一个明确、可以重复使用的判断步骤。

成本和速度

低成本是我愿意持续使用 JEV 的另一个原因。截至 2026 年 10 月 2 日,TypeSafe 官方模型文档给出的价格是每百万输入 tokens 0.042 美元,输出 tokens 免费。[2]

举一个便于理解的估算:假设一条内容连同 Prompt 共消耗 2,000 个输入 tokens,那么单次模型费用约为 0.000084 美元,处理一万条约为 0.84 美元。

这是按假设输入长度计算的示例,并非 Jev-X 的实测用量。实际费用会随正文和 Prompt 长度变化,也不包含 X 数据抓取与基础设施费用。这个量级让我可以把分类和评分放进日常处理流程。

速度同样重要。TypeSafe 的官方发布说明报告了 70–500 毫秒的端到端响应时间。[3]这是官方口径,Jev-X 尚未记录自己的延迟分布,也不能把它等同于从抓取到页面展示的总耗时。

对于需要不断重复分类和评分的项目,低成本和较短的响应时间结合起来,会直接影响这个流程是否容易长期运行。

把内容判断变成日常可用的一步

通过 Jev-X,我对 JEV 的价值有了更具体的理解:它让我更容易把内容判断写进软件。

我仍然需要定义类别、设计评分标准、处理低置信度结果,并检查实际展示效果。评分只是阅读和筛选的参考,不能替代对原文的理解。

但有了 JEV,我可以把更多精力放在产品判断上:读者需要什么信息,哪些内容值得优先出现,以及怎样让有价值的探索更容易被发现。

用较低的成本,把分类和评分变成一个日常可用的步骤,再通过简单、明确的代码,把结果组织成读者可以浏览的内容。这就是 JEV 在这个项目里带给我的实际帮助。