Golygu 2020/06 : Mae’r cyfieithydd hefyd ar gael yn y byd yn rhanbarth “Lab” Speculoos (speculoos.world:8002:Lab ).

Mae problemau gyda chyfieithwyr bob amser. Yr un mwyaf amlwg yw… Nid yw’r rhan fwyaf yn gweithio o gwbl (ers i Google newid ei bolisi API). Ac mae’r rhai sy’n gweithio yn defnyddio allwedd API sydd â chod caled ac yn aml yn rhoi’r gorau i weithio pan fydd gormod o bobl yn cael copi o’r un eitem.

Felly cymerais drosodd hen brosiect hardd, HG Universal Translator gan Frank Ramos , a oedd yn ymddangos fel pe bai wedi’i adael (nid oedd y fersiwn ddiwethaf yn weithredol ac roedd yn 4 oed, cyhoeddwyd hyd yn oed nad oedd y fersiwn a werthwyd am 1 L$ ar farchnad SL yn gweithio) a gwnes y newidiadau angenrheidiol i wneud iddo weithio .

https://git.magiiic.com/opensimulator/Universal-Translator-Yandex

Pam ei fod yn brydferth? Oherwydd ei fod yn aml-ddefnyddiwr ac yn ddeallus. Yn lle bod pob defnyddiwr yn ymholi am yr API cyfieithu, mae’r cyfieithydd yn grwpio’r ceisiadau. Felly os yw 10 o bobl eisiau cyfieithiad Saesneg tra bod rhywun yn siarad Sbaeneg, dim ond 1 cais cyfieithu a wneir, yn lle 10.

A pham smart? Achos mae pob cyfieithydd yn gwirio i weld a oes un arall yn rhedeg o gwmpas. Os oes yna nifer o gyfieithwyr, mae un yn dod yn feistr (yr un sy’n gwneud y ceisiadau cyfieithu), mae’r rhai eraill yn dod yn gaethweision (dim ond yn danfon i “eu” defnyddwyr lleol).

Felly gallwch chi ollwng cyfieithydd ar eich sim, a gall defnyddwyr wisgo un fel hud, nid yw’n brifo: mae’r ceisiadau http i’r API cyfieithu wedi’u optimeiddio, a dim ond un cais fesul pâr iaith (Saesneg i Sbaeneg, Saesneg i Ffrangeg …) yn cael ei wneud.

A wnes i hyn i gyd? Naddo. Dyma’r ffordd yr oedd yn gweithio yn y cyfieithydd gwreiddiol Hank Ramos.

Felly beth wnes i mewn gwirionedd?

  • addasu’r sgript i ddefnyddio cyfieithiad Yandex yn lle Google;
    Mae Yandex yn defnyddio Allwedd API maen nhw’n ei roi am ddim, ac mae’r broses gofrestru yn SYML (cofrestrwch, mynnwch yr allwedd). Mae Google a Microsoft (i nodi dau yn unig) er enghraifft, nid yn unig yn codi tâl am yr allwedd API, ond mae’r broses gofrestru yn or-gymhleth. Felly gall defnyddiwr sy’n cael copi gael ei allwedd ei hun yn hawdd, yn hytrach na gorfod dosbarthu copi gydag allwedd cod caled a fydd, yn fuan neu’n hwyr, yn mynd y tu hwnt i’r defnydd a ganiateir os caiff ei rannu gan ddwsinau o ddefnyddwyr.
  • storio’r allwedd mewn nodyn ar wahân;
    Nid yw wedi’i godio’n galed yn y sgript fel mewn rhai cyfieithwyr Yandex eraill sydd ar gael.
  • ysgrifennu amnewidiadau ar gyfer sgriptiau coll yn y fersiwn gyhoeddedig o HG Universal Translator;
    Mewn gwirionedd, nid oedd y sgript ffynhonnell agored hon fel y’i dosbarthwyd yn gallu gweithio (hyd yn oed heb fater API Google) gan nad oedd rhai sgriptiau gofynnol wedi’u cynnwys.
  • … a rhai mân newidiadau eraill.