Files
hack/tools/scripts/llm-key-hunter/results/_cache/content/ayest0_mos-relocalization.json
T

1 line
9.8 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"repo": "ayest0/mos-relocalization", "files": {"README.md": {"90f30a6a960493dc6dd90d084ef928fa8991259c": {"t": 1785674114.0330734, "n": 4632, "h": "538454200dcb33c0", "c": "<div align=\"center\">\n\n# MOS-ReLocalization 🌐\n<em>A re-localization toolkit for <strong>MILFs of Sunville</strong> (JSON-based).</em>\n\n[English](./README.md) | [中文](./README_zh-CN.md)\n\n<p>\n <img src=\"https://img.shields.io/badge/Python-3.13+-blue\">\n <img src=\"https://img.shields.io/badge/License-MIT-green\">\n <img src=\"https://img.shields.io/badge/Status-Active-brightgreen\">\n <img src=\"https://img.shields.io/badge/AI-OpenAI%20%7C%20DeepSeek-purple\">\n <img src=\"https://img.shields.io/badge/Data-JSON-orange\">\n</p>\n\n</div>\n\nMOS-ReLocalization is a Python toolkit for re-localizing MILFs of Sunville (or any JSON-based localization). It provides AI translation, placeholder fixing, English-in-Chinese review, proper‑noun unification, and coverage analytics — producing cleaner, more natural Chinese output.\n\n---\n\n## Features\n\n- Language column detection: auto build column→language map (`scripts/detect_all_languages.py` → `data/language_map.json`)\n- AI translation (RU/EN → ZH): context‑aware Chinese localization (`scripts/ai_translate.py` → `output/language_dict_translated.json`)\n- English‑in‑Chinese review and merge: export mixed entries, manually fix, then merge (`scripts/export_english_in_chinese.py` → fix → `scripts/merge_fixed_translations.py`)\n- Placeholder fixes: normalize `[mcname]` / `[mcsurname]` and variants (`scripts/fix_mcname_tags.py`, `scripts/fix_mcname_format.py`, `scripts/fix_mcsurname_tags.py`)\n- Proper‑noun unification: apply `data/name_map.json` and optionally AI‑assisted unification\n - Apply + AI QA: `scripts/ai_apply_namemap_unify.py`\n - Unified flow (merge + apply): `scripts/unify_namemap_and_apply_ai.py`\n - Alternative applier: `scripts/ai_apply_namemap_aiunify.py`\n - Merge candidates & generate mapping: `scripts/ai_name_unify_with_namemap.py`\n - No‑AI quick apply (pure replace): `scripts/apply_namemap_fix_no_ai.py`\n- Coverage analytics: per‑column fill ratio (`scripts/translation_coverage.py`)\n\n---\n\n## Setup\n\n1) Python 3.13+\n\n2) Install dependencies\n```bash\npip install -U openai python-dotenv langdetect\n```\n\n3) Configure environment via `.env` (examples)\n```ini\n# Engine selection\nMODEL_PROVIDER=deepseek # or: chatgpt\n\n# OpenAI\nOPENAI_API_KEY=sk-...\nMODEL=gpt-4o-mini\n\n# DeepSeek (OpenAI-compatible)\nDEEPSEEK_API_KEY=sk-...\nDEEPSEEK_BASE_URL=https://api.siliconflow.cn\nDEEPSEEK_MODEL=deepseek-ai/DeepSeek-R1\n\n# Optional rate limiting / concurrency\nRPM=1000\nTPM=100000\nASYNC_CONCURRENCY=100\nPRINT_EVERY=50\nBATCH_FLUSH=200\n```\n\n---\n\n## Recommended Workflow\n\n1) Detect language columns\n```bash\npython scripts/detect_all_languages.py\n```\nOutput: `data/language_map.json`\n\n2) AI translation to Chinese (using RU + EN)\n```bash\npython scripts/ai_translate.py\n```\nOutput: `output/language_dict_translated.json`\n\n3) Review English‑in‑Chinese and merge back\n```bash\n# Export mixed entries in Chinese columns\npython scripts/export_english_in_chinese.py\n# Manually fix: output/review_english_mixed/mixed_entries_fixed.json\n# Merge back\npython scripts/merge_fixed_translations.py\n```\nOutput: `output/language_dict_merged.json`\n\n4) Fix placeholders and normalize formats\n```bash\npython scripts/fix_mcname_tags.py # → output/language_dict_fixed.json\npython scripts/fix_mcname_format.py # → output/language_dict_mcname_fixed.json\npython scripts/fix_mcsurname_tags.py # → output/language_dict_mcsurname_fixed.json\n```\n\n5) Unify proper nouns (pick one path)\n- Path A: Apply `name_map` with AI QA\n```bash\npython scripts/ai_apply_namemap_unify.py # → output/language_dict_namemap_applied.json\n```\n- Path B: Merge candidates + apply in one go\n```bash\npython scripts/unify_namemap_and_apply_ai.py # → output/language_dict_name_final.json\n```\n- Alternatives (advanced)\n```bash\npython scripts/ai_apply_namemap_aiunify.py\npython scripts/ai_name_unify_with_namemap.py\npython scripts/apply_namemap_fix_no_ai.py\n```\n\n6) Coverage report\n```bash\npython scripts/translation_coverage.py --save\n```\nOutput: `output/translation_coverage.json`\n\n---\n\n## Data & Outputs\n\n- Input data: `data/language_dict.json`, `data/name_map.json`\n- Language map: `data/language_map.json` (generated)\n- Intermediate/final outputs under `output/` (JSON + reports like `name_unify_report.txt`)\n- Caches under `cache/`\n\n---\n\n## Notes\n\n- Rate limits: DeepSeek typical RPM≈1000 / TPM≈100000; scripts auto back‑off on 429.\n- Placeholders: keep `[mcname]`, `[mcsurname]` intact in translations.\n- Proper nouns: curate `data/name_map.json` first, then run unification to ensure consistency.\n\n---\n\n## License\n\nMIT License © 2025 AyeSt0\n\n> Re‑forging words — re‑localizing MILFs of Sunville.\n\n"}}, "README_zh-CN.md": {"90f30a6a960493dc6dd90d084ef928fa8991259c": {"t": 1785674115.854377, "n": 3578, "h": "97c0dc30e1055928", "c": "<div align=\"center\">\n\n# MOS-ReLocalization 🌐\n<em>专为 <strong>《MILFs of Sunville》</strong> 打造的 JSON 再本地化工具集。</em>\n\n[English](./README.md) | [中文](./README_zh-CN.md)\n\n<p>\n <img src=\"https://img.shields.io/badge/Python-3.13+-blue\">\n <img src=\"https://img.shields.io/badge/License-MIT-green\">\n <img src=\"https://img.shields.io/badge/Status-Active-brightgreen\">\n <img src=\"https://img.shields.io/badge/AI-OpenAI%20%7C%20DeepSeek-purple\">\n <img src=\"https://img.shields.io/badge/Data-JSON-orange\">\n</p>\n\n</div>\n\nMOS-ReLocalization 是一个面向 JSON 的再本地化工具集,支持《MILFs of Sunville》或其它基于 JSON 的本地化项目。提供 AI 翻译、占位符修复、中文中夹英审校、专名统一与覆盖率统计,产出更自然、连贯的一致译文。\n\n---\n\n## 功能特点\n\n- 语言列自动识别:自动生成 列→语言 映射(`scripts/detect_all_languages.py` → `data/language_map.json`)\n- AI 翻译(俄/英 → 中文):基于上下文生成自然中文(`scripts/ai_translate.py` → `output/language_dict_translated.json`)\n- 中文夹英审校与合并:导出待修条目→人工修正→合并回主表(`scripts/export_english_in_chinese.py` → 修正 → `scripts/merge_fixed_translations.py`)\n- 占位符修复:规范化 `[mcname]` / `[mcsurname]` 及其变体(`scripts/fix_mcname_tags.py`、`scripts/fix_mcname_format.py`、`scripts/fix_mcsurname_tags.py`)\n- 专名统一:基于 `data/name_map.json`,可直接应用或结合 AI 辅助\n - 应用 + AI 质检:`scripts/ai_apply_namemap_unify.py`\n - 一体化(合并候选 + 应用):`scripts/unify_namemap_and_apply_ai.py`\n - 另一套应用器:`scripts/ai_apply_namemap_aiunify.py`\n - 候选合并并生成统一映射:`scripts/ai_name_unify_with_namemap.py`\n - 纯替换(不经 AI):`scripts/apply_namemap_fix_no_ai.py`\n- 覆盖率统计:按列统计填充率(`scripts/translation_coverage.py`)\n\n---\n\n## 环境准备\n\n1) Python 3.13+\n\n2) 安装依赖\n```bash\npip install -U openai python-dotenv langdetect\n```\n\n3) 配置 `.env`(示例)\n```ini\n# 引擎选择\nMODEL_PROVIDER=deepseek # 或 chatgpt\n\n# OpenAI\nOPENAI_API_KEY=sk-...\nMODEL=gpt-4o-mini\n\n# DeepSeek(OpenAI 兼容)\nDEEPSEEK_API_KEY=sk-...\nDEEPSEEK_BASE_URL=https://api.siliconflow.cn\nDEEPSEEK_MODEL=deepseek-ai/DeepSeek-R1\n\n# 可选:限速/并发\nRPM=1000\nTPM=100000\nASYNC_CONCURRENCY=100\nPRINT_EVERY=50\nBATCH_FLUSH=200\n```\n\n---\n\n## 推荐流程\n\n1) 检测语言列\n```bash\npython scripts/detect_all_languages.py\n```\n输出:`data/language_map.json`\n\n2) AI 翻译为中文(结合俄/英语境)\n```bash\npython scripts/ai_translate.py\n```\n输出:`output/language_dict_translated.json`\n\n3) 中文夹英审校并合并回主表\n```bash\n# 导出含英文字的中文条目\npython scripts/export_english_in_chinese.py\n# 人工修正后保存到:output/review_english_mixed/mixed_entries_fixed.json\n# 合并回主表\npython scripts/merge_fixed_translations.py\n```\n输出:`output/language_dict_merged.json`\n\n4) 占位符修复与规范化\n```bash\npython scripts/fix_mcname_tags.py # → output/language_dict_fixed.json\npython scripts/fix_mcname_format.py # → output/language_dict_mcname_fixed.json\npython scripts/fix_mcsurname_tags.py # → output/language_dict_mcsurname_fixed.json\n```\n\n5) 专名统一(任选其一)\n- 路径 A:按 `name_map` 应用并经 AI 质检\n```bash\npython scripts/ai_apply_namemap_unify.py # → output/language_dict_namemap_applied.json\n```\n- 路径 B:一体化(候选合并 + 应用)\n```bash\npython scripts/unify_namemap_and_apply_ai.py # → output/language_dict_name_final.json\n```\n- 其他(进阶)\n```bash\npython scripts/ai_apply_namemap_aiunify.py\npython scripts/ai_name_unify_with_namemap.py\npython scripts/apply_namemap_fix_no_ai.py\n```\n\n6) 覆盖率统计\n```bash\npython scripts/translation_coverage.py --save\n```\n输出:`output/translation_coverage.json`\n\n---\n\n## 数据与产物\n\n- 输入数据:`data/language_dict.json`、`data/name_map.json`\n- 语言映射:`data/language_map.json`(由脚本生成)\n- 中间/最终产物:位于 `output/`(JSON 文件 + 报告,如 `name_unify_report.txt`)\n- 过程缓存:位于 `cache/`\n\n---\n\n## 注意事项\n\n- 限速:DeepSeek 典型 RPM≈1000 / TPM≈100000;遇到 429 会自动降速重试\n- 占位符:请保持 `[mcname]`、`[mcsurname]` 不变\n- 专名:先完善 `data/name_map.json`,再执行统一以保证全局一致\n\n---\n\n## 许可\n\nMIT License © 2025 AyeSt0\n\n> 重铸语言 —— 面向《MILFs of Sunville》的再本地化。\n\n"}}}}