Project Overview

Context

The Bridges RAG (Retrieval-Augmented Generation) platform was developed for the International Organization for Migration (IOM) in Cameroon to facilitate the socio-economic reintegration of internally displaced persons (IDPs), returning migrants, and expatriates. It connects vulnerable populations to relevant economic opportunities — employment, vocational training, and entrepreneurship — using artificial intelligence to match each beneficiary’s profile to the most relevant openings.

Objectives

The platform was designed to meet the following objectives:

  • Provide personalized recommendations for economic opportunities based on each beneficiary’s profile, skills, location, and available capital.

  • Index and search thousands of opportunities (employment, training, entrepreneurship) efficiently using semantic vector search.

  • Use generative AI (Google Gemini 2.0 Flash) to analyse profiles and generate relevant, explainable recommendations.

  • Track recommendation history and interactions to support continuous improvement and impact measurement.

  • Manage a content security classification scheme (GREEN / YELLOW / RED) so that sensitive data is handled appropriately throughout the pipeline.

Target Beneficiaries

The platform serves several official IOM beneficiary categories. The three primary categories handled by the recommendation engine are:

Category

Description

Specific needs

IDP (Internally Displaced)

Persons who fled their region of origin due to conflict or disaster

Local reintegration, rebuilding livelihoods

RETURNING_MIGRANT

Persons returned to Cameroon after a stay abroad

Skills valorization, reintegration

EXPATRIATE

Foreigners residing in Cameroon

Economic integration, local opportunities

The full data model additionally recognises FORMER_ARMED_GROUP_MEMBER, AFFECTED_COMMUNITY, CROSS_BORDER_TRADER, and DIASPORA_MEMBER categories for reporting and partner workflows.

Actors and Use Cases

The diagram below shows every actor and their interactions with the platform, using official IOM terminology. Actors include the Beneficiary, the Reintegration Expert, Government / NGO / Private-Sector Partners, the IOM Administrator, and two automated actors — the AI-Powered Recommendation Engine and the AI Agent Assistant.

        %% IOM Digital Tool - Use Case Diagram
%% All actors and their system interactions - Official IOM Terminology

graph TB
    %% Actors - Using official IOM terminology
    Beneficiary([BENEFICIARY])
    Expert([REINTEGRATION<br/>EXPERT])
    GovPartner([GOVERNMENT<br/>PARTNER])
    NGO([NGO<br/>PARTNER])
    Private([PRIVATE<br/>SECTOR])
    Admin([IOM<br/>ADMINISTRATOR])
    AIEngine([AI-POWERED<br/>RECOMMENDATION<br/>ENGINE])
    AIAgent([AI AGENT<br/>ASSISTANT])
    
    %% Subsystem: Profile Management
    subgraph ProfileMgmt["PROFILE MANAGEMENT"]
        UC01["Register on platform"]
        UC02["Complete beneficiary profile"]
        UC03["Upload documents"]
        UC04["Take skills assessment"]
        UC05["Update preferences"]
        UC06["Manage GDPR consents"]
    end
    
    %% Subsystem: Opportunity Discovery
    subgraph OppDiscovery["OPPORTUNITY DISCOVERY & MATCHING"]
        UC07["Search economic opportunities"]
        UC08["View AI-powered recommendations"]
        UC09["Filter by criteria"]
        UC10["View opportunity details"]
        UC11["Save opportunity"]
        UC12["Share opportunity"]
        UC13["Interact with AI Agent Assistant"]
    end
    
    %% Subsystem: External Redirection
    subgraph ExtRedirect["EXTERNAL REDIRECTION"]
        UC14["Redirect to job posting"]
        UC15["Redirect to training program"]
        UC16["Redirect to AGR initiative"]
        UC17["Redirect to microfinance"]
        UC18["Download auto-generated CV"]
        UC19["Receive link via SMS"]
    end
    
    %% Subsystem: Tracking
    subgraph Tracking["APPLICATION TRACKING & NOTIFICATIONS"]
        UC20["Track external applications"]
        UC21["Update application status"]
        UC22["Configure personalized alerts"]
        UC23["Receive notifications"]
        UC24["Provide feedback on recommendations"]
    end
    
    %% Subsystem: Support
    subgraph Support["SUPPORT & COACHING"]
        UC25["Chat with counselor"]
        UC26["Browse resource library"]
        UC27["Request accompaniment"]
        UC28["Report issue"]
        UC29["Access online training modules"]
    end
    
    %% Subsystem: Multi-Channel Access
    subgraph MultiChannel["MULTI-CHANNEL ACCESS"]
        UC30["Access via Web Platform"]
        UC31["Access via Mobile App"]
        UC32["Access via WhatsApp AI Agent"]
        UC33["Access via USSD Gateway"]
    end
    
    %% Subsystem: Partner Management
    subgraph PartnerMgmt["PARTNER MANAGEMENT"]
        UC34["Create partner account"]
        UC35["Submit opportunities"]
        UC36["Manage published opportunities"]
        UC37["View analytics dashboards"]
        UC38["Propose collaboration"]
    end
    
    %% Subsystem: AI System
    subgraph AISystem["AI RECOMMENDATION SYSTEM"]
        UC39["Generate personalized recommendations"]
        UC40["Calculate matching scores"]
        UC41["Learn from user feedback"]
        UC42["Analyze beneficiary profiles"]
        UC43["Perform predictive analytics"]
        UC44["Send personalized alerts"]
    end
    
    %% Subsystem: Administration
    subgraph AdminSys["SYSTEM ADMINISTRATION"]
        UC45["Manage users"]
        UC46["Moderate content"]
        UC47["View business intelligence"]
        UC48["Configure system parameters"]
        UC49["Manage data sources"]
        UC50["Manage partnerships"]
    end
    
    %% Beneficiary Relations
    Beneficiary --> UC01
    Beneficiary --> UC02
    Beneficiary --> UC03
    Beneficiary --> UC04
    Beneficiary --> UC05
    Beneficiary --> UC06
    Beneficiary --> UC07
    Beneficiary --> UC08
    Beneficiary --> UC09
    Beneficiary --> UC10
    Beneficiary --> UC11
    Beneficiary --> UC12
    Beneficiary --> UC13
    Beneficiary --> UC14
    Beneficiary --> UC15
    Beneficiary --> UC16
    Beneficiary --> UC17
    Beneficiary --> UC18
    Beneficiary --> UC19
    Beneficiary --> UC20
    Beneficiary --> UC21
    Beneficiary --> UC22
    Beneficiary --> UC23
    Beneficiary --> UC24
    Beneficiary --> UC25
    Beneficiary --> UC26
    Beneficiary --> UC27
    Beneficiary --> UC28
    Beneficiary --> UC29
    Beneficiary --> UC30
    Beneficiary --> UC31
    Beneficiary --> UC32
    Beneficiary --> UC33
    
    %% Expert Relations
    Expert --> UC25
    Expert --> UC27
    Expert --> UC45
    Expert --> UC47
    
    %% Partner Relations
    GovPartner --> UC34
    GovPartner --> UC35
    GovPartner --> UC36
    GovPartner --> UC37
    GovPartner --> UC38
    
    NGO --> UC34
    NGO --> UC35
    NGO --> UC36
    NGO --> UC37
    NGO --> UC38
    
    Private --> UC34
    Private --> UC35
    Private --> UC36
    Private --> UC37
    
    %% Administrator Relations
    Admin --> UC45
    Admin --> UC46
    Admin --> UC47
    Admin --> UC48
    Admin --> UC49
    Admin --> UC50
    
    %% AI Engine Relations
    AIEngine -.-> UC39
    AIEngine -.-> UC40
    AIEngine -.-> UC41
    AIEngine -.-> UC42
    AIEngine -.-> UC43
    AIEngine -.-> UC44
    
    %% AI Agent Relations
    AIAgent -.-> UC13
    AIAgent -.-> UC32
    AIAgent -.-> UC39
    
    %% Include/Extend Relations
    UC08 -.include.-> UC39
    UC08 -.include.-> UC40
    UC10 -.include.-> UC40
    UC13 -.include.-> UC39
    UC23 -.include.-> UC44
    UC24 -.include.-> UC41
    UC14 -.include.-> UC18
    UC14 -.extend.-> UC19
    UC15 -.extend.-> UC19
    UC16 -.extend.-> UC19
    UC32 -.include.-> UC13
    
    classDef actorStyle fill:#1565C0,stroke:#0D47A1,stroke-width:4px,color:#fff,font-size:16px,font-weight:bold
    classDef aiStyle fill:#F57C00,stroke:#E65100,stroke-width:4px,color:#fff,font-size:16px,font-weight:bold
    classDef ucStyle fill:#E3F2FD,stroke:#1976D2,stroke-width:2px,font-size:14px,color:#000
    
    class Beneficiary,Expert,GovPartner,NGO,Private,Admin actorStyle
    class AIEngine,AIAgent aiStyle
    class UC01,UC02,UC03,UC04,UC05,UC06,UC07,UC08,UC09,UC10,UC11,UC12,UC13,UC14,UC15,UC16,UC17,UC18,UC19,UC20,UC21,UC22,UC23,UC24,UC25,UC26,UC27,UC28,UC29,UC30,UC31,UC32,UC33,UC34,UC35,UC36,UC37,UC38,UC39,UC40,UC41,UC42,UC43,UC44,UC45,UC46,UC47,UC48,UC49,UC50 ucStyle

    

Figure 1. Use case diagram — actors and system interactions.

The platform groups functionality into subsystems such as Profile Management (registration, profile completion, document upload, skills assessment, GDPR consents), Opportunity Discovery, Recommendation Generation, Application Tracking, and Partner Management.

Opportunity Types

Recommendations are produced across the following opportunity types:

Opportunity type

Description

PERMANENT_EMPLOYMENT

Permanent salaried job

TEMPORARY_EMPLOYMENT

Temporary or seasonal job

VOCATIONAL_TRAINING

Professional / vocational training

ENTREPRENEURSHIP

Income Generating Activity (IGA) / business creation

INTERNSHIP

Professional internship

APPRENTICESHIP

Apprenticeship placement

PROFESSIONAL_CERTIFICATION

Certification programmes

BUSINESS_GRANT / MICRO_CREDIT

Financing instruments for entrepreneurship

Worked Examples

Example 1 — IDP with construction skills

Profile: Ibrahim S., 36, IDP from the North-West region, relocated to Bafoussam. Skills: civil engineering and construction, six years’ experience as a site supervisor. Available capital: 3 M XAF.

Recommendations received:

  1. Site Supervisor — SOCADEM BafoussamPERMANENT_EMPLOYMENT, 350–500 k XAF/month, relevance score 0.92.

  2. Masonry businessENTREPRENEURSHIP, investment 2–5 M XAF, relevance score 0.88.

Example 2 — Returning migrant in healthcare

Profile: Dr. Marie-Claire T., 41, returned from Belgium to Yaoundé. Specialty: gynaecology-obstetrics, eight years’ experience. Available capital: 20 M XAF.

Recommendations received:

  1. Senior Gynaecologist — Central Hospital YaoundéPERMANENT_EMPLOYMENT, 1.2–1.8 M XAF/month, relevance score 0.95.

  2. Private gynaecology practiceENTREPRENEURSHIP, investment 15–30 M XAF, relevance score 0.89.