1. परिचय
डॉक्यूमेंट एआई एक ऐसा टूल है जिसकी मदद से दस्तावेज़ों को समझने में मदद मिलती है. इसमें दस्तावेज़, ईमेल वगैरह जैसे स्ट्रक्चर्ड डेटा का इस्तेमाल किया जाता है. यह डेटा को समझने, उसका विश्लेषण करने, और उसका इस्तेमाल करने में आसान बनाता है.
Document AI Workbench की मदद से, दस्तावेज़ को प्रोसेस करने की प्रोसेस को ज़्यादा सटीक बनाया जा सकता है. इसके लिए, आपको अपने ट्रेनिंग डेटा का इस्तेमाल करके पूरी तरह से कस्टमाइज़ किए गए मॉडल बनाने होंगे.
इस लैब में, आपको कस्टम दस्तावेज़ एक्सट्रैक्शन प्रोसेसर बनाने, डेटासेट इंपोर्ट करने, दस्तावेज़ों के उदाहरण को लेबल करने, और प्रोसेसर को ट्रेनिंग देने का काम करना होगा.
इस लैब में इस्तेमाल किया जाने वाला दस्तावेज़ का डेटासेट, Kaggle पर मौजूद नकली W-2 (यूएस टैक्स फ़ॉर्म) डेटासेट से लिया गया है. इस डेटासेट को CC0: पब्लिक डोमेन लाइसेंस के साथ तैयार किया गया है.
ज़रूरी शर्तें
यह कोडलैब, अन्य दस्तावेज़ एआई कोडलैब में मौजूद कॉन्टेंट के आधार पर बनता है.
हमारा सुझाव है कि आगे बढ़ने से पहले, यहां दिए गए कोडलैब (कोड बनाना सीखना) पूरा करें.
- दस्तावेज़ एआई (Python) की मदद से ऑप्टिकल कैरेक्टर रिकग्निशन (ओसीआर) की सुविधा
- दस्तावेज़ एआई (Python) की मदद से फ़ॉर्म पार्स करना
- दस्तावेज़ एआई (Python) वाले खास प्रोसेसर
- Python की मदद से, दस्तावेज़ के एआई प्रोसेसर को मैनेज करना
- दस्तावेज़ एआई: ह्यूमन इन द लूप
- दस्तावेज़ एआई: अपट्रेनिंग
आपको इनके बारे में जानकारी मिलेगी
- कस्टम दस्तावेज़ एक्सट्रैक्टर प्रोसेसर बनाएं.
- एनोटेशन टूल का इस्तेमाल करके, दस्तावेज़ के लिए एआई ट्रेनिंग के डेटा को लेबल करें.
- नए मॉडल वर्शन को ट्रेनिंग दें.
- आकलन करें कि मॉडल के नए वर्शन कितना सटीक है.
आपको इन चीज़ों की ज़रूरत होगी
2. सेट अप किया जा रहा है
कोडलैब के इस टूल में यह माना जाता है कि आपने कोडलैब के बारे में शुरुआती जानकारी में दिए गए, दस्तावेज़ के एआई को सेटअप करने के सभी चरणों को पूरा कर लिया है.
आगे बढ़ने से पहले, कृपया नीचे दिए गए चरणों को पूरा करें:
3. प्रोसेसर बनाना
इस लैब के लिए इस्तेमाल करने से पहले, आपको कस्टम दस्तावेज़ एक्सट्रैक्टर प्रोसेसर बनाना होगा.
- कंसोल में, दस्तावेज़ के एआई से जुड़ी खास जानकारी पेज पर जाएं.
- कस्टम प्रोसेसर बनाएं पर क्लिक करें और कस्टम दस्तावेज़ एक्सट्रैक्टर चुनें.
- इसे
codelab-custom-extractor
नाम दें (या कुछ और जो आपको याद रहेगा) और सूची में अपना सबसे नज़दीकी इलाका चुनें.
- अपना प्रोसेसर बनाने के लिए, बनाएं पर क्लिक करें. इसके बाद, आपको प्रोसेसर की खास जानकारी देने वाला पेज दिखेगा.
4. डेटासेट बनाना
अपने प्रोसेसर को ट्रेनिंग देने के लिए, हमें ट्रेनिंग और टेस्टिंग डेटा के साथ एक डेटासेट बनाना होगा. इससे प्रोसेसर को उन इकाइयों की पहचान करने में मदद मिलेगी जिन्हें हम एक्सट्रैक्ट करना चाहते हैं.
- प्रोसेसर की खास जानकारी देने वाले पेज पर, अपना डेटासेट कॉन्फ़िगर करें पर क्लिक करें.
- अब आपको डेटासेट कॉन्फ़िगर करें पेज पर होना चाहिए. अगर आपको ट्रेनिंग के दस्तावेज़ और लेबल सेव करने के लिए अपना बकेट तय करना है, तो बेहतर विकल्प दिखाएं पर क्लिक करें. अगर ऐसा नहीं है, तो जारी रखें पर क्लिक करें.
- डेटासेट बनने तक इंतज़ार करें. इसके बाद, आपको ट्रेनिंग पेज पर रीडायरेक्ट कर दिया जाएगा.
5. टेस्ट दस्तावेज़ इंपोर्ट करें
अब अपने डेटासेट में W2 pdf का एक सैंपल इंपोर्ट करते हैं.
- दस्तावेज़ इंपोर्ट करें पर क्लिक करें
- हमारे पास इस लैब में इस्तेमाल करने के लिए एक सैंपल PDF है. नीचे दिए गए लिंक को कॉपी करके सोर्स पाथ बॉक्स में चिपकाएं. "डेटा का बंटवारा" रहने दें "असाइन नहीं किया गया" के तौर पर मार्क करें अभी के लिए. दूसरे सभी बॉक्स पर सही का निशान न लगाएं. इंपोर्ट करें पर क्लिक करें.
cloud-samples-data/documentai/codelabs/custom/extractor/pdfs
- दस्तावेज़ इंपोर्ट होने का इंतज़ार करें. इसमें एक मिनट से भी कम समय लगेगा.
- इंपोर्ट पूरा होने के बाद, आपको ट्रेनिंग पेज पर दस्तावेज़ दिखेगा.
6. लेबल बनाएं
हम एक नया प्रोसेसर टाइप बना रहे हैं. इसलिए, हमें दस्तावेज़ एआई (AI) को यह बताने के लिए कस्टम लेबल बनाने होंगे कि हमें किन फ़ील्ड को एक्सट्रैक्ट करना है.
- सबसे नीचे बाएं कोने में, स्कीमा में बदलाव करें पर क्लिक करें.
- अब आप स्कीमा मैनेजमेंट कंसोल में पहुंच जाएंगे.
- लेबल बनाएं बटन का इस्तेमाल करके ये लेबल बनाएं.
नाम | डेटा किस तरह का है | दोहराव |
| नंबर | एक से ज़्यादा वैल्यू असाइन करना ज़रूरी है |
| सादा टेक्स्ट | एक से ज़्यादा वैल्यू असाइन करना ज़रूरी है |
| सादा टेक्स्ट | एक से ज़्यादा वैल्यू असाइन करना ज़रूरी है |
| पता | एक से ज़्यादा वैल्यू असाइन करना ज़रूरी है |
| पैसे | एक से ज़्यादा वैल्यू असाइन करना ज़रूरी है |
| पैसे | एक से ज़्यादा वैल्यू असाइन करना ज़रूरी है |
| पैसे | एक से ज़्यादा वैल्यू असाइन करना ज़रूरी है |
| पैसे | एक से ज़्यादा वैल्यू असाइन करना ज़रूरी है |
- पूरा होने पर कंसोल ऐसा दिखना चाहिए. काम पूरा हो जाने के बाद सेव करें पर क्लिक करें.
- ट्रेनिंग पेज पर वापस जाने के लिए, बैक ऐरो पर क्लिक करें. ध्यान दें कि हमने जो लेबल बनाए हैं वे नीचे बाएं कोने में दिखते हैं.
7. टेस्ट दस्तावेज़ को लेबल करें
इसके बाद, हम उन इकाइयों के टेक्स्ट एलिमेंट और लेबल की पहचान करेंगे जिन्हें एक्सट्रैक्ट करना है. इन लेबल का इस्तेमाल, हमारे मॉडल को दस्तावेज़ के इस खास स्ट्रक्चर को पार्स करने और सही टाइप की पहचान करने के लिए किया जाएगा.
- लेबलिंग कंसोल में जाने के लिए, उस दस्तावेज़ पर दो बार क्लिक करें जिसे हमने इंपोर्ट किया है. यह कुछ ऐसा नज़र आना चाहिए.
- "बाउंडिंग बॉक्स" पर क्लिक करें टूल का इस्तेमाल करें, फिर "1173038" टेक्स्ट को हाइलाइट करें और
CONTROL_NUMBER
लेबल असाइन करें. लेबल के नाम खोजने के लिए, टेक्स्ट फ़िल्टर का इस्तेमाल किया जा सकता है.
CONTROL_NUMBER
के दूसरे इंस्टेंस के लिए पूरा करें. लेबल किए जाने के बाद, यह ऐसा दिखना चाहिए.
- नीचे दी गई टेक्स्ट वैल्यू के सभी इंस्टेंस हाइलाइट करें और सही लेबल असाइन करें.
लेबल का नाम | टेक्स्ट |
| 24-3188810 |
| 19127.2 |
| 5093.71 |
| 66584.46 |
| 56,081.18 |
| 714-32-2105 |
| ऐडम्स, चेज़ ऐंड गिल्बर्ट इंक 972 गोंज़ालेज़ डैम साउथ कैथरीन NC 95869-5178 |
- पूरा होने पर, लेबल किया गया दस्तावेज़ कुछ ऐसा दिखना चाहिए. ध्यान दें, दस्तावेज़ में बाउंडिंग बॉक्स या बाईं ओर मौजूद मेन्यू में लेबल के नाम/वैल्यू पर क्लिक करके, इन लेबल में बदलाव किए जा सकते हैं. लेबल करना पूरा करने के बाद, 'लेबल किया गया' के तौर पर मार्क करें पर क्लिक करें. इसके बाद, डेटासेट मैनेजमेंट कंसोल पर वापस जाएं.
8. ट्रेनिंग सेट में दस्तावेज़ असाइन करें
अब आपको डेटासेट मैनेजमेंट कंसोल पर वापस जाना होगा. ध्यान दें कि लेबल किए गए और बिना लेबल वाले दस्तावेज़ों की संख्या और हर लेबल के लिए इंस्टेंस की संख्या बदल गई है.
- हमें इस दस्तावेज़ को या तो "प्रशिक्षण" को असाइन करना होगा या "जांच करें" सेट. दस्तावेज़ पर क्लिक करें, सेट के लिए असाइन करें पर क्लिक करें, फिर ट्रेनिंग पर क्लिक करें.
- ध्यान दें कि डेटा विभाजन के आंकड़े बदल गए हैं.
9. पहले से लेबल किया गया डेटा इंपोर्ट करें
डॉक्यूमेंट एआई कस्टम प्रोसेसर के लिए, ट्रेनिंग और टेस्ट सेट, दोनों में कम से कम 10 दस्तावेज़ होने चाहिए. साथ ही, हर सेट में हर लेबल के 10 इंस्टेंस होने चाहिए.
हमारा सुझाव है कि हर सेट में कम से कम 50 दस्तावेज़ होने चाहिए. साथ ही, सबसे अच्छी परफ़ॉर्मेंस के लिए, हर लेबल में 50 दस्तावेज़ होने चाहिए. आम तौर पर, ट्रेनिंग से जुड़ा ज़्यादा डेटा मिलने पर ज़्यादा सटीक जानकारी मिलती है.
सभी दस्तावेज़ों को मैन्युअल रूप से लेबल करने में बहुत ज़्यादा समय लगेगा, इसलिए हमारे पास पहले से लेबल किए गए कुछ दस्तावेज़ हैं जिन्हें आप इस लैब के लिए इंपोर्ट कर सकते हैं.
पहले से लेबल की गई दस्तावेज़ की फ़ाइलों को Document.json
फ़ॉर्मैट में इंपोर्ट किया जा सकता है. प्रोसेसर को कॉल करने और Human in the Loop (HITL) का इस्तेमाल करके, पुष्टि करने की प्रोसेस के सटीक होने की पुष्टि करने के नतीजे हो सकते हैं.
साइड नेगेटिव
ध्यान दें: पहले से लेबल किए गए डेटा को इंपोर्ट करते समय, किसी मॉडल को ट्रेनिंग देने से पहले, एनोटेशन की मैन्युअल तौर पर समीक्षा करने का सुझाव दिया जाता है.
- दस्तावेज़ इंपोर्ट करें पर क्लिक करें.
- Cloud Storage के नीचे दिए गए पाथ को कॉपी करें/चिपकाएं और उसे ट्रेनिंग सेट को असाइन करें.
cloud-samples-data/documentai/codelabs/custom/extractor/training
- एक और फ़ोल्डर जोड़ें पर क्लिक करें. इसके बाद, नीचे दिए गए Cloud Storage पाथ को कॉपी करें/चिपकाएं और उसे टेस्ट के सेट में असाइन करें.
cloud-samples-data/documentai/codelabs/custom/extractor/test
- इंपोर्ट करें पर क्लिक करें और दस्तावेज़ों के इंपोर्ट होने का इंतज़ार करें. इसमें पिछली बार की तुलना में ज़्यादा समय लगेगा, क्योंकि अभी प्रोसेस करने के लिए काफ़ी दस्तावेज़ हैं. इसमें करीब छह मिनट लगेंगे. आप इस पेज से बाहर निकलकर, बाद में वापस इस पेज पर आ सकते हैं.
- प्रक्रिया पूरी होने के बाद, आपको ट्रेनिंग पेज पर दस्तावेज़ दिखेंगे.
10. मॉडल को ट्रेनिंग दें
अब हम कस्टम दस्तावेज़ एक्सट्रैक्ट करने वाले टूल की ट्रेनिंग शुरू करने के लिए तैयार हैं.
- ट्रेन के नए वर्शन को ट्रेनिंग दें पर क्लिक करें
- अपने वर्शन को एक नाम दें जिसे आप याद रखें, जैसे कि
codelab-custom-1
. "ट्रेनिंग के तरीके" के लिए, "शुरुआत से ट्रेनिंग करें" चुनें.
- (ज़रूरी नहीं) अपने डेटासेट में लेबल से जुड़ी मेट्रिक देखने के लिए, लेबल के आंकड़े देखें भी चुना जा सकता है.
- ट्रेनिंग शुरू करने के लिए, ट्रेनिंग शुरू करें पर क्लिक करें. आपको डेटासेट मैनेजमेंट पेज पर रीडायरेक्ट किया जाएगा. दाईं ओर, ट्रेनिंग की स्थिति देखी जा सकती है. ट्रेनिंग पूरी होने में कुछ घंटे लगेंगे. इस पेज को छोड़ा जा सकता है और बाद में इस पर वापस आया जा सकता है.
- वर्शन के नाम पर क्लिक करने पर, आपको वर्शन मैनेज करें पेज पर ले जाया जाएगा. इस पेज पर, वर्शन आईडी और ट्रेनिंग जॉब की मौजूदा स्थिति दिखती है.
11. नए मॉडल वर्शन का परीक्षण करें
ट्रेनिंग जॉब पूरा होने के बाद (मेरे टेस्ट में करीब एक घंटा लगा), अब मॉडल के नए वर्शन को टेस्ट किया जा सकता है. साथ ही, इसका इस्तेमाल अनुमान लगाने के लिए किया जा सकता है.
- वर्शन मैनेज करें पेज पर जाएं. यहां आप मौजूदा स्टेटस और F1 स्कोर देख सकते हैं.
- इस मॉडल वर्शन का इस्तेमाल करने से पहले, हमें इसे डिप्लॉय करना होगा. दाईं ओर मौजूद वर्टिकल बिंदु पर क्लिक करें. इसके बाद, वर्शन डिप्लॉय करें को चुनें.
- वर्शन के डिप्लॉय होने का इंतज़ार करते समय, पॉप-अप विंडो से डिप्लॉय करें चुनें. इस प्रोसेस को पूरा होने में कुछ मिनट लगेंगे. डिप्लॉय किए जाने के बाद, इस वर्शन को डिफ़ॉल्ट वर्शन के तौर पर भी सेट किया जा सकता है.
- डिप्लॉयमेंट पूरा होने के बाद, आकलन करें टैब पर जाएं. इस पेज पर, आकलन की मेट्रिक देखी जा सकती हैं. इसमें, पूरे दस्तावेज़ और अलग-अलग लेबल के लिए, F1 स्कोर, सटीक, और रीकॉल शामिल हैं. AutoML दस्तावेज़ में इन मेट्रिक के बारे में ज़्यादा जानकारी देखी जा सकती है.
- नीचे लिंक की गई PDF फ़ाइल डाउनलोड करें. यह W2 का एक नमूना है, जो ट्रेनिंग या टेस्ट सेट में शामिल नहीं किया गया था.
- टेस्ट दस्तावेज़ अपलोड करें पर क्लिक करें और PDF फ़ाइल चुनें.
- निकाली गई इकाइयां कुछ ऐसी दिखनी चाहिए.
12. ज़रूरी नहीं: इंपोर्ट किए गए नए दस्तावेज़ों को अपने-आप लेबल करें
प्रोसेसर के एक प्रशिक्षित वर्शन को डिप्लॉय करने के बाद, नए दस्तावेज़ों को इंपोर्ट करते समय लेबल करने में लगने वाला समय बचाने के लिए, अपने-आप लेबल होने की सुविधा का इस्तेमाल किया जा सकता है.
- ट्रेन पेज पर, दस्तावेज़ इंपोर्ट करें पर क्लिक करें.
- निम्न पथ को कॉपी करें और चिपकाएं. इस डायरेक्ट्री में पांच बिना लेबल वाले W2 PDF फ़ाइल हैं. डेटा के बंटवारे की ड्रॉपडाउन सूची से ट्रेनिंग चुनें.
cloud-samples-data/documentai/Custom/W2/AutoLabel
- अपने-आप लेबल होना सेक्शन में, अपने-आप लेबल होने की सुविधा के साथ इंपोर्ट करें चेकबॉक्स चुनें.
- दस्तावेज़ों को लेबल करने के लिए, प्रोसेसर का कोई मौजूदा वर्शन चुनें.
- उदाहरण के लिए:
2af620b2fd4d1fcf
- इंपोर्ट करें पर क्लिक करें और दस्तावेज़ों के इंपोर्ट होने का इंतज़ार करें. इस पेज को छोड़ा जा सकता है और बाद में इस पर वापस आया जा सकता है.
- प्रक्रिया पूरी होने पर, दस्तावेज़ अपने-आप लेबल हुआ सेक्शन में ट्रेन पेज पर दिखते हैं.
- ट्रेनिंग या जांच के लिए, अपने-आप लेबल होने वाले दस्तावेज़ों को लेबल किए गए के तौर पर मार्क किए बिना इस्तेमाल नहीं किया जा सकता. अपने-आप लेबल हुए दस्तावेज़ देखने के लिए, अपने-आप लेबल हुआ सेक्शन पर जाएं.
- लेबलिंग कंसोल में जाने के लिए पहला दस्तावेज़ चुनें.
- लेबल, बाउंडिंग बॉक्स, और वैल्यू की पुष्टि करके पक्का करें कि वे सही हैं. छूटे हुए सभी वैल्यू को लेबल करें.
- काम पूरा हो जाने पर, लेबल के तौर पर मार्क करें को चुनें.
- अपने-आप लेबल होने वाले हर दस्तावेज़ के लिए, लेबल की पुष्टि करें. इसके बाद, ट्रेनिंग के लिए डेटा का इस्तेमाल करने के लिए, ट्रेन पेज पर वापस जाएं.
13. नतीजा
बधाई हो, आपने कस्टम दस्तावेज़ एक्सट्रैक्टर प्रोसेसर को ट्रेनिंग देने के लिए, दस्तावेज़ एआई (AI) का इस्तेमाल कर लिया है. अब इस प्रोसेसर का इस्तेमाल, दस्तावेज़ों को इस फ़ॉर्मैट में पार्स करने के लिए, किसी खास प्रोसेसर की तरह ही किया जा सकता है.
प्रोसेसिंग रिस्पॉन्स को मैनेज करने का तरीका जानने के लिए, खास प्रोसेसर कोडलैब देखें.
मिटाना
इस ट्यूटोरियल में इस्तेमाल किए गए संसाधनों के लिए, आपके Google Cloud खाते पर लगने वाले शुल्क से बचने के लिए:
- Cloud Console में, संसाधन मैनेज करें पेज पर जाएं.
- प्रोजेक्ट की सूची में, अपना प्रोजेक्ट चुनें. इसके बाद, 'मिटाएं' पर क्लिक करें.
- डायलॉग बॉक्स में, प्रोजेक्ट आईडी टाइप करें. इसके बाद, प्रोजेक्ट मिटाने के लिए 'शट डाउन करें' पर क्लिक करें.
संसाधन
- दस्तावेज़ एआई वर्कबेंच के लिए दस्तावेज़
- दस्तावेज़ों का भविष्य - YouTube प्लेलिस्ट
- दस्तावेज़ एआई से जुड़ा दस्तावेज़
- दस्तावेज़ एआई Python क्लाइंट लाइब्रेरी
- दस्तावेज़ के एआई सैंपल
लाइसेंस
इस काम को क्रिएटिव कॉमंस एट्रिब्यूशन 2.0 जेनरिक लाइसेंस के तहत लाइसेंस मिला है.