Skip to content

About

A GPTTranslator egy önálló Windows asztali alkalmazás, amely a chatgpt.com oldalt saját ablakban nyitja meg, és a képkivágásos fordítási munkafolyamatot közvetlenül ebből az ablakból kezeli.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Repository files navigation

GPTTranslator ikon

GPTTranslator

A GPTTranslator egy önálló Windows asztali alkalmazás, amely a chatgpt.com oldalt saját ablakban nyitja meg, és a képkivágásos fordítási munkafolyamatot közvetlenül ebből az ablakból kezeli.

Fő képességek

  • közvetlenül megnyíló chatgpt.com főoldal, szürke felső állapotsávval és műveleti gombokkal
  • kétoszlopos beállítások állandó mentési sávval, kis ablakban egyoszlopos elrendezéssel
  • saját ablakos chatgpt.com felület
  • magyar mikrofonengedély-ablak a ChatGPT hangbeszélgetéséhez
  • kézi promptküldés a felső Prompt elküldése gombbal
  • Windows képkivágó indítása gyorsgombbal
  • a saját képkivágási gyorsgombbal készített képek automatikus beküldése a ChatGPT-be
  • az elakadt képküldés ellenőrzött újrapróbálása ugyanabból a kivágásból, új képkészítés nélkül
  • választható OCR mód, amely képről szöveget olvas ki és azt küldi a ChatGPT-nek
  • az OCR mód alapértelmezetten bekapcsolt
  • a kész fordítás automatikus visszamásolása a vágólapra
  • a mentett fordítás karakterenkénti begépelése gyorsgombbal
  • a kész válasz felismerése az új ChatGPT üzenetfelületen is
  • a főablakkal egyező szürke, kisebb képernyőhöz igazodó gyors chat overlay kézi szövegküldéshez
  • szerkeszthető gyorsgombok lenyomásos rögzítéssel
  • külön AltGr-kezelés, kiosztáshelyes írásjelek és Mouse 4–5 egérgombok gyorsgombként
  • tálcaikon dupla kattintásos elrejtéssel és visszahozással
  • háttérben tovább futó ChatGPT oldal lekicsinyítés vagy eltüntetés után is
  • képernyő tetején megjelenő fordítási overlay Betöltés... állapottal
  • egy példányos indítás, ahol a második megnyitás a meglévő ablakot aktiválja
  • állítható overlay láthatóság és megjelenési idő
  • a GPU gyorsítás módosítása mentés után automatikus újraindítással lép érvénybe
  • automatikus NVIDIA-kompatibilitási beállítás a fókuszban jelentkező egérakadás javításához, külön profillal a futó EXE számára
  • automatikus helyi esemény- és hibanaplózás, kérésenként követhető fordítási folyamattal

Alap gyorsgombok

  • Alt + C: Windows képkivágó megnyitása és a kivágott kép fordítása
  • Alt + V: az utolsó mentett fordítás begépelése
  • Alt + X: gyors chat overlay megnyitása

Gyorsgombok beállítása

  • Kattints a kívánt gyorsbillentyű mezőjére, majd nyomd le a kombinációt. A módosítás után mentsd el a beállításokat.
  • Az AltGr külön módosítóként jelenik meg, nem keveredik a külön lenyomott Ctrl + Alt kombinációval. Magyar kiosztáson például az AltGr + - az alapgombot rögzíti, nem a begépelt * karaktert.
  • A Mouse 4 és Mouse 5 az egér két oldalsó gombja. Önmagukban és módosítókkal, például Ctrl + Mouse 4 kombinációként is használhatók mindhárom művelethez.
  • A gyorsgomb rögzítése közben a meglévő gyorsgomb nem indít műveletet. A hozzárendelt oldalsó egérgomb használatakor a program elnyeli a vissza/előre eseményt; a többi egérgomb működése változatlan.
  • A bekapcsolt, elmentett gyorsgombok főgombjának lenyomását, ismétlését és felengedését a program elnyeli, így a szokásos Windows-billentyűüzeneteket használó aktív alkalmazás nem kapja meg ugyanazt a parancsot. Ez a Mouse 4–5 gombokra és a külső makróprogram által előállított kombinációkra is vonatkozik; a program saját szövegbegépelése kivétel.
  • Az elnyelt Alt/Win kombináció után a program maszkolja a menü/Start véletlen megnyitását. Az önálló módosítógombokat és a nem hozzárendelt kombinációkat nem tiltja le. Átkötés vagy kikapcsolás közben a már elnyelt főgomb a felengedéséig elnyelt marad.
  • A gyorsgombok nem garantálhatnak minden programmal szemben elsőbbséget. Egy korábban értesített globális hook, a Windows védett billentyűparancsa, illetve a hookot megkerülő közvetlen játék-/illesztőprogram-bemenet nem zárható ki ezzel a módszerrel. Más program jogosultságait és gyorsgomb-beállításait az alkalmazás nem módosítja. A Windows működését a hookok leírása és a billentyűhook dokumentációja részletezi.
  • Az írásjelek natív Windows-gombazonosítóval kerülnek mentésre; a mezőben az aktuális kiosztás szerinti alapgomb neve látszik. A korábban hibásan rögzített kombinációt újra kell rögzíteni.
  • Az Fn önálló felismerése billentyűzetfüggő. Ha a billentyűzet nem továbbítja a Windowsnak, általános gyorsgombként nem rögzíthető. Ha a gyártói szoftver támogatja, például F13–F24 gombra átkötve használható. Az Fn-nel előállított, Windows által felismert normál billentyű rögzíthető.
  • Ha az egér gyártói szoftvere a Mouse 4–5 gombot billentyűkombinációvá alakítja, az alkalmazás azt a kombinációt látja. A közvetlen egérgombos használathoz a gomb küldjön hagyományos vissza/előre oldalgomb-eseményt.

Projektstruktúra

  • main.py: a program belépési pontja
  • build.ps1: .exe build PowerShellből
  • requirements.txt: Python függőségek
  • gpttranslator/: az alkalmazás forráskódja és assetjei

A szürke felület felépítése, működése és az elkülönített előnézet készítése a felületi leírásban szerepel.

Futtatás fejlesztés közben

  1. Hozz létre külön környezetet a frissített Python 3.13 futtatóval: py -3.13 -m venv .venv313
  2. Telepítsd az ellenőrzött függőségeket: .\.venv313\Scripts\python.exe -m pip install -r requirements-lock.txt
  3. Indítsd el a programot: .\.venv313\Scripts\python.exe main.py

A requirements.txt a függőségek általános követelményeit, a requirements-lock.txt a Windows/Python 3.13.15 környezetben ellenőrzött pontos verziókat tartalmazza. A Windows OCR a karbantartott WinRT csomagokat használja. Verziófrissítés után a teszteket és a biztonsági auditot újra kell futtatni. A korábbi .venv környezet megmaradt; az új kiadás a .venv313 környezetből készül.

Exe készítése

PowerShellből a projekt gyökérmappájában:

.\build.ps1 -PythonExecutable .\.venv313\Scripts\python.exe

Az elkészült egyfájlos program a dist\GPTTranslator.exe fájlba kerül.

Elkülönített tesztbuild a korábbi program felülírása nélkül:

.\build.ps1 -PythonExecutable .\.venv313\Scripts\python.exe -OutputDirectory dist\staging\verified -SkipDependencyInstall

A -SkipDependencyInstall kapcsolót csak előzetesen telepített és ellenőrzött környezettel használd. Sikertelen build nem írja felül a korábbi programot.

Korábbi adatok átvétele

A GPTTranslator normál Windows-adatmappája %LOCALAPPDATA%\GPTTranslator. Az első indítás a korábbi néven mentett beállításokat, böngésző-munkamenetet és OCR-modelleket automatikusan átveszi, ha az új adatmappa még nem tartalmaz adatot. A korábbi adatmappa megmarad a visszaállításhoz; meglévő új profilt a program nem egyesít és nem ír felül.

Az átnevezés utáni első indítás előtt teljesen zárd be a régi programot a tálcaikonjánál is. Futó régi példány vagy sikertelen másolás esetén az új program jelzi a hibát és leáll. A korábbi névhez tartozó kompatibilitási útvonalakat és az átvétel részleteit a telepítési útmutató rögzíti.

Az átnevezés, az új ikon, a profilátvétel és az EXE ellenőrzésének eredménye az átnevezési jelentésben szerepel.

A végleges v6.1 kiadás tesztjeit, EXE-hash-ét és csomagellenőrzését a kiadási jelentés rögzíti.

Használat

  1. Indítsd el a programot; a főablakban közvetlenül a chatgpt.com oldal nyílik meg.
  2. Jelentkezz be a ChatGPT-be a megnyíló saját ablakban.
  3. A Prompt elküldése gombbal küldd el a kézi promptot az aktuális beszélgetésbe.
  4. Nyomd meg a beállított képkivágási gyorsbillentyűt (alapból Alt + C), majd jelöld ki a fordítandó területet. A Win + Shift + S billentyűvel készített vagy más módon vágólapra másolt kép nem indul el automatikus fordításra.
  5. Várd meg a fordítást.
  6. Ha az app le van kicsinyítve vagy el van tüntetve, a fordítás felül egy overlay blokkban is megjelenik.
  7. A Szöveg kiolvasása képről beállítás alapértelmezetten be van kapcsolva. Ilyenkor a program előbb OCR-rel kiolvassa a képen lévő szöveget, és ezt küldi el a ChatGPT-nek.
  8. A kész szöveget illeszd be vágólapról, vagy használd a begépelési gyorsgombot.
  9. Az Alt + X gyorsgombbal bármikor megnyitható a gyors chat overlay kézi szövegküldéshez.

Fontos beállítások

  • a Szöveg kiolvasása képről beállítás alapból aktív
  • az OCR alacsony prioritású háttérszálon fut, a RapidOCR és az OpenCV számításai egy szálra korlátozottak, hogy kevesebb processzoridőt vegyenek el a játéktól
  • az OCR-re várakozás közben a program folyamatosan kezeli a bemeneti eseményeket; globális egérfigyelést csak Mouse 4–5 gyorsgomb használatakor vagy gyorsgomb rögzítése közben tart fenn
  • az automatikus képfordítás csak a saját képkivágási gyorsbillentyűhöz tartozik; az Esc megszakítja a várakozást, a következő kivágásra legfeljebb 45 másodperc áll rendelkezésre
  • ha a GPU gyorsítás állapota megváltozik és elmented a beállításokat, a program automatikusan újraindul
  • a NVIDIA egérakadás javítása beállítás alapból aktív; a kész EXE normál induláskor az adott gép NVIDIA-illesztőprogramjában állítja be a saját profilját, ezért másik gépen vagy másik EXE-útvonalon is elvégzi a szükséges helyi beállítást
  • az NVIDIA-kompatibilitási kapcsoló módosítása mentés után újraindítással lép érvénybe; kikapcsoláskor csak a program által létrehozott és azóta változatlan saját automatikus profil távolítható el
  • a ChatGPT Start voice gombja után a program magyar ablakban kér mikrofonengedélyt; az Engedélyezés elindíthatja a mikrofon használatát, a Tiltás, az Escape és az ablak bezárása elutasítja a kérést
  • a mikrofonengedély csak a főablak aktuális, engedélyezett HTTPS ChatGPT-eredetének hangrögzítési kérésére adható; az alkalmazás kamerát és külső oldalnak szóló engedélyt nem ad

Az NVIDIA-profil a videokártya-illesztőprogram helyi, egy alkalmazáshoz tartozó beállítása. A beépített javítás csak a GPTTranslator számára kapcsolja ki a G-SYNC/VRR alkalmazásszintű használatát; a játékok profiljához és a globális beállításokhoz nem nyúl. Új profil létrehozása és ellenőrzése után a program egyszer automatikusan újraindul, hogy friss folyamattal használja a beállítást. NVIDIA nélküli gépen a program a szokásos módon indul. A működés, a meglévő felhasználói profilok megőrzése és a kikapcsolás részletei az NVIDIA-kompatibilitás leírásában szerepelnek.

A hangbeszélgetéshez mikrofonhozzáférés szükséges. A fejhallgató hangkimenetéhez nincs külön Qt webes engedélykérő; a lejátszás a Windows hangkimeneti beállításait követi. A program minden új Qt-mikrofonengedélykérésnél felhasználói döntést kér, és nem ment saját tartós mikrofonengedélyt. A működés és az offline ellenőrzés részletei a hangengedélyek leírásában találhatók.

Tálca és háttérmód

  • az X gomb tálcára rejti az alkalmazást
  • a tálcaikon dupla kattintásra elrejti vagy visszahozza az ablakot
  • jobb kattintással Eltüntetés és Kilépés menü érhető el
  • eltüntetve vagy lekicsinyítve is tovább fut a fordítási folyamat
  • aktív mikrofon vagy hanglejátszás közben a rejtett weboldal futása megmarad, saját háttérbeli újrarajzolási időzítő nélkül; a hang leállása után a tétlen lap ismét felfüggeszthető
  • a programból egyszerre csak egy példány futtatható

Esemény- és hibanaplózás

  • a naplózás automatikusan aktív; a Beállítások Naplómappa megnyitása gombja nyitja meg a helyi naplókat
  • a naplók helye %LOCALAPPDATA%\GPTTranslator\logs, az aktuális fájl gpttranslator.jsonl
  • minden kérés saját azonosítót kap; a gyorsgomb, a kivágás, az OCR, a csatolás, a küldés, a válasz és a begépelés eseményei időrendben követhetők
  • 15 másodpercenként CPU-, memória- és eseményhurok-adatok is készülnek az alkalmazásról és a böngésző megjelenítő folyamatáról
  • a napló külön háttérszálon íródik, fájlonként legfeljebb 5 MiB és öt korábbi fájl megőrzésével
  • a fordítások, promptok, képek, OCR-szövegek, bejelentkezési adatok és teljes webcímek nem kerülnek a naplóba
  • az új kérés érvényteleníti a korábbi fordítást; a begépelési gyorsgomb a legutóbbi kérés elkészült szövegét használja
  • a képek legfeljebb négy várakozó elemet tartalmazó sorba kerülnek; megtelt sor esetén a program jelzi, hogy új kivágás szükséges
  • időtúllépés után legfeljebb két percig tovább figyeli a késői választ, az eredeti kéréshez kötve
  • az automatikus képküldés legfeljebb három teljes próbálkozást végez ugyanazzal a mentett képpel; a beszélgetésben megjelent képes kérés után a válaszra vár, és nem indít újabb beküldést

A részletes működés és a naplók olvasása a debug rendszer leírásában található.

Az Alt+V további javításának oka és ellenőrzése az Alt+V vizsgálati jelentésében szerepel. A vágólapmásolás kikapcsolása mellett is megmarad a kész fordítás a begépelési gyorsgomb számára; részleges válasz nem használható kész fordításként.

A szövegbuborék nélküli képes kérések válaszfelismerésének javítása és a válasz elutasításának részletesebb naplózása a képes válaszfelismerés vizsgálati jelentésében szerepel.

A kattintható képes üzenetek felismerésének, a sorban várakozó képeknek és az időtúllépés után bennmaradó küldési állapotnak a javítása az egymás utáni képküldések vizsgálati jelentésében szerepel.

A szerepattribútum nélküli képes üzenetek élő DOM-vizsgálata és a saját UI-fejlécből történő felismerés javítása a szerepfejlécek vizsgálati jelentésében szerepel.

Az elakadt képküldés újrapróbálása és a kilépés közben megszaladó ellenőrzés javítása a képküldési helyreállítás vizsgálati jelentésében szerepel.

Megjegyzés

  • A projekt nem az OpenAI API-t használja, hanem a webes ChatGPT felületet.
  • A működés a chatgpt.com oldal felépítésére épül, ezért egy nagyobb felületi változás után a DOM-kezelést frissíteni kellhet.
  • A képes üzenetek felismeréséhez a ChatGPT saját felületének nyelve English legyen. A fordítás célnyelve ettől függetlenül lehet magyar. A magyar Ezt mondtad: és A ChatGPT válasza: üzenetfejléceket a jelenlegi felismerő nem kezeli.
  • Az automatizálás csak a https://chatgpt.com és a https://chat.openai.com főoldali eredeten használható. Külső oldalon leáll; az eredet ellenőrzése a külön URL-sor eltávolítása után is megmarad.
  • Aktív programnál a saját képkivágási gyorsbillentyű után érkező első vágólapkép vagy a belőle kiolvasott szöveg automatikusan az aktuális ChatGPT-beszélgetésbe kerül. A kivágásra várakozás közben ne másolj más képet a vágólapra; az Esc vagy a külön megnyomott Win + Shift + S törli ezt az egyszeri küldési engedélyt.
  • A program a legutóbbi fordítást és a böngésző munkamenetét helyben megőrzi. A begépelési gyorsgomb az aktív ablakba ír; sortörést és tabulátort is küldhet, ezért terminálban ne használd.
  • A vágólap képkorlátja 40 millió képpont és 20 MiB PNG-adat. Az OCR modelleket a program SHA-256 ellenőrzés után tölti be.

Ellenőrzés és telepítés

.\.venv313\Scripts\python.exe -m unittest discover -s tests -v
node --test tests\test_automation.cjs

A tesztek helyi DOM-mintával és elkülönített adatokkal futnak; nem küldenek ChatGPT-üzenetet. A JavaScript tesztekhez Node.js szükséges, az elkészült program futtatásához nem.

A kész EXE külön offline önteszttel is ellenőrizhető:

& '.\dist\staging\verified\GPTTranslator.exe' --self-test-report '.\dist\staging\verified\self-test.json' --self-test-duration 120

A jelentésben a passed: true és a sikeres kilépési kód jelzi a lefutást. Az önteszt nem nyitja meg a normál profilt, nem használja a rendszer vágólapját, nem regisztrál globális gyorsbillentyűt, és a mintalap külső hálózati kéréseit blokkolja. Az offline képpróba a csatolást ellenőrzi, az OCR minőségét külön mérjük. Az NVIDIA-illesztőprogram profiljait az önteszt és a --staging mód sem módosítja; a forrásból indított Python-programban az automatikus profilkezelés nem fut.

A --staging kapcsoló ideiglenes profillal nyitja meg az élő ChatGPT-t, kikapcsolt figyeléssel és rendszerintegrációk nélkül. A sütik csak a memóriában maradnak. Ez a helyi alkalmazás tesztmódja, nem az OpenAI belső tesztkörnyezete; a kézzel elküldött szöveg az élő szolgáltatáshoz kerül.

A korábbi jelentések változatlan bizonyítékai és a verzióhoz kötött mérések a történeti dokumentációban szerepelnek. Az ottani EXE-nevek és hash-ek az átnevezés előtti kiadásokhoz tartoznak.

Licenc

Ez a projekt saját tulajdonú, minden jog fenntartva.

A forráskód, a dokumentáció és a kapcsolódó állományok használata, másolása, módosítása, terjesztése vagy továbbadása kizárólag előzetes írásos engedéllyel lehetséges. A részletek a LICENSE.txt fájlban találhatók.

About

A GPTTranslator egy önálló Windows asztali alkalmazás, amely a chatgpt.com oldalt saját ablakban nyitja meg, és a képkivágásos fordítási munkafolyamatot közvetlenül ebből az ablakból kezeli.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Contributors

Languages