Tokens
Track, visualize, and compete on AI coding assistant token usage across Claude Code, Cursor, OpenCode, Codex, Gemini, Kimi, and Qwen. The Kardashev Scale for AI Devs.
権利を一件ずつ確かめた世界の民話 1113 話を、多言語 Embedding で横断して眺めるアトラス。出典と権利は全話に付いており、AI の推定は原資料と見た目で区別している。
Translation pending
DataPython · TypeScriptGitHub @twill3cOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
世界民話AIアトラス — 権利を一件ずつ確かめた世界の民話 730 話を、多言語 Embedding で横断して眺めるアトラス
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
権利を一件ずつ確かめた世界の民話 1,113 話を、多言語 Embedding で横断して眺めるアトラス。 30 冊・29 の文化圏・1,578,419 語。全話に出典 URL と権利状態と確認日が付いている。 サーバ関数もデータベースも定期実行も持たない。重い計算は手元で済ませ、 画面が読み込むのは計算済みの JSON だけである。 機械が測る「物語の似かた」は、言語や本ではなく、物語そのものを見ているのか。 このアトラスは、その問いに「はい」と答えるために作られていない。 測って、答えが何であれ画面に出すために作られている。 「似ている民話が見つかる」という機能は、機械が物語ではなく言語や 本の文体を見ているだけでも、まったく同じように動く。画面も変わらず、テストも緑になる。 だから作る前に閾値を登録し、結果は落ちたものも含めて 測ったことに全部出している。 H-03 は設計書が価値として掲げていた前提である。判定の帯(p 実線=原資料から数えたこと / 破線=AI の推定 / #=本文の語の数え上げ テーマとモチーフは Embedding による推定(method: "embedding")。 動物・自然物・出来事は本文にその語があったかどうかの数え上げ(method: "count")。 両者を同じ見た目で並べない。Read the full README ↗
権利を一件ずつ確かめた世界の民話 1,225 話を、多言語 Embedding で横断して眺めるアトラス。
33 冊・32 の文化圏・1,673,965 語。全話に出典 URL と権利状態と確認日が付いている。 サーバ関数もデータベースも定期実行も持たない。重い計算は手元で済ませ、 画面が読み込むのは計算済みの JSON だけである。
機械が測る「物語の似かた」は、言語や本ではなく、物語そのものを見ているのか。
このアトラスは、その問いに「はい」と答えるために作られていない。 測って、答えが何であれ画面に出すために作られている。
「似ている民話が見つかる」という機能は、機械が物語ではなく言語や 本の文体を見ているだけでも、まったく同じように動く。画面も変わらず、テストも緑になる。 だから作る前に閾値を登録し、結果は落ちたものも含めて 測ったことに全部出している。
| 主張 | 結果 |
|---|---|
| H-01 多言語 Embedding は言語ではなく物語を見ている | ✓ 通過 交差言語 P@1 = 0.731(偶然の水準 0.016、閾値 0.50 は事前登録) |
| H-02 「似ている」は本の文体ではない | ! 本の効果は大きい 本内 vs 本間の効果量 Cohen d = 0.73 |
| H-03 地理的に近い文化圏の民話は意味的にも近い | ✓ 相関がある r = 0.282、置換検定 p = 0.0、有効標本は 31 冊。ただし本と交絡し、r の大きさは一冊(ジャマイカ)に強く依存する。L39 では事前登録した「r は上がる」という予測が外れた |
H-03 は設計書が価値として掲げていた前提である。判定の帯(p < 0.01 で成立、0.01〜0.10 は保留)は 測る前に決めてあり、一度も動かしていない。 その帯のまま、本を足すたびに測り直してきた。
| 測った時点 | 有効標本 | r | p | 判定 |
|---|---|---|---|---|
| L1 | 11 冊 | — | 0.0496 | 判定できない |
| L4 | 21 冊 | 0.246 | 0.012 | 判定できない |
| L8 | 27 冊 | 0.231 | 0.001 | 相関がある |
| L9 | 28 冊 | 0.315 | 0.0002 | 相関がある |
| L39 | 31 冊 | 0.282 | 0.0 | 相関がある |
de、dat、anyt'ing)で、本をまたぐ平均類似度が 33 冊中下から 2 番目 0.885
(これより低いのは言語そのものが違う独語版グリム 0.870 だけ。全本の中央値 0.902)である。綴りの違いで一様に遠く出る本が地理的にも遠い位置にあることが r を押し上げたと読むのが自然で、
これを地理の証拠として数えない。一冊抜きでも r は 0.210 を下回らず、結論(帯の中)は一冊に依存しないそれでも「地理が近いから似ている」とは言わない。 地理は本(翻訳者・時代・編集方針)と交絡しており、 「地理が近いから似ている」と「たまたま近い土地の本どうしが似ている」は分離できていない。 本の効果も大きい(H-02、d = 0.73)。言えるのは、本をまたいで比べても、地理的に近い文化圏の本どうしは 意味的にも近い傾向がある、までである。
『Folk-Tales of Bengal』はベンガル、『Philippine Folk Tales』はフィリピン。 つまり 同じ本の話が似る ⇒ 同じ地域の話が似る が自動的に成り立つ。 翻訳者・編者の文体・語彙・組版は本単位で共通だからである。
実測すると、同じ本の話どうしの平均類似度 0.916 に対し、違う本どうしは 0.897(33 冊)。 効果量は 0.73(中〜大)。よって
民話集を一話ずつに割るのが本プロジェクト固有の難所である。 期待件数はその本の目次が挙げる題名の数(折り返し結合後 − 前付け)とし、 一致しない本はコーパスに入れない。採録した 33 冊すべてが一致した。
目次が無い本(『Aino Folk-Tales』)や、目次と本文の見出しの形が違う本では、 著者が刷った通し番号を使う。番号が 1 から欠けなく続くことと、目次があれば その番号付き項目の数と合うことの二つを突き合わせる(33 冊中 8 冊)。 連番だけだと、地の文の行頭の番号を見出しと取り違えても偶然続けば通ってしまう。
話の単位は著者の番号に従う。 『Jamaica Anansi Stories』は一つの番号の下に、別の語り手による 異話(a/b/c)を並べている。異話を別の話に割ると、近傍の 1 位が必ず兄弟の異話になるので、 番号 1 つを 1 話とし、異話はその中にまとめた。
一致しなかった 6 冊は落とした。取れた分だけ採ると、その本だけ話の切れ目が違うことになり、 以後の類似度がその差を測ってしまう。
実線=原資料から数えたこと / 破線=AI の推定 / #=本文の語の数え上げ
テーマとモチーフは Embedding による推定(method: "embedding")。
動物・自然物・出来事は本文にその語があったかどうかの数え上げ(method: "count")。
両者を同じ見た目で並べない。
権利上の問題なく参照できる対応表を確認できていない。 正式な既存分類と AI 推定を混同させないため、推定 ATU を出すこともしない。
| 罠 | 何が起きたか |
|---|---|
| 朗読音声を本文と間違えた | PG 20050/20051/20972 は音声本で、text/plain は録音の README。PG の START/END マーカーは両方あるので、マーカー検査だけでは弾けなかった |
| 目次の並びは本文の並びと違う | 独語版グリムの目次はアルファベット順。単調増加を要求すると 62 件中 4 件しか一致しない |
| 最後の話に巻末が丸ごと入る | 伝記・広告・巻末目次・奥付・PG 文言。巻末が付くと話は長くなるので、語数の下限では絶対に捕まらない |
| ドイツ語 62 話すべてでテーマが 0 件 | ラベル説明文が英語で、全話まとめて標準化すると独語が系統的に低く出る。→ HC-227 起票 |
| 件数は合うのに単位が混ざる | ノルウェー本の目次 84 件は全一致したが、中身は序文の節・ノルウェーの話・西インド諸島の付録の三種混成だった |
| 上流確定前に 70 分の計算を始めた | 話数が 730 → 709 に変わって計算を捨てた。→ HC-233 起票(検印で下流を止める) |
| 出来事推定が Family に 58% | father/mother を生の回数で数えると、物語の構造ではなく語の頻度を測る |
| 日本のラベルが朝鮮半島の円に重なる | ラベルどうしの衝突だけ見ていた。他の印の円も障害物にする必要があった |
py -3.14 -m venv .venv
.venv/Scripts/python -m pip install -r requirements.txt
# モデルの重み(この機の Python は huggingface.co を名前解決できないので curl で取る)
mkdir -p .models/multilingual-e5-small/onnx
for f in model.onnx tokenizer.json config.json tokenizer_config.json special_tokens_map.json; do
curl -sL -o .models/multilingual-e5-small/onnx/$f \
https://huggingface.co/intfloat/multilingual-e5-small/resolve/main/onnx/$f
done
.venv/Scripts/python etl/build_corpus.py # 取得 → 分割 → 権利付与(件数オラクル照合)
.venv/Scripts/python ml/embed.py # Embedding(7,258 チャンク)
.venv/Scripts/python ml/evaluate.py # 目玉と対照の測定
.venv/Scripts/python ml/analyze.py # 近傍・UMAP・HDBSCAN・テーマ・構造・緊張
.venv/Scripts/python etl/make_basemap.py # 底図
.venv/Scripts/python etl/export_web.py # 配布用 JSON
npm install && npm run verify # 型検査 → テスト → ビルド
node harness/smoke.mjs --shot # 実ブラウザ検品
**全話の和訳が完了した。1,225 話すべて(100.0%)、語数でも 100.0%。全 32 文化圏・33 冊が、 一段落ずつ原文と対で日本語で読める。**L39 で足した三冊(オーストラリア先住民 31 話・ フィリピン 61 話・ニュージーランド(マオリ)20 話)も同じループで訳し切ったので、 本を足しても和訳率は 100% を割っていない。先住民の語をどう写したかは このアトラスについてに書いた。 進捗は 和訳のすすみ に出している。
和訳は AI が作ったものであり(translation_type: AI_GENERATED)、原資料ではない。
Embedding には入れない(測定が汚れる)。交差言語オラクルにも使わない
(同じ本文の訳が原文を引き当てるのは当たり前で、何の証拠にもならない)。
和訳を足すときは、data/translations/incoming/batch-NNNN.json に
{"STORY_ID": ["段落1", "段落2", ...]} を書いて次を走らせる。
段落数が原文と合わない訳は取り込まれない。
.venv/Scripts/python etl/build_translations.py
.venv/Scripts/python etl/export_web.py
git push で自動的に本番へ出る。vercel deploy を打つ必要はない(HC-256)。
CLI を重ねて叩くと、走っている正規のビルドと競合して Upload aborted を返すことがある。
出荷できたかどうかは、道具の終了コードではなく公開 URL を引いて確かめる。
node harness/live.mjs # 本番に対する検品(18 画面 + 全文検索)
| 種別 | 内容 |
|---|---|
| 本文 | Project Gutenberg 収録の 33 冊(米国パブリックドメイン)。PG のヘッダ・フッタを除去しており、PG の商標・ライセンス文言は再配布していない |
| 底図 | Natural Earth 10m Admin 0 Countries v5.1.1(Public Domain) |
| モデル | intfloat/multilingual-e5-small(MIT License) |
| このリポジトリ | MIT License |
収録した本の一覧・採集者・翻訳者・刊年とその根拠は このアトラスについてにある。
民話の歴史的起源 / 民族間の系統関係 / 伝播経路 / 宗教的・文化的優劣 / 国民性。 AI による分類・類似度・テーマ・感情・物語構造の推定は探索支援のための参考情報であり、 民俗学・歴史学上の確定的判断ではない。