Skip to content

Commit 5680046

Browse files
committed
Add README.md file
1 parent e17bd99 commit 5680046

2 files changed

Lines changed: 70 additions & 3 deletions

File tree

‎README.md‎

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# JavaMigration
2+
<table>
3+
<tr>
4+
<td style="padding: 0;">
5+
<a href="https://huggingface.co/collections/AmazonScience/migrationbench-68125452fc21a4564b92b6c3">
6+
<img src="https://img.shields.io/badge/-🤗 MigrationBench-4d5eff?style=flatten&labelColor" alt="MigrationBench (Hugging Face)">
7+
</a>
8+
</td>
9+
<td style="padding: 0;">
10+
<a href="https://github.com/amazon-science/MigrationBench">
11+
<img src="https://img.shields.io/badge/MigrationBench-000000?style=flatten&logo=github" alt="MigrationBench (GitHub)">
12+
</a>
13+
</td>
14+
<td style="padding: 0;">
15+
<a href="https://github.com/amazon-science/JavaMigration">
16+
<img src="https://img.shields.io/badge/JavaMigration-000000?style=flatten&logo=github&logoColor=white" alt="JavaMigration (GitHub)">
17+
</a>
18+
</td>
19+
<td style="padding: 0;">
20+
<a href="https://arxiv.org/abs/2505.09569">
21+
<img src="https://img.shields.io/badge/arXiv-2505.09569-b31b1b.svg?style=flatten" alt="MigrationBench (arXiv)">
22+
</a>
23+
</td>
24+
<td style="padding: 0; padding-left: 10px; vertical-align: middle;">
25+
<a href="https://huggingface.co/datasets/AmazonScience/migration-bench-java-full">
26+
<img src="https://img.shields.io/badge/-🤗 java--full-8a98ff?style=flat&labelColor" alt="java-full">
27+
</a>
28+
</td>
29+
<td style="padding: 0; vertical-align: middle;">
30+
<a href="https://huggingface.co/datasets/AmazonScience/migration-bench-java-selected">
31+
<img src="https://img.shields.io/badge/-🤗 java--selected-8a98ff?style=flat&labelColor" alt="java-selected">
32+
</a>
33+
</td>
34+
</tr>
35+
</table>
36+
37+
Repository for automated Java code migration research, part of the [MigrationBench](https://huggingface.co/collections/AmazonScience/migrationbench-68125452fc21a4564b92b6c3) project.
38+
39+
## Packages
40+
41+
This repository contains two main packages for Java code migration:
42+
43+
### [java_migration_agent](./java_migration_agent)
44+
LLM-based agent library for automated Java 8 to Java 17 migration, built on the [Strands Agents](https://strandsagents.com/latest/) framework. Supports multiple migration strategies including baseline, PE (prompt engineering), RAG, and hybrid approaches.
45+
46+
### [self_debug](./self_debug)
47+
SDFeedback implementation for code migration with LLMs using self-debugging feedback. Includes both single-job and batch processing capabilities with AWS EMRS support.
48+
49+
## Resources
50+
51+
- [MigrationBench (Hugging Face)](https://huggingface.co/collections/AmazonScience/migrationbench-68125452fc21a4564b92b6c3)
52+
- [MigrationBench (GitHub)](https://github.com/amazon-science/MigrationBench)
53+
- [arXiv Paper](https://arxiv.org/abs/2505.09569)
54+
55+
## Citation
56+
57+
```bibtex
58+
@misc{liu2025migrationbenchrepositorylevelcodemigration,
59+
title={MIGRATION-BENCH: Repository-Level Code Migration Benchmark from Java 8},
60+
author={Linbo Liu and Xinle Liu and Qiang Zhou and Lin Chen and Yihan Liu and Hoan Nguyen and Behrooz Omidvar-Tehrani and Xi Shen and Jun Huan and Omer Tripp and Anoop Deoras},
61+
year={2025},
62+
eprint={2505.09569},
63+
archivePrefix={arXiv},
64+
primaryClass={cs.SE},
65+
url={https://arxiv.org/abs/2505.09569},
66+
}
67+
```

‎java_migration_agent/README.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,8 @@ Java Migration Agent is a library for automated code migration from Java 8 to Ja
5757
It provides multiple agent strategies for migration:
5858
- **Baseline**: Direct LLM-based migration
5959
- **PE (Prompt Engineering)**: Baseline with enhanced prompts for dependency updates
60-
- **Hybrid**: Pre-processes dependencies before LLM migration
6160
- **RAG**: Uses retrieval-augmented generation for dependency version lookup
61+
- **Hybrid**: Pre-processes dependencies before LLM migration
6262

6363
The agent relies on the [MigrationBench](https://github.com/amazon-science/MigrationBench) package for evaluation.
6464

@@ -114,8 +114,8 @@ uv pip install -e .
114114
|------------|-------------|
115115
| `baseline` | Direct LLM migration with `mvn clean verify` |
116116
| `pe` | Baseline with prompt engineering for dependency updates |
117-
| `hybrid` | Pre-processes pom.xml dependencies before LLM migration |
118117
| `rag` | Uses dependency version lookup tool for migration |
118+
| `hybrid` | Pre-processes pom.xml dependencies before LLM migration |
119119

120120
### 4.2 Running Migration
121121

@@ -135,7 +135,7 @@ python -m java_migration_agent \
135135

136136
| Option | Default | Description |
137137
|--------|---------|-------------|
138-
| `--agent-type` | (required) | Agent type: `baseline`, `pe`, `hybrid`, or `rag` |
138+
| `--agent-type` | (required) | Agent type: `baseline`, `pe`, `rag`, or `hybrid` |
139139
| `--exp-id` | (required) | Experiment identifier for organizing results |
140140
| `--hf-dataset` | `AmazonScience/migration-bench-java-selected` | HuggingFace dataset name |
141141
| `--model-id` | `global.anthropic.claude-sonnet-4-5-20250929-v1:0` | Bedrock model ID |

0 commit comments

Comments
 (0)