Skip to content

Module that connects a llm repOK generator with a randoop verifier to generate representation invariants for Java classes.

Notifications You must be signed in to change notification settings

ValenButtignol/atria

Repository files navigation

AtrIA Logo

Thesis pdf

Document

Steps for tool setup

  1. Clone the repository with its submodules
git clone --recurse-submodules https://github.com/ValenButtignol/repok-generator-tool.git atria
  1. Make sure having installed Java 21 and Gradle 8.12.

  2. Download Miniconda.

  3. Create and activate an environment with Miniconda:

conda create -n <env-name>
conda activate <env-name>
  1. Execute dependencies.sh to install the required dependencies.
bash dependencies.sh
  1. Install any model supported by llama-cpp-python. For more details README.md file.
wget -P tools/llm-repok-generator/models <model_download_url>

NOTE: Make sure of adding the model name to the ModelPathFactory file. In this file are the model_paths and model_names of the models that we used to test the tool. The download links are in the README.md file.

Execute program

gradle run --args="<modelName> <classPath> <className> <promptType>"

NOTE: The modelName is the name of the model captured by the ModelPathFactory If you want to test another model, you can add another option to this factory. The classPath is the path to the class file. The className is the name of the class. The promptTypeis the style of prompt to use for the LLM. More details in README.md

About

Module that connects a llm repOK generator with a randoop verifier to generate representation invariants for Java classes.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages