CoolFace
Modelpublic

nlpctx/codet5-java-optimizer

sourceHugging Faceapache-2.0updated 4mo agoView on Hugging Face
0likes33downloads
README.md106 linesDownload Raw Back to root
1---2language: en3license: apache-2.04library_name: transformers5tags:6- code7- java8- codet59- optimization10- code-generation11datasets:12- nlpctx/java_optimisation13base_model: Salesforce/codet5-small14pipeline_tag: text-generation15model-index:16- name: codet5-java-optimizer17  results: []18---19 20# CodeT5-small Java Optimization Model21 22A fine-tuned [Salesforce/codet5-small](https://huggingface.co/Salesforce/codet5-small) model for Java code optimization tasks.23 24- **Model**: [nlpctx/codet5-java-optimizer](https://huggingface.co/nlpctx/codet5-java-optimizer)25- **Dataset**: [nlpctx/java_optimisation](https://huggingface.co/datasets/nlpctx/java_optimisation)26- **Base Model**: [Salesforce/codet5-small](https://huggingface.co/Salesforce/codet5-small)27 28## Overview29 30This repository contains a fine-tuned CodeT5-small model specifically trained for Java code optimization. The model takes verbose or inefficient Java code and generates more optimal versions.31 32## Model Information33 34- **Base Model**: Salesforce/codet5-small35- **Training Dataset**: [nlpctx/java_optimisation](https://huggingface.co/datasets/nlpctx/java_optimisation)36- **Framework**: HuggingFace Transformers with Seq2SeqTrainer37- **Training Setup**: Dual-GPU DataParallel (Kaggle T4×2)38- **Dataset Size**: ~6K training / 680 validation Java optimization pairs39- **Optimization Focus**: Java code refactoring and performance improvements40 41## Files42 43- `config.json` - Model configuration44- `generation_config.json` - Generation parameters45- `model.safetensors` - Model weights (safetensors format)46- `merges.txt` - BPE merges file47- `special_tokens_map.json` - Special tokens mapping48- `tokenizer_config.json` - Tokenizer configuration49- `vocab.json` - Vocabulary file50 51## Usage52 53```python54from transformers import T5ForConditionalGeneration, RobertaTokenizer55import torch56 57# Load model and tokenizer58model = T5ForConditionalGeneration.from_pretrained("nlpctx/codet5-java-optimizer")59tokenizer = RobertaTokenizer.from_pretrained("nlpctx/codet5-java-optimizer")60 61# Prepare input Java code62java_code = "your Java code here"63input_ids = tokenizer(java_code, return_tensors="pt").input_ids64 65# Generate optimized code66with torch.no_grad():67    outputs = model.generate(68        input_ids,69        max_length=512,70        num_beams=4,71        early_stopping=True72    )73 74optimized_code = tokenizer.decode(outputs[0], skip_special_tokens=True)75print(optimized_code)76```77 78## Example Optimizations79 80The model has been trained to recognize and optimize common Java patterns:81 82- **Switch Expressions**: Converting verbose switch statements to switch expressions83- **Collection Operations**: Replacing manual iterator removal with `removeIf()`84- **String Handling**: Optimizing string concatenation with `StringBuilder`85- **Loop Optimizations**: Improving iterative constructs86- **And more...**87 88## Training Details89 90The model was fine-tuned using:91- **Base Model**: Salesforce/codet5-small92- **Dataset**: nlpctx/java_optimisation from Hugging Face93- **Training Framework**: Seq2SeqTrainer with DataParallel94- **Hardware**: Kaggle T4×2 (dual GPU)95- **Approach**: Standard supervised fine-tuning on Java optimization pairs96 97## License98 99This model is licensed under the **Apache 2.0** license, matching the original [Salesforce/codet5-small](https://huggingface.co/Salesforce/codet5-small) model.100 101## Acknowledgements102 103- Model based on [Salesforce/codet5-small](https://huggingface.co/Salesforce/codet5-small)104- Training data from [nlpctx/java_optimisation](https://huggingface.co/datasets/nlpctx/java_optimisation) dataset105- Built with [HuggingFace Transformers](https://github.com/huggingface/transformers)106