Doplnok Popis obsahu pomocou AI pre NVDA

Tento doplnok umožňuje získať podrobné popisy obrázkov, ovládacích prvkov používateľského rozhrania a ďalšieho neprístupného vizuálneho obsahu.

S využitím multimodálnych schopností pokročilých modelov umelej inteligencie a algoritmov počítačového videnia sa snažíme poskytovať najlepšie možné popisy obsahu svojho druhu a zvýšiť tak vašu nezávislosť od pomoci vidiacich. Ďalšie informácie o použitých modeloch nájdete v príslušnej časti tohto dokumentu.

Funkcie

Možnosti využitia

Tento projekt mal niekoľko hlavných motivácií.

NVDA dokáže už v základnej inštalácii vykonávať optické rozpoznávanie znakov (OCR), čo je obrovský pokrok. Pokiaľ sa snažíte získať text z obrázku alebo dokumentu PDF, potom hľadáte práve túto funkciu.

OCR však dokáže analyzovať iba dáta, ktoré môžu obsahovať text. Nedokáže objasniť kontext, predmety, ktoré sa na obrázkoch môžu nachádzať, a vzťahy medzi nimi. Tých je internet plný. Logá, portréty, mémy, ikony, grafy, diagramy, stĺpcové/čiarové grafy... Na čo si spomeniete. Sú všade a obvykle nie sú vo formáte, ktorý by používatelia čítača obrazovky dokázali interpretovať. Donedávna sme sa neochvejne spoliehali na to, že autori obsahu budú poskytovať alternatívne textové popisy. Aj keď je to stále nutnosť, ťažko zmeníme skutočnosť, že vysoký štandard kvality býva skôr výnimkou, nie pravidlom.

Teraz máte možnosti takmer neobmedzené. Môžete napr:

Modely

Pre sprevádzkovanie jednotlivých modelov postupujte podľa nižšie uvedených pokynov.

Ako začať

Stiahnite si najnovšiu verziu doplnku z tohto odkazu. Otvorte stiahnutý súbor v počítači, kde máte nainštalované NVDA, a potom podľa nižšie uvedených pokynov získajte kľúč API od niektorého z podporovaných poskytovateľov modelov. Pokiaľ si nie ste istí, ktorý model použiť, vývojári a testeri tohto doplnku sa zhodujú na tom, že Gemini aktuálne ponúka rozumnejšie ceny, zatiaľ čo OpenAI zrejme poskytuje vyššiu mieru presnosti rozpoznávania. Claude 3 haiku je najlacnejšou a najrýchlejšou možnosťou, ale jeho kvalita je sporná. Tieto výsledky sú samozrejme veľmi závislé od danej úlohy, takže odporúčame experimentovať s rôznymi modelmi a pokynmi, aby ste zistili, čo vám funguje najlepšie.

Ako získať API kľúč od OpenAI:

  1. Prejdite na stránku https://platform.openai.com/account/api-keys
  2. Ak ešte nemáte účet, vytvorte si ho. Ak áno, prihláste sa.
  3. Na stránke API keys kliknite na tlačidlo „Create new secret key“. Skopírujte ho do schránky.
  4. Na svoj užívateľský účet vložte aspoň 1 dolár
  5. V dialógovom okne nastavenia NVDA prejdite do kategórie Popis obsahu pomocou AI, potom vyberte „Spravovať modely (alt+m)“, ako poskytovateľa vyberte „GPT4 Vision“, klávesom tab prejdite do políčka API kľúč a vložte sem práve vytvorený kľúč.

V čase, keď bol tento dokument vytvorený, začala OpenAI k novým vývojárskym účtom vydávať kredity zadarmo, ktoré je možné používať po dobu troch mesiacov, potom prepadnú. Po uplynutí tejto lehoty si budete musieť kredity zakúpiť. Zvyčajná spotreba by nikdy nemala presiahnuť 5,00 USD mesačne. Pre predstavu, pôvodná verzia tohto doplnku bola vyvinutá za necelý dolár. Kedykoľvek sa môžete prihlásiť k svojmu účtu OpenAI a kliknutím na „usage“ zistiť, koľko kreditov vám ešte zostáva.

Ako získať API kľúč od Googlu

  1. Najprv je potrebné vytvoriť Google Workspace projekt pomocou tohto odkazu. Uistite sa, že ste prihlásení k svojmu účtu. https://console.cloud.google.com/projectcreate
  2. Zadajte názov v rozsahu štyroch až tridsiatich znakov, napríklad „gemini“ alebo „NVDA add-on“.
  3. Prejdite na túto adresu: https://makersuite.google.com/app/apikey
  4. Kliknite na tlačidlo „create API key“
  5. V dialógovom okne nastavenia NVDA prejdite do kategórie Popis obsahu pomocou AI, potom vyberte „Spravovať modely (alt+m)“, ako poskytovateľa vyberte „Google Gemini“, klávesom tab prejdite do políčka API kľúč a vložte sem práve vygenerovaný kľúč.

Ako získať API kľúč od Anthropic

  1. Prihláste sa do konzoly Anthropic.
  2. Kliknite na Your profile -> API keys.
  3. Kliknite na tlačidlo Create key.
  4. Zadajte názov kľúča, napríklad „AIContentDescriber“, potom kliknite na „Create Key“ a skopírujte hodnotu, ktorá sa zobrazí. Túto hodnotu vložíte do políčka API kľúč v kategórii Popis obsahu pomocou AI v dialógovom okne Nastavenia NVDA -> Spravovať modely -> Claude 3.
  5. Ak ste tak ešte neurobili, zakúpte si kredity v hodnote aspoň 5 USD na stránke Plans na adrese https://console.anthropic.com/settings/plans.

Ako nastaviť llama.cpp

Tento poskytovateľ je v súčasnej dobe trochu chybný a vaše skúsenosti sa môžu líšiť. O sprevádzkovanie modelu by sa mali pokúšať naozaj len pokročilí používatelia so záujmom o prevádzkovanie lokálnych self-hosted modelov as hardvérom, ktorý na to potrebujú.

  1. Stiahnite si llama.cpp. V čase vytvorenia tohto dokumentu tento pull request odstraňuje podporu pre multimodálne schopnosti, takže vy budete chcieť použiť poslednú verziu s touto podporou. Ak používate grafickú kartu Nvidia s podporou CUDA, stiahnite si tieto predpripravené binárne súbory: llama-b2356-bin-win-cublas-cu12.2.0-x64.zip a cudart-flama-bin-win-cu12.2.0-x64.zip. Popis krokov potrebných pre sprevádzkovanie tohto modelu s inou grafickou kartou je nad rámec tohto dokumentu, ale nájdete ho v readme súbore pre llama.cpp.
  2. Obidva súbory rozbaľte do rovnakého priečinka.
  3. Z Huggingface si stiahnite kvantifikované súbory modelov, ktoré chcete použiť. Pre LLaVA 1.6 Vicuna 7B: llava-v1.6-vicuna-7b.Q4KM.gguf a mmproj-model-f16.gguf.
  4. Tieto súbory vložte do priečinka s ostatnými spustiteľnými súbormi llama.cpp.
  5. Z príkazového riadka spustite server llama.cpp a odovzdajte mu súbory .gguf pre model a multimodálny projektor (podľa nasledujúcich pokynov): server.exe -m llava-v1.6-vicuna-7b.Q4_K_M.gguf --mmproj mmproj-model-f16.gguf
  6. V dialógovom okne nastavenia NVDA prejdite do kategórie Popis obsahu pomocou AI, potom zvoľte „Spravovať modely (alt+m)“, ako poskytovateľa vyberte „llama.cpp“, klávesom tab prejdite do políčka Adresa URL a zadajte koncový bod zobrazený v konzole (predvolená hodnota je „http://localhost:8080“).
  7. Prípadne môžete niektoré z týchto krokov vynechať a spustiť llama.cpp na vzdialenom serveri s vyšším výkonom, než má váš lokálny počítač, a zadať príslušný koncový bod podľa neho.

Použitie

Štandardne sú priradené štyri klávesové skratky:

Tri klávesové skratky v predvolenom stave nie sú priradené:

Neváhajte si ich kedykoľvek prispôsobiť v dialógu Klávesové príkazy.

Zostavenie doplnku

Na vytvorenie balíčka doplnku zo zdrojových kódov budete potrebovať:

Potom otvorte vybraný terminál:

git clone https://github.com/cartertemm/AI-content-describer.git cd AI-content-describer scons

Po dokončení príkazu scons bude do koreňového adresára umiestnený súbor *.nvda-addon.

Ak pridáte ďalšie reťazce, ktoré je potrebné preložiť, je dôležité znova zostaviť súbor .pot:

scons pot

Ako doplnok preložiť

Na počítači so systémom Windows:

Spolupracovníci

Všetku vašu spoluprácu si veľmi vážim a uvediem ju tu. Na doplnku sa podieľali:

Narazili ste na problém? Popíšte ho v issue trackeri

Máte návrh na novú funkciu? Vytvorte ticket aj pre ňu a môžeme sa dohodnúť na jej implementácii. Pull requesty bez priradených issues budú preskúmané, ale pravdepodobne zaberú viac času, najmä ak sa rozhodnem, že nová oprava alebo funkcia musí fungovať inak, ako ste pôvodne navrhovali.

Preklady uvítam s otvoreným náručím. Čím viac ľudí bude mať k tejto skvelej technológii prístup, tým lepšie!

Pokiaľ nemáte Github alebo ho radšej nepoužívate, môžete mi poslať e-mail - cartertemm (zavináč) gmail (bodka) com (len v angličtine).

Ďakujem za vašu podporu!