Skip to content

cppmai1103/nlp_asm2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

NLP701 – Assignment 2: Detecting AI-Generated Code

This repository contains code for training and evaluating models for SemEval 2026 Task 13 (Subtask B) using CodeBERT and UniXcoder.

Learderboard team name: cppmai

1. Install dependencies

pip install -r requirements.txt

2. Dataset undersampling

Create an undersampled dataset where the number of Human samples equals the total number of LLM-generated samples.

python src/data_undersampling.py \
  --input data/train.parquet \
  --output data/train_undersampling.parquet

3. Training

Original training set

Finetune CodeBERT

python src/train.py \
  --output_dir result_codebert \
  --model_name microsoft/codebert-base

Finetune UniXcoder

python src/train.py \
  --output_dir result_unixcoder \
  --model_name microsoft/unixcoder-base

Undersampled training set

Finetune CodeBERT

python src/train.py \
  --output_dir result_codebert_undersampling \
  --model_name microsoft/codebert-base \
  --parquet_path data/train_undersampling.parquet

Finetune UniXcoder

python src/train.py \
  --output_dir result_unixcoder_undersampling \
  --model_name microsoft/unixcoder-base \
  --parquet_path data/train_undersampling.parquet

4. Predicting on TEST set

python predict.py \
  --model_path ./result_codebert \
  --parquet_path data/test.parquet \
  --output_path submission.csv

5. Repository Structure

nlp_asm2/
├── src/
│   ├── train.py
│   ├── data_undersampling.py
│   ├── predict.py
├── data/
│   ├── train.parquet
│   ├── test.parquet
├── requirements.txt
└── README.md

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages