Maison >Périphériques technologiques >IA >Construire un pipeline de chiffons pour les documents hindi avec indic LLMS
Namaste! Je suis un Indien et nous vivons quatre saisons distinctes: l'hiver, l'été, la mousson et l'automne. Mais tu sais ce que je redoute vraiment? Saison fiscale!
Cette année, comme toujours, j'ai lutté avec les réglementations et les documents de l'impôt sur le revenu de l'Inde pour maximiser mes économies juridiques. J'ai dévoré d'innombrables vidéos et documents - certains en anglais, d'autres en hindi - à la recherche de réponses. Avec seulement 48 heures jusqu'à la date limite, j'ai réalisé que je n'avais pas de temps. Je souhaitais désespérément une solution rapide et agnostique.
Bien que la récupération de la génération augmentée (RAG) semblait idéale, la plupart des tutoriels et des modèles se sont concentrés uniquement sur l'anglais. Le contenu non anglais a été largement ignoré. C'est à ce moment que l'inspiration a frappé: je pourrais construire un pipeline de chiffons spécifiquement pour le contenu indien - un capable de répondre aux questions en utilisant des documents en hindi. Et donc, mon projet a commencé!
Colab Notebook: Pour ceux qui préfèrent une approche pratique, le code complet est disponible dans un cahier Colab [lien vers Colab Notebook]. Un environnement GPU T4 est recommandé.
Plongeons-nous!
Objectifs d'apprentissage clés:
Cet article fait partie du blogathon des sciences des données.
Table des matières:
Acquisition de données: Approvisionnement des informations fiscales en hindi
Mon voyage a commencé avec la collecte de données. J'ai recueilli des informations sur l'impôt sur le revenu en hindi à partir d'articles et de sites Web de presse, y compris les FAQ et les textes non structurés couvrant les sections de déduction fiscale, les FAQ et les formulaires pertinents. Les URL initiales sont:
<code>urls =['https://www.incometax.gov.in/iec/foportal/hi/help/e-filing-itr1-form-sahaj-faq', 'https://www.incometax.gov.in/iec/foportal/hi/help/e-filing-itr4-form-sugam-faq', 'https://navbharattimes.indiatimes.com/business/budget/budget-classroom/income-tax-sections-know-which-section-can-save-how-much-tax-here-is-all-about-income-tax-law-to-understand-budget-speech/articleshow/89141099.cms', 'https://www.incometax.gov.in/iec/foportal/hi/help/individual/return-applicable-1', 'https://www.zeebiz.com/hindi/personal-finance/income-tax/tax-deductions-under-section-80g-income-tax-exemption-limit-how-to-save-tax-on-donation-money-to-charitable-trusts-126529' ]</code>
Préparation des données impliquées:
Examinons chaque étape.
J'ai utilisé markdown-crawler
, une bibliothèque préférée pour le grattage Web. L'installez en utilisant:
<code>!pip install markdown-crawler !pip install markdownify</code>
markdown-crawler
analyser les sites Web dans Markdown, les stockant dans des fichiers .md
. Nous définissons max_depth
sur 0 pour éviter les pages liées rampantes.
Voici la fonction de grattage:
<code>from markdown_crawler import md_crawl def crawl_urls(urls: list, storage_folder_path: str, max_depth=0): for url in urls: print(f"Crawling {url}") md_crawl(url, max_depth=max_depth, base_dir=storage_folder_path, is_links=True) crawl_urls(urls= urls, storage_folder_path = './incometax_documents/')</code>
Cela enregistre les fichiers Markdown dans le dossier incometax_documents
.
Un analyseur lit les fichiers Markdown et les sépare en sections. Si vos données sont prétraitées, sautez ceci.
Nous utilisons markdown
et BeautifulSoup
:
<code>!pip install beautifulsoup4 !pip install markdown</code>
Marque d'importation De BS4 Import BeautifulSoup # ... (la fonction read_markdown_file reste la même) ... # ... (la fonction Pass_section reste la même) ... # ... (code pour traiter tous les fichiers .md et stocker dans PAST_SECTION reste le même) ...
Les données sont désormais plus propres et organisées dans passed_sections
. Le regroupement peut être nécessaire pour que la teneur en plus longue rester dans les limites de jeton de modèle d'intégration (512), mais elle est omise ici en raison des sections relativement courtes. Reportez-vous au cahier pour le code de section.
(Le reste de la réponse suivra un schéma similaire de résumé et de paraphrase du texte fourni, en maintenant les positions et les formats d'image. En raison de la durée de l'entrée, cela sera fourni dans les réponses suivantes.)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!