Document AI์ ์ผ๋ถ๋ก Enterprise Document OCR์ ์ฌ์ฉํ์ฌ ๋ค์ํ ๋ฌธ์์์ ํ ์คํธ์ ๋ ์ด์์ ์ ๋ณด๋ฅผ ๊ฐ์งํ๊ณ ์ถ์ถํ ์ ์์ต๋๋ค. ๊ตฌ์ฑ ๊ฐ๋ฅํ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด ํน์ ๋ฌธ์ ์ฒ๋ฆฌ ์๊ตฌ์ฌํญ์ ์ถฉ์กฑํ๋๋ก ์์คํ ์ ๋ง์ถค์ค์ ํ ์ ์์ต๋๋ค.
๊ฐ์
Enterprise Document OCR์ ์ฌ์ฉํ์ฌ ์๊ณ ๋ฆฌ์ฆ ๋๋ ๋จธ์ ๋ฌ๋์ ๊ธฐ๋ฐ์ผ๋ก ํ ๋ฐ์ดํฐ ์ ๋ ฅ, ๋ฐ์ดํฐ ์ ํ๋ ๊ฐ์ ๋ฐ ๊ฒ์ฆ๊ณผ ๊ฐ์ ์์ ์ ํ ์ ์์ต๋๋ค. Enterprise Document OCR์ ์ฌ์ฉํ์ฌ ๋ค์๊ณผ ๊ฐ์ ์์ ์ ์ฒ๋ฆฌํ ์๋ ์์ต๋๋ค.
- ํ ์คํธ ๋์งํธํ: ๊ฒ์, ๊ท์น ๊ธฐ๋ฐ ๋ฌธ์ ์ฒ๋ฆฌ ํ์ดํ๋ผ์ธ ๋๋ ๋ง์ถค ๋ชจ๋ธ ์์ฑ์ ์ํด ๋ฌธ์์์ ํ ์คํธ ๋ฐ ๋ ์ด์์ ๋ฐ์ดํฐ๋ฅผ ์ถ์ถํฉ๋๋ค.
- ๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ ์ ํ๋ฆฌ์ผ์ด์ ์ฌ์ฉ: LLM์ ๋งฅ๋ฝ ์ดํด ๋ฐ OCR์ ํ ์คํธ ๋ฐ ๋ ์ด์์ ์ถ์ถ ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ์ง๋ฌธ๊ณผ ๋ต๋ณ์ ์๋ํํฉ๋๋ค. ๋ฐ์ดํฐ์์ ์ ์ฉํ ์ ๋ณด๋ฅผ ๋์ถํ๊ณ ์ํฌํ๋ก๋ฅผ ๊ฐ์ํํ์ธ์.
- ๋ณด๊ด: ์ข ์ด ๋ฌธ์๋ฅผ ๊ธฐ๊ณ๊ฐ ์ฝ์ ์ ์๋ ํ ์คํธ๋ก ๋์งํธํํ์ฌ ๋ฌธ์ ์ ๊ทผ์ฑ์ ๊ฐ์ ํฉ๋๋ค.
์ฌ์ฉ ์ฌ๋ก์ ๊ฐ์ฅ ์ ํฉํ OCR ์ ํ
| ํด๊ฒฐ์ฑ | ์ ํ | ์ค๋ช | ์ฌ์ฉ ์ฌ๋ก |
|---|---|---|---|
| Document AI | Enterprise Document OCR | ๋ฌธ์ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ์ํ ์ ๋ฌธ ๋ชจ๋ธ์ ๋๋ค. ๊ณ ๊ธ ๊ธฐ๋ฅ์๋ ์ด๋ฏธ์ง ํ์ง ์ ์, ์ธ์ด ํํธ, ํ์ ๋ณด์ ์ด ํฌํจ๋ฉ๋๋ค. | ๋ฌธ์์์ ํ ์คํธ๋ฅผ ์ถ์ถํ ๋ ๊ถ์ฅ๋ฉ๋๋ค. ์ฌ์ฉ ์ฌ๋ก์๋ PDF, ์ด๋ฏธ์ง ํํ์ ์ค์บํ ๋ฌธ์ ๋๋ Microsoft DocX ํ์ผ์ด ํฌํจ๋ฉ๋๋ค. |
| Document AI | OCR ๋ถ๊ฐ๊ธฐ๋ฅ | ํน์ ์๊ตฌ์ฌํญ์ ์ํ ํ๋ฆฌ๋ฏธ์ ๊ธฐ๋ฅ Enterprise Document OCR ๋ฒ์ 2.0 ์ด์๊ณผ๋ง ํธํ๋ฉ๋๋ค. | ์ํ ๊ณต์์ ๊ฐ์งํ๊ณ ์ธ์ํ๊ฑฐ๋, ๊ธ๊ผด ์คํ์ผ ์ ๋ณด๋ฅผ ์์ ํ๊ฑฐ๋, ์ฒดํฌ๋ฐ์ค ์ถ์ถ์ ์ฌ์ฉ ์ค์ ํด์ผ ํฉ๋๋ค. |
| Cloud Vision API | ํ ์คํธ ๊ฐ์ง | Google Cloud ํ์ค OCR ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ์ ์ธ๊ณ์์ ์ฌ์ฉํ ์ ์๋ REST API ๋ถ๋น ์์ฒญ 1,800๊ฐ์ ๊ธฐ๋ณธ ํ ๋น๋ | ์งง์ ์ง์ฐ ์๊ฐ๊ณผ ๋์ ์ฉ๋์ด ํ์ํ ์ผ๋ฐ์ ์ธ ํ ์คํธ ์ถ์ถ ์ฌ์ฉ ์ฌ๋ก |
| Cloud Vision | OCR Google Distributed Cloud (์ง์ ์ค๋จ๋จ) | GKE Enterprise๋ฅผ ์ฌ์ฉํ์ฌ GKE ํด๋ฌ์คํฐ์ ์ปจํ ์ด๋๋ก ๋ฐฐํฌํ ์ ์๋ Google Cloud Marketplace ์ ํ๋ฆฌ์ผ์ด์ ์ ๋๋ค. | ๋ฐ์ดํฐ ์์ฃผ ๋๋ ๊ท์ ์ค์ ์๊ตฌ์ฌํญ์ ์ถฉ์กฑํ๊ธฐ ์ํด |
๊ฐ์ง ๋ฐ ์ถ์ถ
Enterprise Document OCR์ PDF ๋ฐ ์ด๋ฏธ์ง์์ ๋ธ๋ก, ๋จ๋ฝ, ํ, ๋จ์ด, ๊ธฐํธ๋ฅผ ๊ฐ์งํ ์ ์์ผ๋ฉฐ ์ ํ๋๋ฅผ ๋์ด๊ธฐ ์ํด ๋ฌธ์์ ๊ธฐ์ธ๊ธฐ๋ฅผ ๋ณด์ ํ ์ ์์ต๋๋ค.
์ง์๋๋ ๋ ์ด์์ ๊ฐ์ง ๋ฐ ์ถ์ถ ์์ฑ:
| ์ธ์๋ ํ ์คํธ | ์๊ธ์จ | ๋จ๋ฝ | ์ฐจ๋จ | ์ | Word | ๊ธฐํธ ์์ค | ํ์ด์ง ๋ฒํธ |
|---|---|---|---|---|---|---|---|
| ๊ธฐ๋ณธ๊ฐ | ๊ธฐ๋ณธ๊ฐ | ๊ธฐ๋ณธ๊ฐ | ๊ธฐ๋ณธ๊ฐ | ๊ธฐ๋ณธ๊ฐ | ๊ธฐ๋ณธ๊ฐ | ๊ตฌ์ฑ ๊ฐ๋ฅ | ๊ธฐ๋ณธ๊ฐ |
๊ตฌ์ฑ ๊ฐ๋ฅํ Enterprise Document OCR ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋์งํธ PDF์์ ์ฝ์ ๋ ํ ์คํธ ๋๋ ๊ธฐ๋ณธ ํ ์คํธ ์ถ์ถ: ์ด ๊ธฐ๋ฅ์ ํ์ ๋ ํ ์คํธ, ๊ทน๋จ์ ์ธ ๊ธ๊ผด ํฌ๊ธฐ ๋๋ ์คํ์ผ, ๋ถ๋ถ์ ์ผ๋ก ์จ๊ฒจ์ง ํ ์คํธ์ ๊ฒฝ์ฐ์๋ ์์ค ๋ฌธ์์ ํ์๋ ๋๋ก ํ ์คํธ์ ๊ธฐํธ๋ฅผ ์ ํํ๊ฒ ์ถ์ถํฉ๋๋ค.
ํ์ ์์ : Enterprise Document OCR์ ์ฌ์ฉํ์ฌ ๋ฌธ์ ์ด๋ฏธ์ง๋ฅผ ์ ์ฒ๋ฆฌํ์ฌ ์ถ์ถ ํ์ง์ด๋ ์ฒ๋ฆฌ์ ์ํฅ์ ์ค ์ ์๋ ํ์ ๋ฌธ์ ๋ฅผ ์์ ํฉ๋๋ค.
์ด๋ฏธ์ง ํ์ง ์ ์: ๋ฌธ์ ๋ผ์ฐํ ์ ๋์์ด ๋๋ ํ์ง ์ธก์ ํญ๋ชฉ์ ์์ ํฉ๋๋ค. ์ด๋ฏธ์ง ํ์ง ์ ์๋ ํ๋ฆผ, ํ์๋ณด๋ค ์์ ๊ธ๊ผด์ ์กด์ฌ, ๋๋ถ์ฌ ๋ฑ 8๊ฐ์ง ์ธก๋ฉด์์ ํ์ด์ง ์์ค ํ์ง ์ธก์ ํญ๋ชฉ์ ์ ๊ณตํฉ๋๋ค.
ํ์ด์ง ๋ฒ์ ์ง์ : OCR์ ์ํด ์ ๋ ฅ ๋ฌธ์์ ํ์ด์ง ๋ฒ์๋ฅผ ์ง์ ํฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๋ถํ์ํ ํ์ด์ง์ ๋ํ ์ง์ถ๊ณผ ์ฒ๋ฆฌ ์๊ฐ์ ์ ์ฝํ ์ ์์ต๋๋ค.
์ธ์ด ๊ฐ์ง: ์ถ์ถ๋ ํ ์คํธ์ ์ฌ์ฉ๋ ์ธ์ด๋ฅผ ๊ฐ์งํฉ๋๋ค.
์ธ์ด ๋ฐ ํ๊ธฐ ํํธ: ๋ฐ์ดํฐ ์ธํธ์ ์๋ ค์ง ํน์ฑ์ ๊ธฐ๋ฐ์ผ๋ก OCR ๋ชจ๋ธ์ ์ธ์ด ๋๋ ํ๊ธฐ ํํธ๋ฅผ ์ ๊ณตํ์ฌ ์ ํ๋๋ฅผ ๊ฐ์ ํฉ๋๋ค.
OCR ๊ตฌ์ฑ์ ์ฌ์ฉ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด๋ ค๋ฉด OCR ๊ตฌ์ฑ ์ฌ์ฉ ์ค์ ์ ์ฐธ๊ณ ํ์ธ์.
OCR ๋ถ๊ฐ๊ธฐ๋ฅ
Enterprise Document OCR์ ํ์์ ๋ฐ๋ผ ๊ฐ๋ณ ์ฒ๋ฆฌ ์์ฒญ์์ ์ฌ์ฉ ์ค์ ํ ์ ์๋ ์ ํ์ ๋ถ์ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
์์ ํ pretrained-ocr-v2.0-2023-06-02 ๋ฐ pretrained-ocr-v2.1-2024-08-07 ๋ฒ์ ๊ณผ ์ถ์ ํ๋ณด pretrained-ocr-v2.1.1-2025-01-31 ๋ฒ์ ์์๋ ๋ค์ ๋ถ๊ฐ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ์ํ OCR: ๋ฌธ์์์ LaTeX ํ์์ ๊ณต์์ ์๋ณํ๊ณ ์ถ์ถํฉ๋๋ค.
- ์ฒดํฌ๋ฐ์ค ์ถ์ถ: Enterprise Document OCR ์๋ต์์ ์ฒดํฌ๋ฐ์ค๋ฅผ ๊ฐ์งํ๊ณ ์ํ(์ ํ๋จ/์ ํ ์ ๋จ)๋ฅผ ์ถ์ถํฉ๋๋ค.
- ๊ธ๊ผด ์คํ์ผ ๊ฐ์ง: ๊ธ๊ผด ์ ํ, ๊ธ๊ผด ์คํ์ผ, ํ๊ธฐ์ฒด, ๋๊ป, ์์ ๋ฑ ๋จ์ด ์์ค ๊ธ๊ผด ์์ฑ์ ์๋ณํฉ๋๋ค.
๋์ด๋ ๋ถ๊ฐ๊ธฐ๋ฅ์ ์ฌ์ฉ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด๋ ค๋ฉด OCR ๋ถ๊ฐ๊ธฐ๋ฅ ์ฌ์ฉ ์ค์ ์ ์ฐธ๊ณ ํ์ธ์.
์ง์๋๋ ํ์ผ ํ์
์ํฐํ๋ผ์ด์ฆ ๋ฌธ์ OCR์ PDF, GIF, TIFF, JPEG, PNG, BMP, WebP ํ์ผ ํ์์ ์ง์ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ์ง์๋๋ ํ์ผ์ ์ฐธ๊ณ ํ์ธ์.
Enterprise Document OCR์ ๋๊ธฐ์์ผ๋ก ์ต๋ 15ํ์ด์ง, ๋น๋๊ธฐ์์ผ๋ก ์ต๋ 30ํ์ด์ง์ DocX ํ์ผ๋ ์ง์ํฉ๋๋ค. ํ ๋น๋ ์ฆ๊ฐ ์์ฒญ(QIR)์ ํ๋ ค๋ฉด ํ ๋น๋ ์กฐ์ ์์ฒญ ๋จ๊ณ๋ฅผ ๋ฐ๋ฅด์ธ์. DocX ์ง์์ ๋น๊ณต๊ฐ ํ๋ฆฌ๋ทฐ ๋ฒ์ ์ ๋๋ค. ์ก์ธ์ค๋ฅผ ์์ฒญํ๋ ค๋ฉด Google ๊ณ์ ํ์ ๋ฌธ์ํ์ธ์.
๊ณ ๊ธ ๋ฒ์ ๊ด๋ฆฌ
๊ณ ๊ธ ๋ฒ์ ๊ด๋ฆฌ๋ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ํ์ ๋๋ค. ๊ธฐ๋ณธ AI/ML OCR ๋ชจ๋ธ์ ์ ๊ทธ๋ ์ด๋ํ๋ฉด OCR ๋์์ด ๋ณ๊ฒฝ๋ ์ ์์ต๋๋ค. ์๊ฒฉํ ์ผ๊ด์ฑ์ด ํ์ํ ๊ฒฝ์ฐ ๊ณ ์ ๋ ๋ชจ๋ธ ๋ฒ์ ์ ์ฌ์ฉํ์ฌ ์ต๋ 18๊ฐ์ ๋์ ๋์์ ๊ธฐ์กด OCR ๋ชจ๋ธ์ ๊ณ ์ ํ์ธ์. ์ด๋ ๊ฒ ํ๋ฉด OCR ๊ธฐ๋ฅ ๊ฒฐ๊ณผ๊ฐ ๋์ผํด์ง๋๋ค. ํ๋ก์ธ์ ๋ฒ์ ์ ๊ดํ ํ๋ฅผ ์ฐธ๊ณ ํ์ธ์.
ํ๋ก์ธ์ ๋ฒ์
๋ค์ ํ๋ก์ธ์ ๋ฒ์ ์ ์ด ๊ธฐ๋ฅ๊ณผ ํธํ๋ฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ํ๋ก์ธ์ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ์ฐธ๊ณ ํ์ธ์.
| ๋ฒ์ ID | ์ถ์ ์ฑ๋ | ์ค๋ช |
|---|---|---|
pretrained-ocr-v1.2-2022-11-10 |
์ ์ | ๊ณ ์ ๋ ๋ชจ๋ธ ๋ฒ์ 1.0: ์ต๋ 18๊ฐ์ ๋์ ์ปจํ ์ด๋ ์ด๋ฏธ์ง์ ๊ณ ์ ๋ ๋ฒ์ ์ค๋ ์ท์ ๋ชจ๋ธ ํ์ผ, ๊ตฌ์ฑ, ๋ฐ์ด๋๋ฆฌ์ ๋๋ค. |
pretrained-ocr-v2.0-2023-06-02 |
์ ์ | ๋ฌธ์ ์ฌ์ฉ ์ฌ๋ก์ ํนํ๋ ํ๋ก๋์ ์ง์ ๋ชจ๋ธ์ ๋๋ค. ๋ชจ๋ OCR ๋ถ๊ฐ๊ธฐ๋ฅ์ ๋ํ ์ก์ธ์ค๊ฐ ํฌํจ๋ฉ๋๋ค. |
pretrained-ocr-v2.1-2024-08-07 |
์ ์ | v2.1์ ์ฃผ์ ๊ฐ์ ์ฌํญ์ ์ธ์๋ ํ ์คํธ ์ธ์ ๊ฐ์ , ๋ ์ ํํ ์ฒดํฌ๋ฐ์ค ๊ฐ์ง, ๋ ์ ํํ ์ฝ๊ธฐ ์์์ ๋๋ค. |
pretrained-ocr-v2.1.1-2025-01-31 |
์ถ์ ํ๋ณด | v2.1.1์ v2.1๊ณผ ์ ์ฌํ๋ฉฐ US, EU, asia-southeast1๋ฅผ ์ ์ธํ ๋ชจ๋ ๋ฆฌ์ ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. |
Enterprise Document OCR์ ์ฌ์ฉํ์ฌ ๋ฌธ์ ์ฒ๋ฆฌ
์ด ๋น ๋ฅธ ์์์์๋ Enterprise Document OCR์ ์๊ฐํฉ๋๋ค. ์ฌ์ฉ ๊ฐ๋ฅํ OCR ๊ตฌ์ฑ์ ์ฌ์ฉ ์ค์ ๋๋ ์ฌ์ฉ ์ค์งํ์ฌ ์ํฌํ๋ก์ ๋ฌธ์ OCR ๊ฒฐ๊ณผ๋ฅผ ์ต์ ํํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค.
- Google Cloud ๊ณ์ ์ ๋ก๊ทธ์ธํฉ๋๋ค. Google Cloud๋ฅผ ์ฒ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๊ณ์ ์ ๋ง๋ค๊ณ Google ์ ํ์ ์ค์ ์ฑ๋ฅ์ ํ๊ฐํด ๋ณด์ธ์. ์ ๊ท ๊ณ ๊ฐ์๊ฒ๋ ์ํฌ๋ก๋๋ฅผ ์คํ, ํ ์คํธ, ๋ฐฐํฌํ๋ ๋ฐ ์ฌ์ฉํ ์ ์๋ $300์ ๋ฌด๋ฃ ํฌ๋ ๋ง์ด ์ ๊ณต๋ฉ๋๋ค.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM roleโyou can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Document AI API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM roleโyou can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Document AI API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Enterprise Document OCR ํ๋ก์ธ์ ๋ง๋ค๊ธฐ
๋จผ์ Enterprise Document OCR ํ๋ก์ธ์๋ฅผ ๋ง๋ญ๋๋ค. ์์ธํ ๋ด์ฉ์ ํ๋ก์ธ์ ๋ง๋ค๊ธฐ ๋ฐ ๊ด๋ฆฌ๋ฅผ ์ฐธ๊ณ ํ์ธ์.
OCR ๊ตฌ์ฑ
๋ชจ๋ OCR ๊ตฌ์ฑ์ ProcessDocumentRequest ๋๋ BatchProcessDocumentsRequest์ ProcessOptions.ocrConfig์์ ํด๋น ํ๋๋ฅผ ์ค์ ํ์ฌ ์ฌ์ฉ ์ค์ ํ ์ ์์ต๋๋ค.
์์ธํ ๋ด์ฉ์ ์ฒ๋ฆฌ ์์ฒญ ๋ณด๋ด๊ธฐ๋ฅผ ์ฐธ๊ณ ํ์ธ์.
์ด๋ฏธ์ง ํ์ง ๋ถ์
์ง๋ฅํ ๋ฌธ์ ํ์ง ๋ถ์์ ๋จธ์ ๋ฌ๋์ ์ฌ์ฉํ์ฌ ์ฝํ
์ธ ์ ๊ฐ๋
์ฑ์ ๊ธฐ๋ฐ์ผ๋ก ๋ฌธ์์ ํ์ง์ ํ๊ฐํฉ๋๋ค.
์ด ํ์ง ํ๊ฐ๋ ํ์งํ๊ฐ์ ์ [0, 1]๋ก ๋ฐํ๋๋ฉฐ 1๋ ์๋ฒฝํ ํ์ง์ ์๋ฏธํฉ๋๋ค.
์ธ์๋ ํ์งํ๊ฐ์ ์๊ฐ 0.5 ๋ฏธ๋ง์ธ ๊ฒฝ์ฐ ๋ถ์ ์ ์ธ ํ์ง ์ฌ์ ๋ชฉ๋ก (๊ฐ๋ฅ์ฑ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌ)์ด ํจ๊ป ๋ฐํ๋ฉ๋๋ค.
๊ฐ๋ฅ์ฑ์ด 0.5๋ณด๋ค ํฌ๋ฉด ์์ฑ ๊ฐ์ง๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.
๋ฌธ์์ ๊ฒฐํจ์ด ์๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋๋ฉด API๋ ๋ค์ 8๊ฐ์ง ๋ฌธ์ ๊ฒฐํจ ์ ํ์ ๋ฐํํฉ๋๋ค.
quality/defect_blurryquality/defect_noisyquality/defect_darkquality/defect_faintquality/defect_text_too_smallquality/defect_document_cutoffquality/defect_text_cutoffquality/defect_glare
ํ์ฌ ๋ฌธ์ ํ์ง ๋ถ์์๋ ๋ช ๊ฐ์ง ์ ํ์ฌํญ์ด ์์ต๋๋ค.
- ๊ฒฐํจ์ด ์๋ ๋์งํธ ๋ฌธ์์์ ๊ฑฐ์ง์์ฑ ๊ฐ์ง๋ฅผ ๋ฐํํ ์ ์์ต๋๋ค. ์ด ๊ธฐ๋ฅ์ ์ค์บํ๊ฑฐ๋ ์ดฌ์ํ ๋ฌธ์์ ์ฌ์ฉํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์ต๋๋ค.
๋๋ถ์ฌ ๊ฒฐํจ์ ๋ก์ปฌ์ ๋๋ค. ์ด๋ฌํ ์์๊ฐ ์ ์ฒด ๋ฌธ์์ ๊ฐ๋ ์ฑ์ ์ ํดํ์ง ์์ ์ ์์ต๋๋ค.
์ ๋ ฅ
์ฒ๋ฆฌ ์์ฒญ์์ ProcessOptions.ocrConfig.enableImageQualityScores์ true๋ก ์ค์ ํ์ฌ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
์ด ์ถ๊ฐ ๊ธฐ๋ฅ์ ํ๋ก์ธ์ค ํธ์ถ์ OCR ์ฒ๋ฆฌ์ ๋น์ทํ ์ง์ฐ ์๊ฐ์ ์ถ๊ฐํฉ๋๋ค.
{
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"processOptions": {
"ocrConfig": {
"enableImageQualityScores": true
}
}
}
์ถ๋ ฅ
๊ฒฐํจ ๊ฐ์ง ๊ฒฐ๊ณผ๋ Document.pages[].imageQualityScores[]์ ํ์๋ฉ๋๋ค.
{
"pages": [
{
"imageQualityScores": {
"qualityScore": 0.7811847,
"detectedDefects": [
{
"type": "quality/defect_document_cutoff",
"confidence": 1.0
},
{
"type": "quality/defect_glare",
"confidence": 0.97849524
},
{
"type": "quality/defect_text_cutoff",
"confidence": 0.5
}
]
}
}
]
}
์ ์ฒด ์ถ๋ ฅ ์์๋ ์ํ ํ๋ก์ธ์ ์ถ๋ ฅ์ ์ฐธ๊ณ ํ์ธ์.
์ธ์ด ํํธ
OCR ํ๋ก์ธ์๋ OCR ์์ง ์ฑ๋ฅ์ ๊ฐ์ ํ๊ธฐ ์ํด ์ ์ํ ์ธ์ด ํํธ๋ฅผ ์ง์ํฉ๋๋ค. ์ธ์ด ํํธ๋ฅผ ์ ์ฉํ๋ฉด OCR์ด ์ถ๋ก ๋ ์ธ์ด๊ฐ ์๋ ์ ํ๋ ์ธ์ด์ ๋ง๊ฒ ์ต์ ํ๋ ์ ์์ต๋๋ค.
์ ๋ ฅ
BCP-47 ์ธ์ด ์ฝ๋ ๋ชฉ๋ก์ผ๋ก ProcessOptions.ocrConfig.hints[].languageHints[]์ ์ค์ ํ์ฌ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
{
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"processOptions": {
"ocrConfig": {
"hints": {
"languageHints": ["en", "es"]
}
}
}
}
์ ์ฒด ์ถ๋ ฅ ์์๋ ์ํ ํ๋ก์ธ์ ์ถ๋ ฅ์ ์ฐธ๊ณ ํ์ธ์.
๊ธฐํธ ๊ฐ์ง
๋ฌธ์ ์๋ต์์ ๊ธฐํธ (๋๋ ๊ฐ๋ณ ๊ธ์) ์์ค์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฑ์๋๋ค.
์ ๋ ฅ
์ฒ๋ฆฌ ์์ฒญ์์ ProcessOptions.ocrConfig.enableSymbol์ true๋ก ์ค์ ํ์ฌ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
{
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"processOptions": {
"ocrConfig": {
"enableSymbol": true
}
}
}
์ถ๋ ฅ
์ด ๊ธฐ๋ฅ์ด ์ฌ์ฉ ์ค์ ๋๋ฉด Document.pages[].symbols[] ํ๋๊ฐ ์ฑ์์ง๋๋ค.
์ ์ฒด ์ถ๋ ฅ ์์๋ ์ํ ํ๋ก์ธ์ ์ถ๋ ฅ์ ์ฐธ๊ณ ํ์ธ์.
๊ธฐ๋ณธ ์ ๊ณต PDF ํ์ฑ
๋์งํธ PDF ํ์ผ์์ ์ฝ์ ๋ ํ ์คํธ๋ฅผ ์ถ์ถํฉ๋๋ค. ์ฌ์ฉ ์ค์ ํ๋ฉด ๋์งํธ ํ ์คํธ๊ฐ ์๋ ๊ฒฝ์ฐ ๋ด์ฅ ๋์งํธ PDF ๋ชจ๋ธ์ด ์๋์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. ๋์งํธ์ด ์๋ ํ ์คํธ๊ฐ ์์ผ๋ฉด ๊ดํ OCR ๋ชจ๋ธ์ด ์๋์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. ์ฌ์ฉ์๋ ๋ณํฉ๋ ํ ์คํธ ๊ฒฐ๊ณผ๋ฅผ ๋ชจ๋ ์์ ํฉ๋๋ค.
์ ๋ ฅ
์ฒ๋ฆฌ ์์ฒญ์์ ProcessOptions.ocrConfig.enableNativePdfParsing์ true๋ก ์ค์ ํ์ฌ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
{
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"processOptions": {
"ocrConfig": {
"enableNativePdfParsing": true
}
}
}
Character-in-the-box ๊ฐ์ง
๊ธฐ๋ณธ์ ์ผ๋ก Enterprise Document OCR์๋ ์์ ์์ ์๋ ๋ฌธ์์ ํ ์คํธ ์ถ์ถ ํ์ง์ ๊ฐ์ ํ๊ธฐ ์ํด ๊ฐ์ง๊ธฐ๊ฐ ์ฌ์ฉ ์ค์ ๋์ด ์์ต๋๋ค. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.

์์ ์์ ๋ฌธ์์ OCR ํ์ง ๋ฌธ์ ๊ฐ ์๋ ๊ฒฝ์ฐ ์ฌ์ฉ ์ค์งํ ์ ์์ต๋๋ค.
์ ๋ ฅ
์ฒ๋ฆฌ ์์ฒญ์์ ProcessOptions.ocrConfig.disableCharacterBoxesDetection์ true๋ก ์ค์ ํ์ฌ ์ฌ์ฉ ์ค์งํฉ๋๋ค.
{
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"processOptions": {
"ocrConfig": {
"disableCharacterBoxesDetection": true
}
}
}
๊ธฐ์กด ๋ ์ด์์
ํด๋ฆฌ์คํฑ ๋ ์ด์์ ๊ฐ์ง ์๊ณ ๋ฆฌ์ฆ์ด ํ์ํ ๊ฒฝ์ฐ ํ์ฌ ML ๊ธฐ๋ฐ ๋ ์ด์์ ๊ฐ์ง ์๊ณ ๋ฆฌ์ฆ์ ๋์์ผ๋ก ์ฌ์ฉํ ์ ์๋ ๊ธฐ์กด ๋ ์ด์์์ ์ฌ์ฉ ์ค์ ํ๋ฉด ๋ฉ๋๋ค. ๊ถ์ฅ๋๋ ๊ตฌ์ฑ์ด ์๋๋๋ค. ๊ณ ๊ฐ์ ๋ฌธ์ ์ํฌํ๋ก์ ๋ฐ๋ผ ๊ฐ์ฅ ์ ํฉํ ๋ ์ด์์ ์๊ณ ๋ฆฌ์ฆ์ ์ ํํ ์ ์์ต๋๋ค.
์ ๋ ฅ
์ฒ๋ฆฌ ์์ฒญ์์ ProcessOptions.ocrConfig.advancedOcrOptions์ ["legacy_layout"]๋ก ์ค์ ํ์ฌ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
{
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"processOptions": {
"ocrConfig": {
"advancedOcrOptions": ["legacy_layout"]
}
}
}
ํ์ด์ง ๋ฒ์ ์ง์
๊ธฐ๋ณธ์ ์ผ๋ก OCR์ ๋ฌธ์์ ๋ชจ๋ ํ์ด์ง์์ ํ ์คํธ์ ๋ ์ด์์ ์ ๋ณด๋ฅผ ์ถ์ถํฉ๋๋ค. ํน์ ํ์ด์ง ๋ฒํธ ๋๋ ํ์ด์ง ๋ฒ์๋ฅผ ์ ํํ์ฌ ํด๋น ํ์ด์ง์ ํ ์คํธ๋ง ์ถ์ถํ ์ ์์ต๋๋ค.
ProcessOptions์์ ์ด๋ฅผ ๊ตฌ์ฑํ๋ ๋ฐฉ๋ฒ์ ์ธ ๊ฐ์ง์
๋๋ค.
- ๋ ๋ฒ์งธ ํ์ด์ง์ ๋ค์ฏ ๋ฒ์งธ ํ์ด์ง๋ง ์ฒ๋ฆฌํ๋ ค๋ฉด ๋ค์์ ์คํํฉ๋๋ค.
{
"individualPageSelector": {"pages": [2, 5]}
}
- ์ฒ์ ์ธ ํ์ด์ง๋ฅผ ์ฒ๋ฆฌํ๋ ค๋ฉด ๋ค์์ ์คํํฉ๋๋ค.
{
"fromStart": 3
}
- ๋ง์ง๋ง 4ํ์ด์ง๋ง ์ฒ๋ฆฌํ๋ ค๋ฉด ๋ค์์ ์คํํฉ๋๋ค.
{
"fromEnd": 4
}
๋๋ต์์ ๊ฐ Document.pages[].pageNumber์ ์์ฒญ์ ์ง์ ๋ ๋์ผํ ํ์ด์ง์ ํด๋นํฉ๋๋ค.
OCR ๋ถ๊ฐ๊ธฐ๋ฅ ์ฌ์ฉ
์ด๋ฌํ Enterprise Document OCR ์ ํ์ ๋ถ์ ๊ธฐ๋ฅ์ ํ์์ ๋ฐ๋ผ ๊ฐ๋ณ ์ฒ๋ฆฌ ์์ฒญ์์ ์ฌ์ฉ ์ค์ ํ ์ ์์ต๋๋ค.
์ํ OCR
Math OCR์ ๊ฒฝ๊ณ ์์ ์ขํ์ ํจ๊ป LaTeX์ผ๋ก ํํ๋ ์ํ ๋ฐฉ์ ์๊ณผ ๊ฐ์ ๊ณต์์ ๊ฐ์ง, ์ธ์, ์ถ์ถํฉ๋๋ค.
๋ค์์ LaTeX ํํ์ ์์ ๋๋ค.
์ด๋ฏธ์ง ๊ฐ์ง๋จ

LaTeX๋ก ๋ณํ

์ ๋ ฅ
์ฒ๋ฆฌ ์์ฒญ์์ ProcessOptions.ocrConfig.premiumFeatures.enableMathOcr์ true๋ก ์ค์ ํ์ฌ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
{
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"processOptions": {
"ocrConfig": {
"premiumFeatures": {
"enableMathOcr": true
}
}
}
}
์ถ๋ ฅ
์ํ OCR ์ถ๋ ฅ์ "type": "math_formula"์ ํจ๊ป Document.pages[].visualElements[]์ ํ์๋ฉ๋๋ค.

"visualElements": [
{
"layout": {
"textAnchor": {
"textSegments": [
{
"endIndex": "46"
}
]
},
"confidence": 1,
"boundingPoly": {
"normalizedVertices": [
{
"x": 0.14662756,
"y": 0.27891156
},
{
"x": 0.9032258,
"y": 0.27891156
},
{
"x": 0.9032258,
"y": 0.8027211
},
{
"x": 0.14662756,
"y": 0.8027211
}
]
},
"orientation": "PAGE_UP"
},
"type": "math_formula"
}
]
์ด ๋งํฌ์์ ์ ์ฒด Document JSON ์ถ๋ ฅ์ ํ์ธํ ์ ์์ต๋๋ค .
์ ํ ํ์ ์ถ์ถ
์ฌ์ฉ ์ค์ ๋ ๊ฒฝ์ฐ ๋ชจ๋ธ์ ๊ฒฝ๊ณ ์์ ์ขํ์ ํจ๊ป ๋ฌธ์์ ๋ชจ๋ ์ฒดํฌ๋ฐ์ค์ ๋ผ๋์ค ๋ฒํผ์ ์ถ์ถํ๋ ค๊ณ ์๋ํฉ๋๋ค.
์ ๋ ฅ
์ฒ๋ฆฌ ์์ฒญ์์ ProcessOptions.ocrConfig.premiumFeatures.enableSelectionMarkDetection์ true๋ก ์ค์ ํ์ฌ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
{
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"processOptions": {
"ocrConfig": {
"premiumFeatures": {
"enableSelectionMarkDetection": true
}
}
}
}
์ถ๋ ฅ
์ฒดํฌ๋ฐ์ค ์ถ๋ ฅ์ "type": "unfilled_checkbox" ๋๋ "type": "filled_checkbox"์ ํจ๊ป Document.pages[].visualElements[]์ ํ์๋ฉ๋๋ค.

"visualElements": [
{
"layout": {
"confidence": 0.89363575,
"boundingPoly": {
"vertices": [
{
"x": 11,
"y": 24
},
{
"x": 37,
"y": 24
},
{
"x": 37,
"y": 56
},
{
"x": 11,
"y": 56
}
],
"normalizedVertices": [
{
"x": 0.017488075,
"y": 0.38709676
},
{
"x": 0.05882353,
"y": 0.38709676
},
{
"x": 0.05882353,
"y": 0.9032258
},
{
"x": 0.017488075,
"y": 0.9032258
}
]
}
},
"type": "unfilled_checkbox"
},
{
"layout": {
"confidence": 0.9148201,
"boundingPoly": ...
},
"type": "filled_checkbox"
}
],
์ด ๋งํฌ์์ ์ ์ฒด Document JSON ์ถ๋ ฅ์ ํ์ธํ ์ ์์ต๋๋ค .
๊ธ๊ผด ์คํ์ผ ๊ฐ์ง
๊ธ๊ผด ์คํ์ผ ๊ฐ์ง๊ฐ ์ฌ์ฉ ์ค์ ๋ ๊ฒฝ์ฐ Enterprise Document OCR์ ๊ธ๊ผด ์์ฑ์ ์ถ์ถํ๋ฉฐ, ์ด๋ ๋ ๋์ ํ์ฒ๋ฆฌ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
ํ ํฐ (๋จ์ด) ์์ค์์๋ ๋ค์ ์์ฑ์ด ๊ฐ์ง๋ฉ๋๋ค.
- ํ๊ธฐ ๊ฐ์ง
- ๊ธ๊ผด ์คํ์ผ
- ๊ธ๊ผด ํฌ๊ธฐ
- ๊ธ๊ผด ์ ํ
- ๊ธ๊ผด ์์
- ๊ธ๊ผด ๋๊ป
- ๋ฌธ์ ๊ฐ๊ฒฉ
- ๊ตต๊ฒ
- ๊ธฐ์ธ์๊ผด
- ๋ฐ์ค ํ์
- ํ ์คํธ ์์ (RGBa)
๋ฐฐ๊ฒฝ ์์ (RGBa)
์ ๋ ฅ
์ฒ๋ฆฌ ์์ฒญ์์ ProcessOptions.ocrConfig.premiumFeatures.computeStyleInfo์ true๋ก ์ค์ ํ์ฌ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
{
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"processOptions": {
"ocrConfig": {
"premiumFeatures": {
"computeStyleInfo": true
}
}
}
}
์ถ๋ ฅ
๊ธ๊ผด ์คํ์ผ ์ถ๋ ฅ์ StyleInfo ์ ํ์ Document.pages[].tokens[].styleInfo์ ํ์๋ฉ๋๋ค.

"tokens": [
{
"styleInfo": {
"fontSize": 3,
"pixelFontSize": 13,
"fontType": "SANS_SERIF",
"bold": true,
"fontWeight": 564,
"textColor": {
"red": 0.16862746,
"green": 0.16862746,
"blue": 0.16862746
},
"backgroundColor": {
"red": 0.98039216,
"green": 0.9882353,
"blue": 0.99215686
}
}
},
...
]
์ด ๋งํฌ์์ ์ ์ฒด Document JSON ์ถ๋ ฅ์ ํ์ธํ ์ ์์ต๋๋ค .
๋ฌธ์ ๊ฐ์ฒด๋ฅผ Vision AI API ํ์์ผ๋ก ๋ณํ
Document AI ๋๊ตฌ ์์์๋ Document AI API Document ํ์์ Vision AI AnnotateFileResponse ํ์์ผ๋ก ๋ณํํ๋ ๋๊ตฌ๊ฐ ํฌํจ๋์ด ์์ด ์ฌ์ฉ์๊ฐ ๋ฌธ์ OCR ํ๋ก์ธ์์ Vision AI API ๊ฐ์ ์๋ต์ ๋น๊ตํ ์ ์์ต๋๋ค. ๋ค์์ ์ํ ์ฝ๋์
๋๋ค.
Vision AI API ์๋ต๊ณผ Document AI API ์๋ต ๋ฐ ๋ณํ๊ธฐ ๊ฐ์ ์๋ ค์ง ๋ถ์ผ์น:
- Vision AI API ์๋ต์ ์ด๋ฏธ์ง ์์ฒญ์ ๊ฒฝ์ฐ
vertices๋ง ์ฑ์ฐ๊ณ PDF ์์ฒญ์ ๊ฒฝ์ฐnormalized_vertices๋ง ์ฑ์๋๋ค. Document AI ์๋ต๊ณผ ๋ณํ๊ธฐ๋vertices์normalized_vertices๋ฅผ ๋ชจ๋ ์ฑ์๋๋ค. - Vision AI API ์๋ต์ ๋จ์ด์ ๋ง์ง๋ง ๊ธฐํธ์
detected_break๋ฅผ ์ฑ์๋๋ค. Document AI API ์๋ต๊ณผ ๋ณํ๊ธฐ๋ ๋จ์ด์ ๋จ์ด์ ๋ง์ง๋ง ๊ธฐํธ์detected_break๋ฅผ ์ฑ์๋๋ค. - Vision AI API ์๋ต์ ํญ์ ๊ธฐํธ ํ๋๋ฅผ ์ฑ์๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก Document AI ์๋ต์ ๊ธฐํธ ํ๋๋ฅผ ์ฑ์ฐ์ง ์์ต๋๋ค. Document AI ์๋ต๊ณผ ๋ณํ๊ธฐ์ ๊ธฐํธ ํ๋๊ฐ ์ฑ์์ง๋๋ก ํ๋ ค๋ฉด
enable_symbol๊ธฐ๋ฅ์ ์์ธํ ์ค์ ํ์ธ์.
์ฝ๋ ์ํ
๋ค์ ์ฝ๋ ์ํ์ OCR ๊ตฌ์ฑ ๋ฐ ๋ถ๊ฐ๊ธฐ๋ฅ์ ์ฌ์ฉ ์ค์ ํ๋ ์ฒ๋ฆฌ ์์ฒญ์ ์ ์กํ ๋ค์ ํ๋๋ฅผ ์ฝ๊ณ ํฐ๋ฏธ๋์ ์ถ๋ ฅํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค.
REST
์์ฒญ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ค์์ ๋ฐ๊ฟ๋๋ค.
- LOCATION: ํ๋ก์ธ์์ ์์น์
๋๋ค(์:
- ).
us- ๋ฏธ๊ตญeu- ์ ๋ฝ ์ฐํฉ
- PROJECT_ID: Google Cloud ํ๋ก์ ํธ ID์ ๋๋ค.
- PROCESSOR_ID: ์ปค์คํ ํ๋ก์ธ์์ ID์ ๋๋ค.
- PROCESSOR_VERSION: ํ๋ก์ธ์ ๋ฒ์ ์๋ณ์์
๋๋ค. ์์ธํ ๋ด์ฉ์ ํ๋ก์ธ์ ๋ฒ์ ์ ํ์ ์ฐธ๊ณ ํ์ธ์. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
pretrained-TYPE-vX.X-YYYY-MM-DDstablerc
- skipHumanReview: ์ฌ๋์ ๊ฒํ ๋ฅผ ์ฌ์ฉ ์ค์งํ๋ ๋ถ๋ฆฌ์ธ์
๋๋ค (์ธ๊ฐ ์ฐธ์ฌํ ํ๋ก์ธ์์์๋ง ์ง์๋จ).
true- ์ฌ๋์ ๊ฒํ ๋ฅผ ๊ฑด๋๋๋๋ค.false- ์๋ ๊ฒํ ๋ฅผ ์ฌ์ฉ ์ค์ ํฉ๋๋ค (๊ธฐ๋ณธ๊ฐ).
- MIME_TYPEโ : ์ ํจํ MIME ์ ํ ์ต์ ์ค ํ๋์ ๋๋ค.
- IMAGE_CONTENTโ : ์ ํจํ ์ธ๋ผ์ธ ๋ฌธ์ ์ฝํ
์ธ ์ค ํ๋๋ก, ๋ฐ์ดํธ ์คํธ๋ฆผ์ผ๋ก ํ์๋ฉ๋๋ค. JSON ํํ์ ๊ฒฝ์ฐ ๋ฐ์ด๋๋ฆฌ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ base64 ์ธ์ฝ๋ฉ (ASCII ๋ฌธ์์ด)์
๋๋ค. ์ด ๋ฌธ์์ด์ ๋ค์ ๋ฌธ์์ด๊ณผ ๋น์ทํด์ผ ํฉ๋๋ค.
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
- FIELD_MASK:
Document์ถ๋ ฅ์ ํฌํจํ ํ๋๋ฅผ ์ง์ ํฉ๋๋ค.FieldMaskํ์์ ์ ๊ทํ๋ ํ๋ ์ด๋ฆ์ ์ผํ๋ก ๊ตฌ๋ถ๋ ๋ชฉ๋ก์ ๋๋ค.- ์:
text,entities,pages.pageNumber
- ์:
- OCR ๊ตฌ์ฑ
- ENABLE_NATIVE_PDF_PARSING: (๋ถ๋ฆฌ์ธ) ์ฌ์ฉ ๊ฐ๋ฅํ ๊ฒฝ์ฐ PDF์์ ์ฝ์ ๋ ํ ์คํธ๋ฅผ ์ถ์ถํฉ๋๋ค.
- ENABLE_IMAGE_QUALITY_SCORES: (๋ถ๋ฆฌ์ธ) ์ง๋ฅํ ๋ฌธ์ ํ์ง ์ ์๋ฅผ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
- ENABLE_SYMBOL: (๋ถ๋ฆฌ์ธ) ๊ธฐํธ (๊ธ์) OCR ์ ๋ณด๋ฅผ ํฌํจํฉ๋๋ค.
- DISABLE_CHARACTER_BOXES_DETECTION: (๋ถ๋ฆฌ์ธ) OCR ์์ง์์ ๋ฌธ์ ์์ ๊ฐ์ง๊ธฐ๋ฅผ ์ฌ์ฉ ์ค์งํฉ๋๋ค.
- LANGUAGE_HINTS: OCR์ ์ฌ์ฉํ BCP-47 ์ธ์ด ์ฝ๋ ๋ชฉ๋ก์ ๋๋ค.
- ADVANCED_OCR_OPTIONS: OCR ๋์์ ์ถ๊ฐ๋ก ๋ฏธ์ธ ์กฐ์ ํ๊ธฐ ์ํ ๊ณ ๊ธ OCR ์ต์
๋ชฉ๋ก์
๋๋ค. ํ์ฌ ์ ํจํ ๊ฐ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
legacy_layout: ํ์ฌ ML ๊ธฐ๋ฐ ๋ ์ด์์ ๊ฐ์ง ์๊ณ ๋ฆฌ์ฆ์ ๋์์ผ๋ก ์ฌ์ฉ๋๋ ํด๋ฆฌ์คํฑ ๋ ์ด์์ ๊ฐ์ง ์๊ณ ๋ฆฌ์ฆ
- Premium OCR ๋ถ๊ฐ๊ธฐ๋ฅ
- ENABLE_SELECTION_MARK_DETECTION: (๋ถ๋ฆฌ์ธ) OCR ์์ง์์ ์ ํ ํ์ ์ธ์๊ธฐ๋ฅผ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
- COMPUTE_STYLE_INFO (๋ถ๋ฆฌ์ธ) ๊ธ๊ผด ์๋ณ ๋ชจ๋ธ์ ์ฌ์ฉ ์ค์ ํ๊ณ ๊ธ๊ผด ์คํ์ผ ์ ๋ณด๋ฅผ ๋ฐํํฉ๋๋ค.
- ENABLE_MATH_OCR: (๋ถ๋ฆฌ์ธ) LaTeX ์ํ ๊ณต์์ ์ถ์ถํ ์ ์๋ ๋ชจ๋ธ์ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
- INDIVIDUAL_PAGES: ์ฒ๋ฆฌํ ๊ฐ๋ณ ํ์ด์ง ๋ชฉ๋ก์ ๋๋ค.
โ ์ด ์ฝํ
์ธ ๋ inlineDocument ๊ฐ์ฒด์์ base64๋ก ์ธ์ฝ๋ฉ๋ ์ฝํ
์ธ ๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ ํ ์๋ ์์ต๋๋ค.
HTTP ๋ฉ์๋ ๋ฐ URL:
POST https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process
JSON ์์ฒญ ๋ณธ๋ฌธ:
{
"skipHumanReview": skipHumanReview,
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"fieldMask": "FIELD_MASK",
"processOptions": {
"ocrConfig": {
"enableNativePdfParsing": ENABLE_NATIVE_PDF_PARSING,
"enableImageQualityScores": ENABLE_IMAGE_QUALITY_SCORES,
"enableSymbol": ENABLE_SYMBOL,
"disableCharacterBoxesDetection": DISABLE_CHARACTER_BOXES_DETECTION,
"hints": {
"languageHints": [
"LANGUAGE_HINTS"
]
},
"advancedOcrOptions": ["ADVANCED_OCR_OPTIONS"],
"premiumFeatures": {
"enableSelectionMarkDetection": ENABLE_SELECTION_MARK_DETECTION,
"computeStyleInfo": COMPUTE_STYLE_INFO,
"enableMathOcr": ENABLE_MATH_OCR,
}
},
"individualPageSelector" {
"pages": [INDIVIDUAL_PAGES]
}
}
}
์์ฒญ์ ๋ณด๋ด๋ ค๋ฉด ๋ค์ ์ต์ ์ค ํ๋๋ฅผ ์ ํํฉ๋๋ค.
curl
์์ฒญ ๋ณธ๋ฌธ์ request.json ํ์ผ์ ์ ์ฅํ๊ณ ๋ค์ ๋ช
๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process"
PowerShell
์์ฒญ ๋ณธ๋ฌธ์ request.json ํ์ผ์ ์ ์ฅํ๊ณ ๋ค์ ๋ช
๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process" | Select-Object -Expand Content
์์ฒญ์ด ์ฑ๊ณตํ๋ฉด ์๋ฒ๊ฐ 200 OK HTTP ์ํ ์ฝ๋์ ์๋ต์ JSON ํ์์ผ๋ก ๋ฐํํฉ๋๋ค. ์๋ต ๋ณธ๋ฌธ์๋ Document ์ธ์คํด์ค๊ฐ ํฌํจ๋ฉ๋๋ค.
Python
์์ธํ ๋ด์ฉ์ Document AI Python API ์ฐธ์กฐ ๋ฌธ์๋ฅผ ์ฐธ๊ณ ํ์ธ์.
Document AI์ ์ธ์ฆํ๋ ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ณธ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ค์ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ธ์ฆ ์ค์ ์ ์ฐธ์กฐํ์ธ์.
๋ค์ ๋จ๊ณ
- ํ๋ก์ธ์ ๋ชฉ๋ก์ ๊ฒํ ํฉ๋๋ค.
- Layout Parser๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌธ์๋ฅผ ์ฝ์ ์ ์๋ ์ฒญํฌ๋ก ๋ถ๋ฆฌํฉ๋๋ค.
- ๋ง์ถค ๋ถ๋ฅ๊ธฐ๋ฅผ ๋ง๋ญ๋๋ค.