MOBOT - Ghana Financial Assistant πŸ€–πŸ‡¬πŸ‡­

MOBOT Logo

Your friendly financial assistant for Ghana

Hugging Face License Python


🎯 What is MOBOT?

MOBOT is a multilingual, multimodal conversational AI specialized for Ghanaian financial services. Built on Mistral-7B, MOBOT helps users with:

  • πŸ’° Money Transfers - Send money to friends and family
  • πŸ“„ Bill Payments - Pay ECG, GWCL, hospital bills, and more
  • πŸ“Š Financial Tracking - Check balances, view spending summaries
  • πŸ’‘ Financial Advice - Savings tips, debt planning, budgeting
  • 🎀 Voice Interaction - Speak naturally in Twi, Pidgin, English, and more
  • πŸ“· Bill Scanning - Upload bill photos for automatic processing

✨ Key Features

🌍 Multilingual Support

  • English - Full support
  • Twi - Native language support
  • Pidgin - Ghanaian Pidgin English
  • Hausa - Northern Ghana language
  • Ga - Greater Accra region
  • Ewe - Volta region

🎨 Multimodal Capabilities

  • πŸ“ Text - Natural language conversations
  • 🎀 Voice Input - Speech-to-text (STT) with Whisper
  • πŸ“· Image Processing - OCR for bills and receipts
  • πŸ”Š Voice Reply - Text-to-speech (TTS) responses

πŸ’Ό Financial Services

  • Send money / transfers
  • Pay utility bills (ECG, GWCL)
  • Buy airtime and data
  • Check account balance
  • View transaction history
  • Get spending summaries
  • Financial coaching

🀝 Empathetic & Safe

  • Emotional intelligence for sensitive situations
  • Safety patterns for sensitive information
  • Consent management for transactions
  • Audit logging for compliance

πŸš€ Quick Start

Installation

pip install transformers torch

Basic Usage

from transformers import AutoModelForCausalLM, AutoTokenizer

# Load model
model_name = "CHATMOBOT/mobot-ghana-complete"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)

# Chat with MOBOT
user_input = "Hey Mobot, send 50 cedis to Ama"
prompt = f"<s>[INST] You are MOBOT, Ghana's friendly financial assistant.\n\nUser: {user_input} [/INST]"

inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=512, temperature=0.2)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)

print(response)

With Pipeline

from transformers import pipeline

mobot = pipeline(
    "text-generation",
    model="CHATMOBOT/mobot-ghana-complete"
)

response = mobot(
    "User: How much did I spend this week?",
    max_new_tokens=512,
    temperature=0.2
)

πŸ“š Examples

Money Transfer

User: Send 50 cedis to Kwame
Mobot: Sure! I'll send β‚΅50 to Kwame. Please confirm?

Bill Payment

User: [Uploads ECG bill photo]
Mobot: I found an ECG bill for β‚΅100.00 (ref: REF123). Would you like me to pay it?

Voice Note (Pidgin)

User: [Voice] "Chale send 20 ghs to Ama"
Mobot: Okay boss, sending β‚΅20 to Ama. Please confirm?

Financial Advice

User: Help me save money
Mobot: Great question! Here are some tips: 
1. Set a monthly savings goal
2. Automate transfers to savings
3. Track your spending
Want more advice?

πŸ”Œ Integrations

WhatsApp

# See: integrations/whatsapp_webhook_example.py
# Full WhatsApp Business API integration

Telegram

# See: integrations/telegram_bot_example.py
# Interactive bot with buttons

Agent Orchestration

# See: agents/orchestrator.py
# Multi-step workflows

πŸ“Š Model Details

Architecture

  • Base Model: Mistral-7B-v0.1
  • Fine-tuning: LoRA (Low-Rank Adaptation)
  • LoRA Rank: 128
  • LoRA Alpha: 32
  • Parameters: 7B
  • Context Length: 2048 tokens

Training

  • Current Dataset: 15,264 examples (quality-filtered)
  • Total Available: 509,438+ examples (from larger dataset)
  • Languages: 6 languages (English, Twi, Pidgin, Hausa, Ga, Ewe)
  • Intents: 12+ financial intents
  • Training Time: ~48 hours on RTX 4090
  • Training Config: See training_config.yaml

Performance

  • Intent Accuracy: β‰₯95%
  • Slot F1: β‰₯92%
  • Empathy Score: β‰₯4.0/5.0

πŸ› οΈ Advanced Usage

Multimodal Processing

# OCR for bills
from scripts.multimodal.ocr_receipts import process_image
parsed = process_image("bill.jpg")

# STT for voice
from scripts.multimodal.stt_whisper import transcribe_audio
transcript = transcribe_audio("voice_note.mp3")

# TTS for replies
from services.tts_service import synthesize_text
audio = synthesize_text("Hello! I'm MOBOT.")

Agent Orchestration

from agents.orchestrator import AgentOrchestrator

orchestrator = AgentOrchestrator()
plan = orchestrator.plan("Pay this bill", context={"image": "bill.jpg"})
result = orchestrator.execute(plan, user_id="user123")

πŸ“– Documentation


πŸ”’ Safety & Privacy

  • βœ… Refusal patterns for sensitive information
  • βœ… PII redaction in training data
  • βœ… Consent management for transactions
  • βœ… Audit logging for compliance
  • βœ… Ghana Data Protection Act compliant

🀝 Contributing

We welcome contributions! See our GitHub repository for:

  • Issue reporting
  • Feature requests
  • Pull requests
  • Documentation improvements

πŸ“„ License

Apache 2.0 License


πŸ™ Acknowledgments

  • Mistral AI - Base model
  • RunPod - Training infrastructure
  • Coqui TTS - Voice synthesis
  • OpenAI Whisper - Speech recognition
  • PaddleOCR - Image processing

πŸ“ž Contact

🌐 Social Media


Made with ❀️ for Ghana

πŸ‡¬πŸ‡­ MOBOT - Your Financial Assistant

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for CHATMOBOT/mobot-ghana-complete

Finetuned
(982)
this model