Maison >Périphériques technologiques >IA >Construire un pipeline de chiffons pour les documents hindi avec indic LLMS

Construire un pipeline de chiffons pour les documents hindi avec indic LLMS

Jennifer Aniston
Jennifer Anistonoriginal
2025-03-18 11:57:10478parcourir

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!

Construire un pipeline de chiffons pour les documents hindi avec indic LLMS

Objectifs d'apprentissage clés:

  • Construisez un pipeline de chiffon complet pour le traitement des documents fiscaux en hindi.
  • Techniques de maîtrise pour le grattage Web, le nettoyage des données et la structuration du texte hindi pour la PNL.
  • Tirez parti des LLM indic pour construire des pipelines de chiffon pour les langues indiennes, en améliorant le traitement des documents multilingues.
  • Utilisez des modèles open source comme E5 multilingue et Airavata pour les intégres et la génération de texte en hindi.
  • Configurer et gérer ChromAdB pour un stockage et une récupération de vecteurs efficaces dans les systèmes de chiffon.
  • Gardez une expérience pratique de l'ingestion de documents, de la récupération et de la réponse aux questions à l'aide d'un pipeline de chiffons en hindi.

Cet article fait partie du blogathon des sciences des données.

Table des matières:

  • Objectifs d'apprentissage
  • Acquisition de données: collecte d'informations fiscales en hindi
  • Sélection du modèle: choisir des modèles d'intégration et de génération appropriés
  • Configuration de la base de données vectorielle
  • Documenter l'ingestion et la récupération
  • Génération de réponses avec Airavata
  • Tests et évaluation
  • Conclusion
  • Questions fréquemment posées

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>

Nettoyage et analyse des données

Préparation des données impliquées:

  • Grattage Web
  • Nettoyage des données

Examinons chaque étape.

Grattage Web

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 .

Nettoyage des données

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn