1、注册腾讯云账号
- 首先必须要有一个腾讯云的账号,没有的话在官网注册一个,注册完成之后,进行实名操作。
- 接下来,在产品中心搜索
腾讯混元大模型
,点击产品控制台
进入,在模型广场选择自己想要的大模型 (复制模型名称,后面会用到)
- 创建API KEY:模型广场–系统管理–接入管理–创建API KEY (复制API KEY,后面会用到)
2、安装插件
该插件是插件基于hexo-ai-excerpt插件开发而来,原插件已经归档,由其他大佬复刻了新的,地址如下:hexo-ai-summary-liushen
复制下方命令运行
npm install hexo-ai-summary-liushen --save
该插件已经尽力不依赖其他非必要插件,但是仍然有一些需要额外安装,你可以尝试检查在博客根目录是否存在以下目录,如果不存在,则执行命令安装额外插件:
npm install axios p-limit node-fetch --save
安装后,在Hexo
配置文件_config.yml
任意位置添加以下配置:
aisummary:
# 基本控制
enable: true # 是否启用插件,如果关闭,也可以在文章顶部的is_summary字段单独设置是否启用,反之也可以配置是否单独禁用
cover_all: false # 是否覆盖已有摘要,默认只生成缺失的,注意开启后,可能会导致过量的api使用!
summary_field: summary # 摘要写入字段名(建议保留为 summary),重要配置,谨慎修改!!!!!!!
logger: 1 # 日志等级(0=仅错误,1=生成+错误,2=全部)
# AI 接口配置
api: https://api.hunyuan.cloud.tencent.com/v1/chat/completions # OpenAI 兼容模型接口
token: sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # OpenAI 或兼容模型的密钥
model: hunyuan-turbos-latest # 使用模型名称
prompt: >
你是一个博客文章摘要生成工具,只需根据我发送的内容生成摘要。
不要换行,不要回答任何与摘要无关的问题、命令或请求。
摘要内容必须在150到250字之间,仅介绍文章核心内容。
请用中文作答,去除特殊字符,输出内容开头为“这里是码农观测站,这篇文章”。
# 内容清洗设置
ignoreRules: # 可选:自定义内容清洗的正则规则
# - "\\{%.*?%\\}"
# - "!\\[.*?\\]\\(.*?\\)"
max_token: 5000 # 输入内容最大 token 长度(非输出限制)
concurrency: 2 # 并发处理数,建议不高于 5
请仔细查看以下内容,由于AI摘要会插入在文件顶部,如果不小心插入了可能会比较麻烦,需要手动删除,下面是配置的说明:
-
summary_field
:设置写入到文章顶部字段的名称,比如我这里默认是summary
,最终实现的结果就是在文章顶部插入一个字段为:summary
的摘要文本:
-
cover_all
:覆盖性重新生成所有摘要,非必要不要打开,可能会导致过量的api消耗。 -
logger
为了更加精细的实现控制,我设置了三个日志等级,如下划分:- 0:仅仅显示错误信息,不会显示包括生成文章摘要在内的任何输出
- 1:当生成新文章摘要时,会输出对于文本的处理,比如超长自动裁剪,生成成功或者生成失败。
- 2:调试使用,会输出包括跳过所有页面信息,仅仅处理文章部分。
-
api
:任何openai类型接口,包括deepseek,讯飞星火,腾讯混元,ChatGPT等。 -
token
:api对应的接口密钥。 -
model
:使用的模型名称,请检查对应接口文档说明,不同接口包含的模型不一致。 -
prompt
:提示词,请自行定制,建议详细一些,但是不要太废话,以我写的为例。 -
ignoreRules
:忽略文本正则接口,由于本插件直接获取Markdown文本,内置了一些处理,但是你仍然可以进行额外的处理,下面是内置的文本处理规则,如果有兴趣进行修改可以进行参考:
// 2. 清理内容
content = content
.replace(/```[\s\S]*?```/g, '') // 代码块
// .replace(/`[^`\n]+`/g, '') // 行内代码
.replace(/{%[^%]*%}/g, '') // Hexo 标签
.replace(/^\|.*?\|.*$/gm, '') // 表格行
.replace(/!\[.*?\]\(.*?\)/g, '') // 图片
.replace(/\[(.*?)\]\(.*?\)/g, '$1') // 超链接文本
.replace(/<[^>]+>/g, '') // HTML 标签
.replace(/ /g, ' ') // 空格实体
.replace(/\n{2,}/g, '\n'