Supporto plugin OCR AI

È possibile aggiungere il supporto al plugin Discourse AI per aggiungere il testo presente nelle immagini ai post (OCR)? È possibile aggiungere il supporto all’API di Google Lens (Cloud Vision) per questo scopo?

Esempio: GitHub - communiteq/discourse-ocr-uploads

4 Mi Piace

È nella nostra roadmap sfruttare un LLM multimodale per creare descrizioni di immagini, che dovrebbe anche fornire un certo livello di OCR. Ma per l’OCR puro, magari prova quel plugin?

4 Mi Piace

Ho usato questo plugin nelle versioni precedenti di Discourse e ha funzionato. Ma sfortunatamente non funziona più nella nuova versione di Discourse.

1 Mi Piace

Vedi AI Image Captioning Feature in Discourse AI Plugin, ora è pronto e abilitato qui su meta.

3 Mi Piace

Grazie per questa funzionalità, la proverò @Falco @pmusaraj

2 Mi Piace

Penso che dovremmo comunque tenerlo aperto, la funzionalità di didascalia è adiacente all’OCR ma non è esattamente OCR.

L’OCR, ad esempio, ti permetterebbe di scattare una foto delle tue note e poi caricarle e stamparle esattamente. La didascalia AI è molto più sofisticata, ma non ti offre la stessa fedeltà di stampa di un’intera pagina di testo.

Non sono sicuro di quando avremo tempo per lavorare su un OCR, ma sembra un po’ diverso.

6 Mi Piace

Ora che Anthropic Claude 3 ha il supporto per la visione, fa un buon lavoro con i lavori OCR, ad esempio

2 Mi Piace

Piange in tedesco

:de: :beer: :leftwards_hand::sob: :rightwards_hand: :pretzel: :hotdog:


A parte gli scherzi, sono curioso di sapere come si comporterebbe con un’immagine come questa:

Tesseract ottiene quanto segue:

MINGW64 ~/Source/Repos/Sut. Driver. Firmware
git push Locking support detected on remote “origin”. Consider enabling it with: git config Ifs ‘1fs.locksverify true
LFS: Access forbidden. Check your access level.
error: failed to push some refs to
MINGW64 ~/Source/Repos/Sut. Driver. Firmware
git push Locking support detected on remote “origin”. Consider enabling it with: git config Ifs. /\fs.locksverify true
Uploading LFS objects: 100% (1/1), 584 KB | 0 B/s, done.
Enumerating objects: 9, done.
Counting objects: 100% (9/9), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (5/5), 478 bytes | 478.00 KiB/s, done.
Total 5 (delta 1), reused 0 (delta 0), pack-reused 0 »
remote:
remote: To create a merge request for visit:
remote: 1
remote:
To
2c50e5b. . ba25f3e
L MINGN64 ~/Source/Repos /Sut. Driver. Firmware

(Ok, sono sorpreso da quanto sia ragionevole questo risultato. Tesseract spesso cambia l’ordine delle righe e distorce le lettere con questo tipo di esempi.)

Sam, sarebbe possibile per te inserire quell’immagine in Claude e pubblicare il risultato?

Sentiti libero di provare qui, la persona creativa di Claude qui ha il supporto per la visione, l’ho appena abilitato

https://meta.discourse.org/t/parsing-complex-json-data-in-tris20-code/301329

O questa è una questione di abilità da parte mia, o Claude sta avendo qualche difficoltà :sweat_smile:

Problema di abilità :sweat_smile: Stavo usando Forum Helper invece della personalità Creativa.

Claude Creative ci dà questo:

MINGW64 ~/Source/Repos/Sut.Driver.Firmware (kingfisher)
git push Locking support detected on remote “origin”. Consider enabling it with: git config lfs.http://tfs.locksverify true
LFS: Access forbidden. Check your access level.
error: failed to push some refs to ‘http://tfs.lockeed/tfs/HnC/TEC/SUT/Driver%20Firmware/_git/Sut.Driver.Firmware’

MINGW64 ~/Source/Repos/Sut.Driver.Firmware (kingfisher)
git push Locking support detected on remote “origin”. Consider enabling it with: git config lfs.http://tfs.locked/tfs.locksverify true
Uploading LFS objects: 100% (1/1), 584 KB | 0 B/s, done.
Enumerating objects: 9, done.
Counting objects: 100% (9/9), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (5/5), 478 bytes | 478.00 KiB/s, done.
Total 5 (delta 1), reused 0 (delta 0), pack-reused 0
remote: To create a merge request for kingfisher, visit:
remote: http://tfs.locked/tfs/HRC/TEC/SUT/_git/Sut.Driver.Firmware/pullrequest/new?sourceRef=kingfisher&targetRef=develop
remote:
To http://tfs.locked/tfs/HRC/TEC/SUT/_git/Sut.Driver.Firmware
2c50e5b…ba25f3e kingfisher - kingfisher

MINGW64 ~/Source/Repos/Sut.Driver.Firmware (kingfisher)
$

Risultato interessante. Sento che i due sono più o meno alla pari in questo esempio, ma con difetti diversi. Claude ha allucinato l’URL qui, facendo un’ipotesi contestuale che stiamo facendo una pull request basata sul problema di git.

Tesseract non allucina e in questo caso sembra essere più corretto. L’unica cosa che risalta è 1fs alla riga 4 e \\fs alla riga 10 invece di lfs.

Claude commette anche un errore simile ovunque, usando tfs invece di lfs. È sorprendente perché l’estrapolazione dell’URL basata sul contesto mostra che ha capito il contesto, ma poi invece di lfs che è prominente in questo dominio problematico, ha creato qualcosa di completamente nuovo: tfs.

1 Mi Piace

Ciò che ho trovato assolutamente sbalorditivo qui è che hai un motore OCR con cui puoi interagire.

Non ti piace l’allucinazione del martin pescatore… bene… chiedigli semplicemente di non fare quella cosa.

Davvero sconvolgente quello che puoi fare con questa tecnologia:

(scuse per l’immagine rotta nell’OP, la stiamo sistemando, l’immagine è)

1 Mi Piace