Skip to content
Merged
14 changes: 14 additions & 0 deletions DEMO/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,20 @@ It covers:

**Note:** The Evaluation module is currently in development and its API is subject to change in future releases.

### 6. Working with datasets in multiple languages with ClassifAI and Multilingual Vectoriser Models : `multilingual_datasets_and_vectorisers.ipynb`

This notebook demonstrates how to work with datasets containing text in multiple languages using ClassifAI and multilingual Vectoriser models.

It covers:

* How multilingual Vectorisers can encode text from different languages into a shared embedding space, allowing semantically similar text to be represented similarly, regardless of language.

* Building a `VectorStore` from a multilingual dataset and searching it using queries in different languages.

* Visualising the multilingual embedding space to show how semantically similar text in different languages is positioned close together.

* Performing searches in one language and retrieving relevant results in multiple languages, showcasing the multilingual capabilities of the VectorStore.

---

## Installation of classifai
Expand Down
2 changes: 1 addition & 1 deletion DEMO/custom_vectoriser.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"![Server_Image](files/vectoriser.png)\n",
"![Server_Image](./files/vectoriser.png)\n",
"\n",
"As seen above, a Vectorisers' sole responsibility is to convert text to a vector representation. Each Vectoriser class must implement a transform() method that will:\n",
"\n",
Expand Down
84 changes: 84 additions & 0 deletions DEMO/data/fake_multilingual_soc_dataset.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
label,text
101,"Fruit farmer: Grows and harvests fruits such as apples, oranges, and berries."
101,"Maraîcher : cultive et récolte des légumes comme les carottes, les pommes de terre et la laitue."
101,"Cultivateur de vergers : s'occupe de la récolte des pommes et des poires en saison."
102,"Dairy farmer: Manages cows for milk production and processes dairy products."
102,"Éleveur de moutons : élève des moutons pour la laine, la viande et d'autres produits."
103,"Construction laborer: Performs physical tasks on construction sites, such as digging and carrying materials."
103,"Maçon : pose des briques, des blocs de béton et des pierres pour construire des murs et des structures."
103,"Ouvrier du bâtiment : travaille sur différents chantiers, transport de matériaux et travaux de terrassement."
104,"Carpenter: Constructs, installs, and repairs wooden frameworks and structures."
104,"Charpentier : construit, installe et répare des structures et charpentes en bois."
105,"Electrician: Installs, maintains, and repairs electrical systems in buildings and equipment."
106,"Plumber: Installs and repairs water, gas, and drainage systems in homes and businesses."
106,"Plombier : installe et répare des systèmes d'eau, de gaz et de drainage dans les foyers et les entreprises."
107,"Software developer: Designs, writes, and tests computer programs and applications."
107,"Développeur web : conçoit et maintient des sites web et des applications web."
107,"Ingénieur logiciel : participe à la conception et aux tests de nouveaux systèmes informatiques."
108,"Data analyst: Analyzes data to provide insights and support decision-making."
109,"Accountant: Prepares and examines financial records, ensuring accuracy and compliance with regulations."
109,"Auditeur : examine les états financiers et les registres pour assurer la conformité et détecter les fraudes."
110,"Teacher: Educates students in schools, colleges, or universities."
110,"Enseignant : éduque les élèves dans les écoles, les collèges ou les universités."
111,"Nurse: Provides medical care and support to patients in hospitals, clinics, or homes."
111,"Ambulancier : intervient dans des situations médicales d'urgence et fournit des soins préhospitaliers."
111,"Aide-soignant : accompagne les patients au quotidien dans les établissements de santé."
112,"Chef: Prepares and cooks meals in restaurants, hotels, or other food establishments."
112,"Serveur : sert de la nourriture et des boissons aux clients dans les restaurants et les cafés."
113,"Graphic designer: Creates visual concepts for advertisements, websites, and branding."
113,"Illustrateur : produit des œuvres pour des livres, des magazines et d'autres médias."
114,"Mechanic: Repairs and maintains vehicles and machinery."
114,"Technicien automobile : diagnostique et répare les problèmes des voitures et des camions."
115,"Photographer: Captures images for events, advertising, or artistic purposes."
115,"Vidéaste : enregistre et monte du contenu vidéo pour divers projets."
116,"Barista: Prepares and serves coffee and other beverages in cafes and coffee shops."
116,"Gérant de café : supervise les opérations quotidiennes d'un café, y compris la gestion du personnel et des stocks."
117,"Fitness trainer: Designs and leads exercise programs for individuals or groups."
117,"Professeur de yoga : enseigne des cours de yoga pour améliorer la flexibilité, la force et la relaxation."
118,"Librarian: Manages library resources and assists patrons with research."
118,"Archiviste : préserve et organise des documents et registres historiques."
119,"Journalist: Researches and writes news articles for print or online media."
119,"Rédacteur : révise et corrige le contenu écrit en vue de sa publication."
119,"Rédacteur technique : produit des manuels et de la documentation pour des produits techniques."
120,"Scientist: Conducts research and experiments to advance knowledge in a specific field."
120,"Technicien de laboratoire : assiste dans les expériences scientifiques et entretient le matériel de laboratoire."
121,"Police officer: Enforces laws and maintains public safety."
121,"Détective : enquête sur des crimes et rassemble des preuves pour des affaires judiciaires."
122,"Firefighter: Responds to emergencies and extinguishes fires."
122,"Inspecteur incendie : inspecte les bâtiments pour assurer la conformité aux réglementations de sécurité incendie."
123,"Pilot: Operates aircraft to transport passengers or cargo."
123,"Hôtesse de l'air : assure la sécurité et le confort des passagers pendant les vols."
124,"Actor: Performs roles in theater, film, or television productions."
124,"Réalisateur : supervise les aspects créatifs d'un film, d'une pièce de théâtre ou d'une émission de télévision."
125,"Musician: Performs music as a soloist or part of a band or orchestra."
125,"Compositeur : crée de la musique originale pour des spectacles ou des enregistrements."
126,"Athlete: Competes in sports at a professional or amateur level."
126,"Entraîneur sportif : forme et encadre des athlètes pour améliorer leurs performances."
127,"Fashion designer: Creates clothing and accessories for production or custom orders."
127,"Tailleur : ajuste et répare des vêtements pour les clients."
128,"Real estate agent: Assists clients in buying, selling, or renting properties."
128,"Gestionnaire immobilier : supervise l'entretien et la location de biens immobiliers."
129,"Event planner: Organizes and coordinates events such as weddings and conferences."
129,"Coordinateur de mariage : gère tous les aspects de la planification et de l'exécution d'un mariage."
130,"Veterinarian: Provides medical care for animals."
130,"Technicien vétérinaire : assiste les vétérinaires dans le traitement et les soins aux animaux."
131,"Social worker: Supports individuals and families in overcoming challenges."
131,"Conseiller conjugal : accompagne les couples et les familles en difficulté."
132,"Entrepreneur: Starts and manages their own business ventures."
132,"Consultant en entreprise : conseille les entreprises sur des stratégies pour améliorer leurs opérations."
133,"Logistics manager: Oversees the transportation and storage of goods."
133,"Analyste de la chaîne d'approvisionnement : optimise le flux des biens et des matériaux dans une chaîne d'approvisionnement."
134,"Software tester: Tests software applications for bugs and usability issues."
134,"Ingénieur DevOps : gère les processus de développement logiciel et d'exploitation informatique."
135,"Research assistant: Supports researchers in conducting studies and experiments."
135,"Statisticien : analyse des données pour identifier des tendances et faire des prévisions."
136,"HR manager: Oversees recruitment, training, and employee relations."
136,"Chargé de recrutement : trouve et embauche des candidats pour des postes vacants."
137,"Chef de cuisine: Leads the kitchen team in a restaurant."
137,"Second de cuisine : assiste le chef principal dans la gestion des opérations en cuisine."
138,"Bartender: Mixes and serves drinks to customers."
138,"Sommelier : recommande et sert des vins dans les restaurants."
139,"Tour guide: Leads groups on tours and provides information about destinations."
139,"Agent de voyages : planifie et réserve des arrangements de voyage pour les clients."
140,"Game designer: Creates concepts and mechanics for video games."
140,"Concepteur de niveaux : conçoit des niveaux et des environnements pour des jeux vidéo."
6 changes: 3 additions & 3 deletions DEMO/evaluation_workflow_demo.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
"\n",
"Currently the evaluation module only evaluates single label predictions meaning that, while ClassifAI is designed to return a ranked list of several semantically similar candidate entries to a provided query sample, only the top result will be considered when comparing the VectorStore result to a ground truth label provided by a user.\n",
"\n",
"![top_1_eval_image](files/eval_top_1_diagram.png)\n",
"![top_1_eval_image](./files/eval_top_1_diagram.png)\n",
"\n",
"The Evaluation module is currently in development, and in the future its feature set may be extended to include a broader range of evaluation tasks such as multi-class multi-label classification, where potentially multiple labels for a ground truth sample can be compared and evaluated against multiple ranked candidate predictions of the VectorStore."
]
Expand Down Expand Up @@ -353,7 +353,7 @@
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"display_name": "classifai",
"language": "python",
"name": "python3"
},
Expand All @@ -367,7 +367,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.4"
"version": "3.13.7"
}
},
"nbformat": 4,
Expand Down
Binary file added DEMO/files/vectoriser_multilingual.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added DEMO/files/vectorstore_2d_vis_multilingual.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 3 additions & 3 deletions DEMO/general_workflow_demo.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
"source": [
"## Vectorising\n",
"\n",
"![Vectoriser_image](files/vectoriser.png)\n",
"![Vectoriser_image](./files/vectoriser.png)\n",
"\n",
"#### We provide several vectoriser classes that you can use to convert text to embeddings/vectors;\n",
"```python\n",
Expand Down Expand Up @@ -114,7 +114,7 @@
"\n",
"By default, the vector database is persisted to a local directory named after the input filename. You can use the `output_dir` argument to change the location of the persisted vector database when creating the VectorStore. If the directory already exists, it will exit with a warning - you can pass the `overwrite=True` argument to permit it to overwrite an existing directory. If you don't want the vector database to be persisted at all, you can pass the `skip_save=True` argument - note that this takes precedence over `output_dir` and `overwrite`.\n",
"If you want to minimise verbose output, such as INFO-level logs and progress bars, you can set the `quiet_mode` parameter to `True`.\n",
"![VectorStore_image](files/VectorStore.png)\n"
"![VectorStore_image](./files/VectorStore.png)\n"
]
},
{
Expand Down Expand Up @@ -384,7 +384,7 @@
"\n",
"#### *Now, how do I host it so others can use it?*\n",
"\n",
"![Server_Image](files/servers.png)"
"![Server_Image](./files/servers.png)"
]
},
{
Expand Down
Loading
Loading