方法與來源 / 歷史判準 / 條款來源
歷史研究 · 判準 v1.1

條款來源與公版判定

「這份條款是不是拿別人的改的」怎麼量、門檻訂在哪、以及 這個判準已知的缺陷是什麼。 本頁的第 05 節記載一件對本站不利的事:這條門檻是看過資料之後訂的。

研究紀錄有自己的樣本與日期

本頁保留當時的方法、樣本與限制;文中的實測只支持記載的條件,不代表現行平台評測已重做。閱讀現在的文章時,請依方法與來源核對各項證據。

版本 v1.1(2026-08-23) 溯源等級 AUTO 實作 tools/term_similarity.py
本頁目錄
01

為什麼量這個


架一個娛樂城的成本,多數落在後台與金流,不落在條款—— 條款幾乎都是拿範本改的。所以「這份條款跟別人有多像」是一個 很便宜但有訊號的量測

  • 重疊很高 → 它連法律文件都沒自己寫,整套是買現成的。 品牌可棄的成本更低。
  • 重疊很低 → 至少有人為這個品牌寫過或改寫過法律文件。

本判準不評價條款內容的好壞——那是 掠奪性條款判準的工作。 這裡只回答「這份文件是不是現成的」。

02

怎麼量


正規化

  1. 全部轉小寫。
  2. 移除品牌名(`stake`、`me88`、`pinnacle` 等)。 不移除的話,同一份範本只因為換了名字就會被判定為不像。
  3. 移除非英數字元,壓縮連續空白。

切片與比對

8 個詞為長度做滑動視窗(shingle), 兩份文件各得到一個集合。8 詞夠長,不會因為 the parties agree that 這種常見片語就命中; 也夠短,改幾個字仍抓得到。

containment(A→B) = |A ∩ B| ÷ |A|

讀作「A 的內容有多少比例,在 B 裡也逐字出現」。

為什麼用 containment 而不是 jaccard

jaccard(交集÷聯集)是對稱的,但會被長度稀釋。 本站語料裡 Uwin33 的條款只有 8KB、Thunderpick 有 76KB—— 「短的那份幾乎整份都在長的那份裡」正是我們要抓的事, 而 jaccard 會把它壓成一個很小的數字。

jaccard 照樣輸出在資料檔裡,只是不拿來分級。

實作細節:不要用 Python 內建的 hash()

shingle 以 zlib.crc32 雜湊。 內建 hash() 每個行程換一次種子, 同一份語料兩次執行會得到不同的碰撞, --check 會隨機失敗。

03

為什麼以「配對」為單位分級


containment 是不對稱的:同一個交集,除以不同的分母 會得到不同的數字。v1.0 用「自己→別人」的最大值分級, 於是同一對會被切成兩半:

方向containmentv1.0 判定
Roobet → Stake25.9%有範本痕跡
Stake → Roobet19.6%沒有範本痕跡
兩者的 jaccard12.5%(對稱,一樣)

兩者共用的是同一批段落,差別只在 Stake 的條款比較長 (8,680 詞 vs 6,579 詞)。 同一件事實給出相反的結論,那是判準的缺陷,不是資料的性質。

v1.1 的修正

「使用同一份範本」本來就是一對的性質, 不是單一文件的性質。所以分級改成取

pair_max(A) = max over B of max( containment(A→B), containment(B→A) )

兩邊拿到同一個等級。逐向的數字照樣輸出並顯示在品牌頁的觀測表裡, 只是不再拿來分級。

04

門檻


等級pair_max頁面上的說法
HIGH ≥ 50% 大量沿用同一份範本
SOME ≥ 40% 有可辨識的共同段落
LOW < 40% 沒有明顯的範本痕跡

平台頁「條款是不是公版」欄位中的低風險提示= LOW

雜訊水準:兩份無關的條款大約重疊多少

本站語料的底部一群落在 0.1%–2.6%compare_terms.py 在無關組別上量到的基線是 0.8%。 所以大約 3% 以上就已經高於雜訊

這代表 LOW 這一級並不是「完全沒有共同來源」, 而是「共同段落的比例低到我們不拿它當品牌投入不足的證據」。 一家 pair_max 25% 的平台仍然是雜訊的十倍以上—— 數字照樣印在頁面上,請自己看。

05

已知缺陷


這條門檻是看過資料之後訂的,這違反本站自己的規則

本站其他七份判準的效力來自「先公布、且說到做到」—— 它們在看到任何一家的條款之前就發布了。

這一份不是。本判準與 40% 的門檻是 2026-08-23 在已經看過 15 家的重疊分佈之後訂的,並且當天就套用。 那正是「比賽結束才訂規則」,我們自己在 編輯政策裡點名批評過的做法。

我們把它寫在這裡而不是藏起來。實際的補救只有一個: 本頁已標版本並公開發布,自下一次條款重掃起, 它才算是先公布的判準。 目前這一輪的結果請當作 v1.1 的首次套用, 而不是一次獨立的驗證。

門檻的位置沒有資料上的自然依據

分佈上真正的斷點在 25.9% 與 8.8% 之間(落差 17.1 個百分點), 不在 40%。40% 這條線落在 Pinnacle(44.4%)與 Roobet/Stake(25.9%)之間, 是一個選擇,不是一個發現。

把線畫在哪裡會改變結論。以本站目前的語料為例, 門檻若回到 v1.0 的 20%,Roobet 與 Stake 會從 「沒有明顯的範本痕跡」變成「有可辨識的共同段落」。

語料只有 15 家,重疊低不代表沒用範本

比對只在本站已取得條款全文的 15 家之間進行。 LOW 只代表「在這 15 家裡找不到範本痕跡」—— 範本可能來自我們還沒收到的那幾十家。 語料擴大時,現在的 LOW 有可能變成 HIGH。

只讀得到公開的條款

若營運商把實質規則放在登入之後,本判準涵蓋不到, 且不以缺漏推定有利或不利

06

用語界線


絕對不得推進到「同一經營者」

條款高度相同只能推論: 兩站使用同一份範本、可能共用同一套後台。

不能推論:同一家公司、同一組人馬、同一個實質控制人。 範本供應商會把同一套系統賣給數十個彼此獨立的營運商, 那是正常的商業模式。

本站所有對外敘述——品牌頁、平台總表、風險提示、產業介紹—— 一律停在前者。混淆這兩者會同時毀掉正確性與法律防線。

同一條界線也寫在 tools/term_similarity.pytools/compare_terms.py 的檔頭, 兩支程式的輸出都附帶這段警示。

07

變更紀錄


版本日期變更
v1.1 2026-08-23 分級改以配對為單位(取兩方向較大值), 修正同一對被切成兩半的缺陷; SOME 門檻由 20% 調整為 40%; 本判準頁首次發布並記載「門檻係事後訂定」這項缺陷。 另修正反向查找只掃前三名而漏值的實作錯誤。
v1.0 2026-08-23 首次實作。8 詞 shingle、containment、以文件為單位分級, 門檻 50%/20%。未發布判準頁—— 這正是 v1.1 要補的問題。

本頁為判準文件。實作與資料在 tools/term_similarity.py查核資料/results/term_similarity.json, 可自行重跑並以 --check 驗證一致性。 目前未開放更正收件;若發現差異,可先保留本文網址、爭議句子、來源與查詢日期, 管道狀態見更正與聯絡狀態

需要協助遇到問題更正與聯絡狀態

目前沒有官方聯絡、更正或 Discord 管道;不要相信站外冒名帳號。