Humanize Chinese AI Text v3.0
中国語AI生成テキストの検出と書き換えのための完全なツールチェーン。単独実行(統一CLIまたは独立スクリプト)も、LLMプロンプトガイドとしての利用も可能です。
v3.0のハイライト: HC3精度 51→73%(+22ポイント);句長CV Cohen's d=1.22 最強の統計的特徴;40パラフレーズテンプレート + 122学術置換;統一CLI + --quick 18倍高速。
CLIツール
統一CLI(推奨)
./humanize detect テキスト.txt -v # 検出 + 詳細
./humanize rewrite テキスト.txt -o 書き換え後.txt --quick # 高速書き換え(18倍)
./humanize academic 論文.txt -o 書き換え後.txt --compare # 学術低減 + 両スコア比較
./humanize style テキスト.txt --style xiaohongshu # スタイル変換
./humanize compare テキスト.txt -a # 変換前後比較
独立スクリプト(同等機能)
すべてのスクリプトは scripts/ ディレクトリにあり、純粋なPythonで依存関係はありません。
# AIパターン検出(20以上のルール次元 + 8統計的特徴、0-100点)
python scripts/detect_cn.py text.txt
python scripts/detect_cn.py text.txt -v # 詳細 + 最も疑わしい文
python scripts/detect_cn.py text.txt -s # スコアのみ
python scripts/detect_cn.py text.txt -j # JSON出力
# 書き換え(保守的/中程度/全面的 の3段階適応)
python scripts/humanize_cn.py text.txt -o clean.txt
python scripts/humanize_cn.py text.txt --scene social -a # ソーシャル + 積極的
python scripts/humanize_cn.py text.txt --quick # 18倍高速、単純置換
python scripts/humanize_cn.py text.txt --cilin # CiLin類義語拡張を有効化
# スタイル変換(まず自動humanize、次にスタイル適用)
python scripts/style_cn.py text.txt --style zhihu -o out.txt
# 変換前後比較
python scripts/compare_cn.py text.txt --scene tech -a
# 学術論文AIGC低減(11次元 + 拡散度 + 両スコア)
python scripts/academic_cn.py paper.txt -o clean.txt --compare
python scripts/academic_cn.py paper.txt -o clean.txt -a --compare # 積極的
python scripts/academic_cn.py paper.txt -o clean.txt --quick # 高速モード
スコア基準
| スコア | レベル | 意味 |
|---|---|---|
| 0-24 | LOW | ほぼ人間が書いたように見える |
| 25-49 | MEDIUM | AIの痕跡がややある |
| 50-74 | HIGH | 高い確率でAI生成 |
| 75-100 | VERY HIGH | ほぼ確実にAI生成 |
パラメータ一覧
| パラメータ | 説明 |
|---|---|
-v | 詳細モード、疑わしい文を表示 |
-s | スコアのみ |
-j | JSON出力 |
-o | 出力ファイル |
-a | 積極的モード |
--seed N | 乱数シード固定 |
--scene | general / social / tech / formal / chat |
--style | casual / zhihu / xiaohongshu / wechat / academic / literary / weibo |
--compare | 変換前後比較(学術用両スコア) |
--quick | 高速モード(統計的最適化をスキップ、18倍高速) |
--cilin | CiLin類義語拡張を有効化(humanize、38873語) |
--no-humanize | style変換前にAI用語を除去しない |
ワークフロー
# 1. 検出
./humanize detect document.txt -v
# 2. 書き換え + 比較
./humanize compare document.txt -a -o clean.txt
# 3. 検証
./humanize detect clean.txt -s
# 4. オプション:スタイル変換
./humanize style clean.txt --style zhihu -o final.txt
HC3-Chinese ベンチマークテスト
v3.0のすべての閾値は、HC3-Chinese の300+300の人間/AIサンプルに基づくCohen's dで校正されています:
- 句長変動係数 CV: d = 1.22(最強の単一信号)
- 短文率 (< 10文字): d = 1.21
- perplexity: d = 0.47
- GLTR top-10 bucket: d = 0.44
- DivEye skew / kurt: d = 0.41 / 0.29
- カンマ密度: d = -0.47
100サンプル回帰テスト:73%の正しい分離率 / 9.9点のギャップ / +4.2の平均低下。
LLM直接利用ガイド
ユーザーが「AI臭を消して」「AIGCを減らして」「テキストを人間らしく」「人間の言葉に直して」と要求した場合、CLIツールを実行できない状況では、以下の手順で手動処理を行います。
ステップ1:AIの書き方パターンの検出
テキスト内の以下のパターンをスキャンし、深刻度に応じて分類します:
🔴 高リスクパターン(一目でAIとわかる)
三段式テンプレート:
- まず…次に…最後に
- 一方では…他方では
- 第一に…第二に…第三に
機械的な接続詞: 注目すべきは、以上をまとめると、容易にわかる、要するに、それと同時に、これにより、これだけでなく、言い換えれば、さらに重要なのは、否定できない、明らかである、言うまでもなく、突き詰めれば
空虚な大げさな言葉: エンパワーメント、クローズドループ、デジタルトランスフォーメーション、シナジー効果、コスト削減と効率化、深い融合、全方位的、多次元的、体系的な、質の高い発展、新たな生産力
🟠 中リスクパターン
AI高頻出語: 促進、顕著、際立つ、根底のロジック、抓手、リーチ、沈殿、振り返り、イテレーション、界を破る、破壊
埋め草の決まり文句: 特筆すべきは、周知のとおり、疑いの余地なく、具体的には、簡単に言えば
テンプレート文型:
- ~の絶え間ない発展に伴い
- 今日の~時代において
- ~の背景のもとで
- ~の重要な構成要素として
- これは~だけでなく、さらに~である
バランス論じの常套句: ~ではあるが…同時に、~もあれば…もあり、さらに~もある
🟡 低リスクパターン
- ためらい語が多すぎる(「ある程度」「いくぶん」が5回以上出現)
- 列挙中毒(①、②、③、④、⑤を多用)
- 句読点の乱用(多くのセミコロン、ダッシュ)
- 修辞の重ねすぎ(対句、並列が多すぎる)
⚪ スタイル信号
- 段落の長さが非常に均一
- 文の長さが単調
- 感情表現が平板
- 書き出しパターンが繰り返される
- 情報エントロピーが低い(使用語が予測可能)
ステップ2:書き換え戦略
以下の順序で処理します:
1. 三段式を削除 「まず…次に…最後に」をばらして、自然な推移に置き換えます。すべての論点に番号を振る必要はありません。
2. AI決まり文句を置換
- 以上をまとめると → とにかく / つまり / (直接削除)
- 注目すべきは → (直接削除、続く文だけで説明できる)
- エンパワーメント → 支援 / サポート / 向上
- デジタルトランスフォーメーション → 情報化改修 / 技術アップグレード
- 容易にわかる → 見てわかる / (削除)
- 促進 → 助ける / 推進する
3. 文構造の再編
- 短すぎる文を結合(「彼は疲れた。彼は休むことにした。」→「彼は疲れて、ひと休みすることにした。」)
- 長すぎる文を分割(「しかし」「ただし」「同時に」などの転換点で区切る)
- 均一なリズムを打破(長短の文を交互に配置し、すべての文がほぼ同じ長さにならないようにする)
4. 重複語を減らす 同じ単語が3回以上出現したら類義語に置き換えます。例えば「行う」は「やる」「実施する」「進める」「着手する」などに。
5. 人間らしさを注入
- 口語表現を1、2文加える(状況が許せば)
- 抽象的な一般化の代わりに具体的な例を使う
- たまに反語や感嘆を入れる
- すべての段落を総-分-総構造にしない
6. 段落のリズム すべての段落がほぼ同じ長さになるのを避けます。ある段落は2文、別の段落は5文、人間が書くときの自然な長短の変化を模倣します。
ステップ3:学術論文の特別処理
テキストが学術論文の場合、書き換えルールが異なります——口語化はできず、学術的な厳密さを維持する必要があります:
学術専用検出次元:
- AI学術的措辞(「本稿の目的は」「重要な意義を持つ」「詳細な分析を行った」)
- 受動態の過剰使用(「広く応用されている」「~と考えられている」)
- 段落構造が整然としすぎている(各段落が総-分-総)
- 接続詞の密度異常
- 同義表現の不足(「研究」が8回出現)
- 引用の統合度が低い(すべての引用が「XX(2020)は…と指摘した」)
- データ論述のテンプレート化(「表からわかるように」)
- 過度な列挙(①、②、③、④が頻繁に出現)
- 結論が完璧すぎる(限界に触れず、良い面だけを述べる)
- 口調が確定的すぎる(「必然的に」「疑いなく」)
学術書き換え戦略:
-
AI学術決まり文句を置換(学術性は維持):
- 本稿の目的は → 本稿では試みる / 本研究が注目する
- 重要な意義を持つ → 注目に値する / 一定の参考価値がある
- 研究によると → 先行研究によれば / 既存文献が示す / 筆者が観察した
- 詳細な分析を行った → 初步的な検討をした / 考察を展開した
- 顕著な成果を挙げた → 一定の効果が見られた / 初歩的な成果が得られた
-
受動態を減らす:
- 広く応用されている → 多く用いられている / 複数の分野で応用されている
- ~と考えられている → 通常~と見なされている / 一般的に~とされている
-
学術的ヘッジ(曖昧表現)を注入: 過度に断定的な判断の前に「可能性がある」「ある程度」「現時点では」「初步的に見ると」を追加する。
-
著者の主体性を強化:
- 研究によると → 筆者は考える / 本研究が発見した
- ~と考えられる → 筆者は~と考える傾向がある
-
限界を補足: 結論部に限界が言及されていない場合、「もちろん、本研究にも一定の限界がある…」と一文加える。
-
構造の均一性を打破: 段落の長さを調整し、すべてが同じにならないようにする。短すぎる段落は結合し、長すぎるものは分割する。
ステップ4:検証
書き換え後、CLIツールで効果を確認します:
./humanize detect output.txt -s
目標(v3.0の強化検出器に基づく):
- 汎用テキストは50点未満(MEDIUM範囲)に下げる
- 学術論文は40点未満(学術専用)に下げ、汎用スコアは35点未満に下げる
- 実際のChatGPT出力のベースラインは通常5~25点であり、書き換えで3~10点下がれば成功
- ステレオタイプなAIテンプレート文(論文テンプレート/八股文)では50点以上の低下が見られることもある
注:v3.0 detect_cn では句長CV + 短文率 + カンマ密度の3つの強力な指標を追加したため、同じテキストでもスコアがv2.xよりやや高くなる(より正確になる)ことがあります。これは正常な動作です。
設定説明
すべての検出パターンと置換ルールは scripts/patterns_cn.json にあり、カスタマイズ可能です:
- 新しいAI語彙の追加
- 重みの調整
- 置換ルールの追加
- 正規表現マッチの修正
外部設定フィールド
critical_patterns — 高重み検出(三段式、接続詞、空疎語)
high_signal_patterns — 中重み検出(AI高頻出語、テンプレート文)
replacements — 置換辞書(正規表現 + プレーンテキスト)
academic_patterns — 学術専用検出と置換
scoring — 重みと閾値の設定