Skip to content

Context-aware task assignment using transformers and adaptive fusion of code, docs, and profiles

Notifications You must be signed in to change notification settings

SODAForge/SODAOpt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

113 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SODAOpt: Socio-Demographic and Textual Adaptive Fusion for Optimizing Developer Task Assignment

A transformer-based framework that integrates textual and socio-demographic embeddings to enhance task matching.

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/RecomText.git
    cd SODAOpt
  2. Create and activate virtual environment:

    python -m venv venv
    source venv/bin/activate  # for Linux/Mac
    venv\Scripts\activate  # for Windows
  3. Install dependencies:

    pip install -r requirements.txt

Data Preparation

  1. Place your source data in the data/ directory:

    • train_events.csv
    • repo_info.csv
    • train_targets.csv
    • all_events.csv
  2. Run the data preparation script:

    python -m data.baseline_socdem

Training

  1. Configure parameters in configs/config.yaml

  2. Start training via Jupyter notebook:

    jupyter notebook notebooks/train.ipynb

    Alternatively, use the training script:

    python train.py

Inference

Use the following code for getting recommendations:

допишу чуть позже

Project Structure

  • data/ - data processing modules
  • models/ - model architectures
  • utils/ - utility functions
  • notebooks/ - jupyter notebooks
  • configs/ - configuration files

System Requirements

  • Python 3.8+
  • CUDA-compatible GPU (optional)

Features

  • Multimodal embeddings combining text and IDs
  • Contrastive learning approach
  • Efficient batch processing
  • Support for both CPU and GPU inference
  • Configurable model architecture

License

MIT License

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Cite

add later

About

Context-aware task assignment using transformers and adaptive fusion of code, docs, and profiles

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •