champollion 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +133 -0
- package/README.md +387 -0
- package/bin/cli.js +278 -0
- package/index.js +135 -0
- package/lib/api-key.js +127 -0
- package/lib/autofix.js +432 -0
- package/lib/bridge/method_bridge.py +430 -0
- package/lib/card-source-resolution.mjs +284 -0
- package/lib/cards/cache.js +169 -0
- package/lib/cards/env.js +82 -0
- package/lib/cards/fetch-card-child.js +38 -0
- package/lib/cards/reader.js +435 -0
- package/lib/cards/refresh.js +111 -0
- package/lib/cards/remote.js +387 -0
- package/lib/cldf-export.mjs +540 -0
- package/lib/cldf-terms.mjs +62 -0
- package/lib/command-help.js +790 -0
- package/lib/commands/audit.js +49 -0
- package/lib/commands/card.js +454 -0
- package/lib/commands/doctor.js +559 -0
- package/lib/commands/fonts.js +489 -0
- package/lib/commands/help.js +91 -0
- package/lib/commands/init.js +1259 -0
- package/lib/commands/integrity.js +148 -0
- package/lib/commands/leaderboard.js +478 -0
- package/lib/commands/lint.js +30 -0
- package/lib/commands/models.js +177 -0
- package/lib/commands/plugin.js +103 -0
- package/lib/commands/provenance.js +45 -0
- package/lib/commands/recommend.js +75 -0
- package/lib/commands/register-corpus.js +678 -0
- package/lib/commands/repair-script.js +42 -0
- package/lib/commands/seal-corpus.js +355 -0
- package/lib/commands/seo.js +72 -0
- package/lib/commands/serve.js +147 -0
- package/lib/commands/status.js +265 -0
- package/lib/commands/submit.js +332 -0
- package/lib/commands/sync.js +89 -0
- package/lib/commands/tm.js +573 -0
- package/lib/commands/verify.js +39 -0
- package/lib/commands/watch.js +20 -0
- package/lib/commands/wrap.js +138 -0
- package/lib/commands/xliff.js +327 -0
- package/lib/commercial-eligibility.js +235 -0
- package/lib/concurrent.js +87 -0
- package/lib/config.js +523 -0
- package/lib/contamination-lane.js +76 -0
- package/lib/content-sync.js +731 -0
- package/lib/content.js +733 -0
- package/lib/corpus-registration.mjs +608 -0
- package/lib/cost-report.js +346 -0
- package/lib/diff.js +155 -0
- package/lib/docusaurus-sync.js +1256 -0
- package/lib/flatten.js +55 -0
- package/lib/format.js +954 -0
- package/lib/hash.js +159 -0
- package/lib/icu.js +473 -0
- package/lib/integrity.js +689 -0
- package/lib/license-gate.mjs +478 -0
- package/lib/license-identify.mjs +229 -0
- package/lib/lint.js +629 -0
- package/lib/method-manifest.js +60 -0
- package/lib/methods/anthropic.js +140 -0
- package/lib/methods/apertium.js +163 -0
- package/lib/methods/api.js +316 -0
- package/lib/methods/base.js +184 -0
- package/lib/methods/content-separator.js +45 -0
- package/lib/methods/deepl.js +426 -0
- package/lib/methods/direct-llm.js +586 -0
- package/lib/methods/external.js +332 -0
- package/lib/methods/fetch-with-retry.js +124 -0
- package/lib/methods/gemini.js +147 -0
- package/lib/methods/google-translate.js +402 -0
- package/lib/methods/http-utils.js +122 -0
- package/lib/methods/libretranslate.js +314 -0
- package/lib/methods/llm-coached.js +670 -0
- package/lib/methods/llm.js +592 -0
- package/lib/methods/local.js +76 -0
- package/lib/methods/microsoft-translator.js +331 -0
- package/lib/methods/openai.js +131 -0
- package/lib/methods/openrouter-client.js +327 -0
- package/lib/methods/openrouter-pricing.js +156 -0
- package/lib/methods/provider-env.js +115 -0
- package/lib/methods/provider-pricing.js +310 -0
- package/lib/methods/tilde.js +150 -0
- package/lib/methods/translated.js +229 -0
- package/lib/methods/translation-error.js +80 -0
- package/lib/models.js +258 -0
- package/lib/no-translate.js +233 -0
- package/lib/output.js +238 -0
- package/lib/pairs.js +547 -0
- package/lib/plugins.js +447 -0
- package/lib/provenance.js +323 -0
- package/lib/recommend.js +648 -0
- package/lib/registers.js +1185 -0
- package/lib/repair-script.js +266 -0
- package/lib/scripts.js +994 -0
- package/lib/seal.mjs +464 -0
- package/lib/sealed-qualifier.mjs +211 -0
- package/lib/security.js +59 -0
- package/lib/segment.js +369 -0
- package/lib/seo.js +275 -0
- package/lib/serve.js +854 -0
- package/lib/string-classify.js +85 -0
- package/lib/submit.mjs +344 -0
- package/lib/sync.js +969 -0
- package/lib/tags/bcp47.js +202 -0
- package/lib/tags/resolve.js +314 -0
- package/lib/terminology.js +111 -0
- package/lib/tm-seed.js +294 -0
- package/lib/tm.js +515 -0
- package/lib/translate-pair.js +197 -0
- package/lib/translate.js +203 -0
- package/lib/types.js +230 -0
- package/lib/validate.js +510 -0
- package/lib/verify.js +451 -0
- package/lib/watch.js +145 -0
- package/lib/xliff.js +184 -0
- package/package.json +93 -0
- package/shared/ATTRIBUTION.md +145 -0
- package/shared/CORPORA-CARDS.md +288 -0
- package/shared/DATA-SOVEREIGNTY.md +500 -0
- package/shared/LANGUAGE-CARD-FIELDS.md +532 -0
- package/shared/card-lint-baseline.json +3189 -0
- package/shared/cards-fallback.json +1 -0
- package/shared/catalogue/card-config.json +6091 -0
- package/shared/catalogue/external-results.json +3888 -0
- package/shared/catalogue/gender-guidance.json +1038 -0
- package/shared/catalogue/method-coverage.json +1751 -0
- package/shared/catalogue/metric-coverage.json +170 -0
- package/shared/catalogue/metric-reliability.json +1 -0
- package/shared/catalogue/register-presets.json +3180 -0
- package/shared/catalogue/vitality-scales.json +55 -0
- package/shared/cldr-index.json +1115 -0
- package/shared/code-bridge.json +253 -0
- package/shared/corpora-cards-v1-reference.md +281 -0
- package/shared/curated-dictionary-flags.json +35 -0
- package/shared/curated-endonyms.json +35 -0
- package/shared/curated-fsts.json +51 -0
- package/shared/curated-orthography-conventions.json +26 -0
- package/shared/curated-sil-resources.json +374 -0
- package/shared/curated-tools.json +41 -0
- package/shared/docent/corpus.json +11333 -0
- package/shared/docent/faq.en.json +564 -0
- package/shared/docent/register-blocks.json +60 -0
- package/shared/docent/system-prompt.md +144 -0
- package/shared/domain-taxonomy.json +35 -0
- package/shared/explainers/glossary.json +2975 -0
- package/shared/explainers/tc-features.json +20112 -0
- package/shared/explainers/term-watchlist.json +147 -0
- package/shared/human-services.json +59 -0
- package/shared/license-corrections.json +261 -0
- package/shared/license-evidence.json +13452 -0
- package/shared/licenses.json +6781 -0
- package/shared/method-registry.json +236 -0
- package/shared/metric-registry.json +620 -0
- package/shared/model-aliases.json +7 -0
- package/shared/schemas/champollion-plugin.schema.json +206 -0
- package/shared/schemas/corpora-card.schema.json +957 -0
- package/shared/schemas/domain-taxonomy.schema.json +64 -0
- package/shared/schemas/external-results.schema.json +314 -0
- package/shared/schemas/human-services.schema.json +90 -0
- package/shared/schemas/language-card.schema.json +1308 -0
- package/shared/schemas/licenses.schema.json +155 -0
- package/shared/schemas/method-card.schema.json +412 -0
- package/shared/schemas/method-registry.schema.json +85 -0
- package/shared/schemas/metric-registry.schema.json +96 -0
- package/shared/schemas/metric-reliability.schema.json +178 -0
- package/shared/schemas/model-aliases.schema.json +27 -0
- package/shared/schemas/source-snapshot.schema.json +96 -0
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_comment": "SSOT for translation METHODS (MT engines) and LLM PROVIDERS, consumed by BOTH the Python arena harness (arena/mt_eval_harness) and the JS CLI (cli/lib/translate.js). Adding an entry here + the matching thin adapter in each runtime keeps the two tools interchangeable. Parity tests in each suite (arena/tests/test_method_registry_ssot.py + the CLI suite) FAIL if a runtime's registry drifts from this file. The imperative request/response code stays per-runtime; this file is the declarative contract. method_class must be in config.VALID_METHOD_CLASSES; paradigm in config.VALID_PARADIGMS. Availability/readiness surfaces judge credential_env only (see schemas/method-registry.schema.json): non-credential config vars like AWS_REGION stay in env for the adapter but never make a method read READY, and credential_env_all marks key-pair auth where every var is required.",
|
|
3
|
+
"version": 1,
|
|
4
|
+
"entries": {
|
|
5
|
+
"openrouter": {
|
|
6
|
+
"kind": "llm-provider",
|
|
7
|
+
"cli_name": "llm",
|
|
8
|
+
"method_class": "raw-llm",
|
|
9
|
+
"paradigm": "llm",
|
|
10
|
+
"env": [
|
|
11
|
+
"OPENROUTER_API_KEY"
|
|
12
|
+
],
|
|
13
|
+
"default_base_url": "https://openrouter.ai/api/v1",
|
|
14
|
+
"homepage": "https://openrouter.ai",
|
|
15
|
+
"license": "Proprietary (per-model)",
|
|
16
|
+
"commercialReady": true,
|
|
17
|
+
"cost_note": "Per-model token pricing (fetched at runtime)"
|
|
18
|
+
},
|
|
19
|
+
"openai": {
|
|
20
|
+
"kind": "llm-provider",
|
|
21
|
+
"method_class": "raw-llm",
|
|
22
|
+
"paradigm": "llm",
|
|
23
|
+
"env": [
|
|
24
|
+
"OPENAI_API_KEY"
|
|
25
|
+
],
|
|
26
|
+
"default_base_url": "https://api.openai.com/v1",
|
|
27
|
+
"homepage": "https://platform.openai.com",
|
|
28
|
+
"license": "Proprietary (OpenAI ToS)",
|
|
29
|
+
"commercialReady": true,
|
|
30
|
+
"cost_note": "Per-model token pricing"
|
|
31
|
+
},
|
|
32
|
+
"anthropic": {
|
|
33
|
+
"kind": "llm-provider",
|
|
34
|
+
"method_class": "raw-llm",
|
|
35
|
+
"paradigm": "llm",
|
|
36
|
+
"env": [
|
|
37
|
+
"ANTHROPIC_API_KEY"
|
|
38
|
+
],
|
|
39
|
+
"default_base_url": "https://api.anthropic.com/v1",
|
|
40
|
+
"homepage": "https://docs.anthropic.com",
|
|
41
|
+
"license": "Proprietary (Anthropic ToS)",
|
|
42
|
+
"commercialReady": true,
|
|
43
|
+
"cost_note": "Per-model token pricing"
|
|
44
|
+
},
|
|
45
|
+
"gemini": {
|
|
46
|
+
"kind": "llm-provider",
|
|
47
|
+
"method_class": "raw-llm",
|
|
48
|
+
"paradigm": "llm",
|
|
49
|
+
"env": [
|
|
50
|
+
"GEMINI_API_KEY"
|
|
51
|
+
],
|
|
52
|
+
"default_base_url": "https://generativelanguage.googleapis.com/v1beta",
|
|
53
|
+
"homepage": "https://ai.google.dev",
|
|
54
|
+
"license": "Proprietary (Google ToS)",
|
|
55
|
+
"commercialReady": true,
|
|
56
|
+
"cost_note": "Per-model token pricing"
|
|
57
|
+
},
|
|
58
|
+
"local": {
|
|
59
|
+
"kind": "llm-provider",
|
|
60
|
+
"method_class": "raw-llm",
|
|
61
|
+
"paradigm": "llm",
|
|
62
|
+
"env": [
|
|
63
|
+
"LOCAL_API_BASE",
|
|
64
|
+
"OPENAI_API_BASE",
|
|
65
|
+
"OPENAI_API_KEY"
|
|
66
|
+
],
|
|
67
|
+
"default_base_url": "http://localhost:11434/v1",
|
|
68
|
+
"homepage": "https://github.com/ollama/ollama",
|
|
69
|
+
"license": "Varies (self-hosted / OpenAI-compatible gateway)",
|
|
70
|
+
"commercialReady": false,
|
|
71
|
+
"cost_note": "Unknown to the harness — never priced (UNKNOWN, not $0)"
|
|
72
|
+
},
|
|
73
|
+
"google-translate": {
|
|
74
|
+
"kind": "mt-api",
|
|
75
|
+
"method_class": "api",
|
|
76
|
+
"paradigm": "neural-nmt",
|
|
77
|
+
"env": [
|
|
78
|
+
"GOOGLE_TRANSLATE_API_KEY",
|
|
79
|
+
"GOOGLE_API_KEY"
|
|
80
|
+
],
|
|
81
|
+
"homepage": "https://cloud.google.com/translate",
|
|
82
|
+
"license": "Proprietary (Google ToS)",
|
|
83
|
+
"commercialReady": true,
|
|
84
|
+
"cost_note": "~$20 / 1M characters",
|
|
85
|
+
"max_batch": 128,
|
|
86
|
+
"locale_map": {
|
|
87
|
+
"he": "iw",
|
|
88
|
+
"jv": "jw"
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
"deepl": {
|
|
92
|
+
"kind": "mt-api",
|
|
93
|
+
"method_class": "api",
|
|
94
|
+
"paradigm": "neural-nmt",
|
|
95
|
+
"env": [
|
|
96
|
+
"DEEPL_API_KEY"
|
|
97
|
+
],
|
|
98
|
+
"homepage": "https://www.deepl.com/pro-api",
|
|
99
|
+
"license": "Proprietary (DeepL ToS)",
|
|
100
|
+
"commercialReady": true,
|
|
101
|
+
"cost_note": "Proprietary; free tier 500K chars/month (':fx' keys)",
|
|
102
|
+
"max_batch": 128,
|
|
103
|
+
"locale_map": {}
|
|
104
|
+
},
|
|
105
|
+
"microsoft-translator": {
|
|
106
|
+
"kind": "mt-api",
|
|
107
|
+
"method_class": "api",
|
|
108
|
+
"paradigm": "neural-nmt",
|
|
109
|
+
"env": [
|
|
110
|
+
"MICROSOFT_TRANSLATOR_API_KEY",
|
|
111
|
+
"AZURE_TRANSLATOR_KEY",
|
|
112
|
+
"MICROSOFT_TRANSLATOR_REGION",
|
|
113
|
+
"MICROSOFT_TRANSLATOR_ENDPOINT"
|
|
114
|
+
],
|
|
115
|
+
"credential_env": [
|
|
116
|
+
"MICROSOFT_TRANSLATOR_API_KEY",
|
|
117
|
+
"AZURE_TRANSLATOR_KEY"
|
|
118
|
+
],
|
|
119
|
+
"homepage": "https://learn.microsoft.com/azure/ai-services/translator/",
|
|
120
|
+
"license": "Proprietary (Microsoft ToS)",
|
|
121
|
+
"commercialReady": true,
|
|
122
|
+
"cost_note": "Proprietary; free tier 2M chars/month",
|
|
123
|
+
"max_batch": 100,
|
|
124
|
+
"locale_map": {}
|
|
125
|
+
},
|
|
126
|
+
"libretranslate": {
|
|
127
|
+
"kind": "mt-api",
|
|
128
|
+
"method_class": "api",
|
|
129
|
+
"paradigm": "neural-nmt",
|
|
130
|
+
"env": [
|
|
131
|
+
"LIBRETRANSLATE_API_URL",
|
|
132
|
+
"LIBRETRANSLATE_API_KEY"
|
|
133
|
+
],
|
|
134
|
+
"homepage": "https://libretranslate.com",
|
|
135
|
+
"license": "AGPL-3.0",
|
|
136
|
+
"commercialReady": false,
|
|
137
|
+
"cost_note": "Free / self-hosted (AGPL-3.0 obligations apply)",
|
|
138
|
+
"max_batch": 64,
|
|
139
|
+
"locale_map": {}
|
|
140
|
+
},
|
|
141
|
+
"apertium": {
|
|
142
|
+
"kind": "mt-api",
|
|
143
|
+
"method_class": "api",
|
|
144
|
+
"paradigm": "rule-based",
|
|
145
|
+
"env": [
|
|
146
|
+
"APERTIUM_API_URL",
|
|
147
|
+
"APERTIUM_API_KEY"
|
|
148
|
+
],
|
|
149
|
+
"default_base_url": "https://apertium.org/apy",
|
|
150
|
+
"homepage": "https://www.apertium.org",
|
|
151
|
+
"license": "GPL-3.0+ (Apertium)",
|
|
152
|
+
"commercialReady": false,
|
|
153
|
+
"cost_note": "Free public API (rate-limited; self-host for volume)",
|
|
154
|
+
"max_batch": 1,
|
|
155
|
+
"locale_map": {}
|
|
156
|
+
},
|
|
157
|
+
"amazon-translate": {
|
|
158
|
+
"kind": "mt-api",
|
|
159
|
+
"method_class": "api",
|
|
160
|
+
"paradigm": "neural-nmt",
|
|
161
|
+
"env": [
|
|
162
|
+
"AWS_ACCESS_KEY_ID",
|
|
163
|
+
"AWS_SECRET_ACCESS_KEY",
|
|
164
|
+
"AWS_REGION"
|
|
165
|
+
],
|
|
166
|
+
"credential_env": [
|
|
167
|
+
"AWS_ACCESS_KEY_ID",
|
|
168
|
+
"AWS_SECRET_ACCESS_KEY"
|
|
169
|
+
],
|
|
170
|
+
"credential_env_all": true,
|
|
171
|
+
"homepage": "https://aws.amazon.com/translate/",
|
|
172
|
+
"license": "Proprietary (AWS Service Terms)",
|
|
173
|
+
"commercialReady": true,
|
|
174
|
+
"cost_note": "~$15 / 1M characters (free tier 2M chars/month for 12 months)",
|
|
175
|
+
"max_batch": 1,
|
|
176
|
+
"locale_map": {},
|
|
177
|
+
"optional_extra": "aws",
|
|
178
|
+
"runtimes": [
|
|
179
|
+
"harness"
|
|
180
|
+
]
|
|
181
|
+
},
|
|
182
|
+
"tilde": {
|
|
183
|
+
"kind": "mt-api",
|
|
184
|
+
"method_class": "api",
|
|
185
|
+
"paradigm": "neural-nmt",
|
|
186
|
+
"env": [
|
|
187
|
+
"TILDE_API_KEY"
|
|
188
|
+
],
|
|
189
|
+
"default_base_url": "https://translate.tilde.ai/api/translate/text",
|
|
190
|
+
"homepage": "https://tilde.ai/machine-translation/",
|
|
191
|
+
"license": "Proprietary (Tilde ToS)",
|
|
192
|
+
"commercialReady": true,
|
|
193
|
+
"cost_note": "Proprietary; free trial 250K chars (no card)",
|
|
194
|
+
"max_batch": 25,
|
|
195
|
+
"locale_map": {}
|
|
196
|
+
},
|
|
197
|
+
"translated": {
|
|
198
|
+
"kind": "mt-api",
|
|
199
|
+
"method_class": "api",
|
|
200
|
+
"paradigm": "neural-nmt",
|
|
201
|
+
"env": [
|
|
202
|
+
"LARA_ACCESS_KEY_ID",
|
|
203
|
+
"LARA_ACCESS_KEY_SECRET"
|
|
204
|
+
],
|
|
205
|
+
"credential_env": [
|
|
206
|
+
"LARA_ACCESS_KEY_ID",
|
|
207
|
+
"LARA_ACCESS_KEY_SECRET"
|
|
208
|
+
],
|
|
209
|
+
"credential_env_all": true,
|
|
210
|
+
"default_base_url": "https://laratranslate.com",
|
|
211
|
+
"homepage": "https://laratranslate.com",
|
|
212
|
+
"license": "Proprietary (Translated ToS)",
|
|
213
|
+
"commercialReady": true,
|
|
214
|
+
"cost_note": "Proprietary; plan-based pricing (per-character cost not published)",
|
|
215
|
+
"max_batch": 50,
|
|
216
|
+
"locale_map": {}
|
|
217
|
+
},
|
|
218
|
+
"local-model": {
|
|
219
|
+
"kind": "local-model",
|
|
220
|
+
"method_class": "pipeline",
|
|
221
|
+
"paradigm": "neural-nmt",
|
|
222
|
+
"env": [
|
|
223
|
+
"LOCAL_MODEL_ID"
|
|
224
|
+
],
|
|
225
|
+
"homepage": "https://huggingface.co/models?pipeline_tag=translation",
|
|
226
|
+
"license": "Per-model (open weights; see the chosen model's card)",
|
|
227
|
+
"commercialReady": false,
|
|
228
|
+
"cost_note": "Free to run; local compute only (UNKNOWN to the harness, never $0)",
|
|
229
|
+
"max_batch": 8,
|
|
230
|
+
"optional_extra": "local-models",
|
|
231
|
+
"runtimes": [
|
|
232
|
+
"harness"
|
|
233
|
+
]
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|