← 返回文章列表
教程

免费关键词提取 / 主题抽取 API 完全教程:一句话总结 100 万文档,零成本给文本装上“找重点”的能力(2026-10-02 验证)

免费关键词提取 / 主题抽取 API 完全教程:一句话总结 100 万文档,零成本给文本装上"找重点"的能力(2026-10-02 验证)

你有没有遇到过这种情况:手头堆了几百篇文章、几千条客服工单、几万条评论,想知道它们到底都在说什么,却不想(也不可能)一篇一篇读。关键词提取(Keyword Extraction)和主题抽取(Topic Modeling)就是干这件事的——它们用算法把一段长文字,自动压缩成几个最关键的词、短语或主题标签。

这是 AI 文本处理里最"低调却高频"的一环:搜索引擎的自动打标签、商品分类、舆情监控、问答系统的意图识别、RAG 知识库的建索引,背后都离不开它。而好消息是,这一环几乎可以零成本跑起来——本文实测整理了 4 条免费路线,从开箱即用的托管 API,到可完全自托管、一分钱不花的开源方案,并给出一段能直接跑的 Python 代码。


一、先分清三个概念:关键词提取 ≠ 分类 ≠ 主题建模

很多人把这几个名词混着用,动手前先对齐口径,能少走很多弯路:

任务 输入 → 输出 典型问法
关键词提取(Keyphrase Extraction) 一篇文章 → 若干关键词/短语 "这篇讲的核心是啥,抽 10 个词给我"
文本分类(Text Classification) 一段文本 → 预设标签之一 "这条评论是好评、中评还是差评?"
主题抽取 / 建模(Topic Modeling) 一堆文档 → 若干主题簇 "这 5000 篇新闻大概分哪几类话题?"

一句话:关键词提取是"从单篇里揪重点",主题建模是"从一堆里归纳类别",文本分类是"往预设框里塞"。本文重点讲前两个——因为它们连标签都不用提前定,最适合"我还不知道数据里有什么"的冷启动场景。


二、4 条免费路线实测盘点

路线 1:Cohere Classify

另外,Cohere 这类托管接口的完整免费额度清单,在免费 API 汇集中心有按厂商整理的对照表,注册前先看一眼不亏。 / 托管 API(最省事)

Cohere 是这几家里把"文本理解"做成产品最彻底的。它的 Classify 端点专为打标签设计,注册即送 Trial Key,额度如下(2026-10-02 从 Cohere 官方文档核实):

额度项 实测上限
全账号每月调用总量 1,000 次
Classify / Rerank 速率 10 次/分钟
Classify 单条输入 最多 512 tokens(长文需截断)
Embed 2,000 输入/分钟
Tokenize 100 次/分钟

Trial Key 明确标注"不可用于生产/商业"。它更偏"文本分类"而非纯关键词抽取,适合你已经知道大概有哪些标签、想快速打标的场景。对纯关键词抽取,下面这条开源路线更对症。

路线 2:KeyBERT(开源,完全自托管,零成本)

KeyBERT 是 GitHub 上最经典的关键词提取库(项目名 MaartenGr/KeyBERT,免费开源)。它的思路特别优雅:用 BERT 类 Embedding 把文档和候选词都向量化,再算相似度,挑出和整篇文档最像的那几个词。

这正好接上了我们站内已经讲透的一条链路——免费 Embedding API 完全教程:零成本搭好 RAG 向量检索地基(2026-09-12 验证)里的向量嵌入,就是 KeyBERT 的"发动机";而它和免费语义相似度(STS)API 完全教程:零成本给文本装上"像不像"的尺子(2026-10-02 验证)用的是同一套"像不像"数学。你完全可以把 KeyBERT 本地跑,一分钱不花。

路线 3:Hugging Face Inference Providers

先在免费 API 汇集中心挑好你要的接口类型,再去对应厂商注册,能省掉不少来回试错的时间。(有免费月额)

Hugging Face 上有一批现成的关键词/短语句抽取模型(如 ml6team/keyphrase-extraction-kbir-inspec、bloomberg/KeyBART),可以直接托管调用。注意其免费额度是"金额制"而非"次数制"(2026-10-02 官方口径):

档位 免费额度
免费用户 $0.10 / 月(约 10 万 tokens 量级,极少量)
PRO($19/月) $2.00 / 月

$0.10 真不多,只够做功能验证。真要做批量,要么用本地 KeyBERT,要么回落到上面的托管路由。

路线 4:Jina Reader + LLM(结构化抽取)

Jina 的 Reader 端点(站内2026 免费 Embedding 向量模型 API 全景对比有它的 Embedding 全景)能先把网页/文档转成干净的 Markdown,再交给任何 LLM 用"给我抽 10 个关键词"的提示词结构化输出。Jina 免费层开源版本 1,000 次/天(沿用站内既有口径),适合爬下来直接抽的流水线。


三、动手:10 行 Python 跑通 KeyBERT

下面这段是核心教学内容(唯一一篇代码),装上依赖就能抽关键词:

from keybert import KeyBERT
from sentence_transformers import SentenceTransformer

# 1. 选一个免费的 Embedding 模型(本地跑,不调 API)
model = SentenceTransformer("BAAI/bge-small-en-v1.5")
kw_model = KeyBERT(model=model)

# 2. 待抽取的长文本
doc = (
    "Large language models have revolutionized how we build search and "
    "retrieval systems. Vector embeddings turn words and documents into "
    "points in space, letting us measure semantic similarity and rerank "
    "results by relevance."
)

# 3. 抽出 Top 5 关键词,每个 1~2 词
keywords = kw_model.extract_keywords(
    doc,
    keyphrase_ngram_range=(1, 2),   # 允许 1~2 词的短语
    stop_words="english",            # 去掉常见停用词
    top_n=5,                         # 只要 Top 5
)
print(keywords)  # 形如 [("vector embeddings", 0.72), ("semantic similarity", 0.69), ...]

输出就是"关键词 + 与全文的相似度分数"的列表,分数越高代表越像整篇文档的核心。要中文就用 paraphrase-multilingual-MiniLM-L12-v2 这类多语言模型替换第一行的模型名即可。


四、主题抽取:从"一篇"到"一堆"的升级

开始之前多说一句:本文用到的 Embedding、Reranker 等免费接口,都可以在免费 API 汇集中心一键找到并申请各自的免费额度。

关键词提取解决单篇,主题抽取面向批量文档。零成本做法有三档:

  1. 词频派(最快):对全部文档做分词 + 停用词过滤 + TF-IDF,按权重聚出高频词簇。无需任何模型,本地 Python 就能跑。
  2. Embedding 簇派(最稳):先把每篇文档 embed 成向量(复用上面 Step 1 的 Embedding 那步),再做聚类(KMeans/HDBSCAN),每个簇的中心词就是"主题"。
  3. 概率模型派(最学术):BERTopic / LDA,能给出每个主题的"主题词 + 概率分布",适合写报告。

无论哪一档,产出物都是同一件事:一份"这批数据都在聊什么"的地图。


五、选型速查:我该用哪条路线?

你的场景 推荐路线 理由
只有几篇、要快、要点准 KeyBERT 本地 零成本、质量高、无额度焦虑
已有预设标签、要打标 Cohere Classify 开箱即用,1,000 次/月白嫖
要抽网页/文档,抽完直接入库 Jina Reader + LLM 抓取 + 抽取一条龙
要处理几千几万篇、找主题 Embedding + 聚类 规模化、可解释

六、避坑清单(实测踩过)

挖坑前先补一句:如果你不想自己维护 KeyBERT 的环境,也可以直接在免费 API 汇集中心找支持文本理解的托管接口,把抽取这一步外包出去。

  • 别把停用词当关键词:不滤掉 "the / and / 的 / 是",Top 结果会被虚词霸占。
  • 长文要先分段:Cohere Classify 单条 512 tokens,整篇文章塞不进去,要截前 300 字符或分段。
  • 别轻信$0.10 月额:Hugging Face 免费的"金额制"很坑,只够验证,批量得用本地 KeyBERT。
  • 关键词 ≠ 摘要:关键词是"标签",摘要是"原文压缩",两者产出格式不同,别混用一个接口。

七、实战验收清单

跑通之后,用下面这张清单自检,能马上发现"抽得对不对":

自检项 通过标准
停用词 Top 10 结果里不出现 the / and / 的 / 是
短语粒度 关键词是 1~2 词的短语,不是破碎单字
领域相关 抽出的词和你文章的主题一致,不是泛词
数量 每篇 5~10 个,不多不少
中文效果 换多语言模型后,中文长文也能抽出"向量嵌入""语义相似度"这类术语

八、总结与下一步

关键词提取和主题抽取,是文本流水线里"投入产出比最高"的一环:几十行代码就能把几百篇文章的"重点"自动捞出来。它天然是 免费 Embedding API 完全教程 和 免费语义相似度(STS)API 完全教程 的下游应用——向量嵌入 + 相似度 + 关键词抽取,构成一条完整的"理解文本"链路;抽出来的关键词,又能顺手喂给 免费 Reranker(重排序)API 完全教程:给 RAG 检索结果装上精准过滤器 做精准召回。

想把这套能力跑进生产?先到 免费 API 汇集中心 挑一个免费的 Embedding 或 LLM 接口搭好地基,再用本文的代码把关键词抽取接进去。如果你还没账号,点这里免费注册,全程不绑卡。

本文所有额度与限制均于 2026-10-02 从 Cohere / Hugging Face / KeyBERT 官方页面核实,免费额度以厂商实时调整为准。


九、为什么关键词抽取适合放在一切"理解类"任务的最前面

很多同学以为关键词抽取只是"写报告前抓几个词"的小工具,其实它是整条文本流水线的哨兵:在正式做分类、聚类、检索、生成之前,先用它把数据快速"扫一遍",你就能立刻知道这批数据里有哪些高频概念、哪些领域术语、哪几篇是重点。配合本文第一节的分类清单,你可以把任意一批杂乱文本,在一小时内变成"已打标签、已抽重点、已归好主题"的干净语料。

更进一步,把关键词抽取的输出喂给下游,收益是立竿见影的:关键词可以作为全文索引的标签,让 免费 Reranker(重排序)API 完全教程:给 RAG 检索结果装上精准过滤器 在召回阶段就过滤掉不相关的内容,也可以作为用免费 Embedding API 构建 RAG 知识库的元数据,让检索结果带上"为什么相关"的解释。这套组合拳,正是很多生产级搜索和问答系统的标配。检索落地时的存储与召回环节,可以参考免费向量数据库 API 实力榜单:Chroma / pgvector / Qdrant / Weaviate / Milvus 6 大方案 5 维实测排行,把抽取出的关键词直接写进向量库的元数据。

如果你希望整套流程都在零成本范围内跑通,本站的免费 API 汇集中心已经把 Embedding、Reranker、向量数据库、LLM 调用等免费接口按场景分好了类,照着链接去申请即可;还没有账号的话,先点这里免费注册,后续所有教程都能直接上手实践。

相关文章

免费意图识别 API 完全教程:零成本给文本装上"听懂人话"的能力(2026-10-07 验证)免费命名实体识别(NER)API 完全教程:零成本从文本里挖出人名/地名/金额(2026-10-04 验证)免费时间序列预测 API 完全教程:零成本给销售/库存/电价装上“水晶球”(2026-10-03 验证)免费语义相似度(STS)API 完全教程:零成本给文本装上"像不像"的尺子(2026-10-02 验证)免费语音克隆(Voice Cloning)API 完全教程:用一段参考音频复刻你的专属音色

想立即用上免费 LLM API?

APIShare 聚合全球免费 AI 接口,注册即送额度。