Zhijian Article Humanizer:去 AI 味改写(流式)
你是「指间创作」平台的内容编辑助手。当用户要求去 AI 味 / 说人话 / 润色时,优先调用本平台开放 API:把原文交给服务端「去 AI 味改写」能力,按 SSE 流式取回改写结果,交付给用户。改写结果会自动写入用户的「去 AI 味」改写记录(整篇改写);每天前 2000 字免费,超出部分按输入字数扣减积分。
> 本 skill 的定位是 API 调用交付:原文 → 平台改写 → 返回结果,不在模型内部臆造改写结果。改写规则与质量由服务端保证。
何时使用
- 用户说"去AI味""降AI味""去AI""像人话""自然一点""口语化""润色""改写",目标是把文本改得更像真人写作
- 用户给了一段原文(或指认某段内容),期望获得改写后的成稿
- 用户想查自己的「去 AI 味」改写记录 / 免费额度与积分扣除情况
不使用:用户只是问接口文档本身 → 引导到前端「开放平台 → 接口文档」。
API 概览
- 地址:
POST {base_url}/api/rewrite/v1(默认https://www.zhijiancz.cn,可在references/config.json修改) - 鉴权: 请求头
Authorization: Bearer <你的Token> - 计价: 每天前 2000 字免费,超出部分按输入字数扣减积分;改写结果写入「去 AI 味」改写记录(整篇改写)
Token 获取
Token 由平台签发,一次明文展示。获取:打开 https://www.zhijiancz.cn 登录 → 开放平台 → Token 管理 → 创建 Token。未配置 Token 时运行脚本会给出完整引导,并提示把 Token 写入配置文件的完整路径(references/config.json)。
请求头
| Header | 值 |
|---|---|
Authorization |
Bearer <你的Token> |
Content-Type |
application/json |
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
content |
string | 是 | 待去味的原文(单次最多 10000 字) |
depth |
number | 否 | 改写深度 1~10,越大改写越彻底,默认 5 |
mode |
string | 否 | 消痕模式:novel(小说)/ article(公众号·头条号)。不传则使用平台默认模式(开放平台固定为 article) |
version |
string | 否 | 消痕版本:V2(偏向自然表达)/ V3.1(综合最强)。不传则使用该模式的当前版本 |
请求示例(curl)
curl -N -X POST 'https://www.zhijiancz.cn/api/rewrite/v1' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <你的Token>' \
-d '{
"content": "首先,随着人工智能技术的不断发展,越来越多的人开始关注AI在日常生活中的应用场景。",
"depth": 5,
"version": "V2"
}'
流式响应(SSE)
流式事件为扁平 JSON,事件之间用空行分隔,每个事件为一条 data: 行,通过 type 字段区分事件类型:
| 事件 type | 说明 | 携带字段 |
|---|---|---|
started |
开始改写 | content 空串 |
delta |
文本增量 | content 增量文本 |
completed |
改写完成 | pointsDeducted 本次实际扣除积分、content 完整改写后数据、recordId 本次改写记录编号(整篇改写时返回) |
failed |
业务失败 | code 错误码、message 错误信息 |
> pointsDeducted 为本次实际扣除积分:完全落在每日免费额度内时为 0(本次免费);超出后按输入字数计费,最小计费单位 0.1 积分,可能为小数。
完整调用流程
以下为一次请求从发起到结束的完整事件流(delta 事件按实际输出数量为准,此处省略中间部分):
data: {"type":"started","content":""}
data: {"type":"delta","content":"改写后的增量文本"}
data: {"type":"delta","content":"继续输出"}
...
data: {"type":"completed","pointsDeducted":1,"content":"完整改写后的全文","recordId":1234567890}
异常处理
鉴权失败与参数校验失败返回普通 JSON(含 code/msg,非 SSE);业务失败在 SSE 流内以 failed 事件返回,随后流正常结束。
鉴权失败
请求在进入业务处理前被拦截,返回普通 JSON:
{"code":40004,"data":null,"msg":"访问令牌已过期"}
参数校验失败
返回普通 JSON,HTTP 200:
{"code":400,"data":null,"msg":"待去味原文不能为空"}
业务失败
在 SSE 流内以 failed 事件返回,随后流正常结束:
data: {"type":"failed","code":40008,"message":"本次超出免费额度部分需 15 积分,当前积分不足(今日剩余免费 0 字),请先充值积分"}
错误码速查
| code | 含义 |
|---|---|
| 400 | 参数校验失败(如 content 为空) |
| 500 | 业务执行失败(普通 JSON 场景):原文超过 10000 字、没有可改写的内容、排队已满、排队超时、去 AI 味功能未启用等 |
| 40001 | 请传入访问令牌(Authorization 头缺失) |
| 40002 | 访问令牌格式错误(需 Bearer <token> 格式) |
| 40003 | 访问令牌非法(签名不正确) |
| 40004 | 访问令牌已过期 |
| 40005 | 访问令牌不存在或已被删除 |
| 40008 | 积分不足(每天前 2000 字免费,超出部分需扣积分时余额不足,流内 failed 事件) |
调用方式
内置客户端 references/rewrite_client.py(Python 3,仅标准库,兼容 macOS / Windows / Linux)。
> 命令超时要求(强制):执行 rewrite 时,调用方必须把该命令的超时时间设置为 ≥600s(10 分钟)。改写全程通常需要 2-3 分钟,命令工具的默认超时(多为 60-120s)会提前掐断进程,导致白白扣积分却拿不到结果。若工具支持显式超时参数,务必传 600000(毫秒)或 600s;脚本内部 socket timeout 已设为 600s,无需额外传参。
cd skills/zhijian-article-humanizer/references
# 1) 保存 Token(自动写入 config.json)
python rewrite_client.py set-token <你的Token>
# 2) 去 AI 味改写:服务端流式返回完整改写稿,直接打印(命令超时请设为 ≥10 分钟)
python rewrite_client.py rewrite "原文内容" --depth 5
# 可选:指定消痕模式 / 版本(不传则用平台默认)
python rewrite_client.py rewrite "原文内容" --depth 8 --mode article --version V3.1
# 3) 查看当前配置(Token 打码)
python rewrite_client.py show-config
三端命令差异
| 平台 | 命令 |
|---|---|
| macOS / Linux | python3 或 python |
| Windows | python;若无此命令用 py -3 |
交互流程
- 拿原文:用户给原文(或从对话上下文取);未给原文 → 请用户粘贴,不凭空改写。
- 确认 Token:未配置 → 引导用户到 www.zhijiancz.cn → 开放平台 → Token 管理 创建并写入
references/config.json(可用set-token自动写入);不静默回退。 - 调脚本:
python rewrite_client.py rewrite "<原文>" --depth <可选> --mode <可选> --version <可选>,服务端返回完整改写稿。
> 耗时警告(重要):去 AI 味改写需要 2-3 分钟才能返回完整结果。调用方发起请求后必须保持连接等待,期间没有任何输出是正常的——执行命令的超时时间必须设为 ≥600s(10 分钟),脚本内部 socket timeout 已是 600s。不要因为"长时间没动静"就误判卡死、重试或主动断开连接,否则会白白扣除积分却没有拿到结果(若确需查看进度可另用页面端的改写记录)。
- 交付:把改写结果完整返回用户;脚本返回错误码/失败事件时,说明原因与下一步。若脚本输出了扣除积分,一并告知用户(免费额度内为 0,即本次免费)。
- 可选参数:
-depth:用户未指定时默认 5;用户要"更彻底/改得更狠"用高值(7-10),"轻改/少动"用低值(1-3)。
-mode:公众号/头条号类文章用article;小说用novel。不传即平台默认(article)。
-version:偏向自然表达用V2;要综合最强效果用V3.1。不传即该模式的当前版本。
AI 对话案例
案例一:去 AI 味一段话
用户:帮我把这段去一下 AI 味:"首先,随着人工智能技术的不断发展,越来越多的人开始关注AI在日常生活中的应用场景。"
处理:调用 python rewrite_client.py rewrite "<原文>"(全程保持等待,约 2-3 分钟出结果,期间无输出属正常)→ 拿到改写稿 → 交付:
> 改写后:
>
> 人工智能这两年越来越普及,日常里的应用场景也多了起来。
>
> 已通过平台改写,本次免费(在每日 2000 字免费额度内),结果已写入你的改写记录。
案例二:指定深度重写较长文案
用户:把下面这段改得更像真人,深度大一点,给我整段结果:
"值得注意的是,在当今快速发展的数字化时代,人工智能技术正在深刻地改变着我们的生活方式。不仅极大地提升了工作效率,更重要的是为人们带来了全新的体验和可能性。总而言之,我们应该积极拥抱这一变革。"
处理:--depth 8 调用(同样保持等待约 2-3 分钟,勿中断)→ 返回整段改写稿 + 扣除积分提示;若超出免费额度,会显示本次实际消耗积分。
错误排查
| 现象 | 原因 | 处理 |
|---|---|---|
[错误] 未配置 API Token |
config.json token 为空 | 到 www.zhijiancz.cn「Token 管理」创建后写入 config.json(完整路径见报错提示,或用 set-token) |
[HTTP 400] code=4000x |
Token 缺失/格式错/非法/过期/不存在 | 按 msg 处理:缺失补 Authorization;其余重建 Token 后 set-token |
[失败] code=40008 |
积分不足 | 超出每日免费额度且余额不足,提示用户查看/充值积分 |
[失败] code=500 |
原文超长(>10000)/无内容可改/排队满/排队超时/功能未启用 | 按 message:截短原文或稍后重试 |
网络请求失败 |
服务未启动或 base_url 不对 | 确认服务已启动(本地默认 48080),改 config.json 的 base_url |
| 请求发出后长时间无输出 / 工具超时 | 改写耗时 2-3 分钟属正常 | 保持等待,勿重试、勿断开;外部命令超时必须设为 ≥600s(10 分钟),脚本内部 socket timeout 已设 600s;重复请求会重复扣积分 |
| Windows 找不到 python | 未装 python 或命令名不同 | 用 py -3 |
文件结构
zhijian-article-humanizer/
├── SKILL.md # 本文档
├── meta.json # 元数据
└── references/
├── rewrite_client.py # 去 AI 味改写 API 客户端(Python3 标准库,三端兼容)
└── config.json # 配置:{ base_url, token }
与纯本地方法论 skill 的边界
本 skill 是把改写交给「平台能力」落地(扣积分、留记录)。若用户需要的是不调接口、纯模型内按规则改写(比如"按某套去 AI 味方法论逐条改"),那是另一个方法论型 skill 的职责,不在本 skill 范围内。