Skip to content

modelum/IEEE-Software-2025

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

19 Commits
Β 
Β 
Β 
Β 

Repository files navigation

OrionTraining and AthenaTraining: DSL Training and Testing with LLM

This repository contains the OrionTraining and AthenaTraining projects, where training and validation processes for language models have been carried out for the comprehension, transformation, and evolution of the Orion [1] and Athena [2] DSLs.

[1] Alberto HernΓ‘ndez ChillΓ³n, Meike Klettke, Diego Sevilla Ruiz, JesΓΊs GarcΓ­a Molina: A Generic Schema Evolution Approach for NoSQL and Relational Databases. IEEE Trans. Knowl. Data Eng. 36(7): 2774-2789 (2024) (https://ieeexplore.ieee.org/abstract/document/10420500)

[2] Alberto HernΓ‘ndez ChillΓ³n, Diego Sevilla Ruiz, JesΓΊs GarcΓ­a Molina: Athena: A Database-Independent Schema Definition Language. ER (Workshops) 2021: 33-42 (https://www.researchgate.net/publication/355185841_Athena_A_Database-Independent_Schema_Definition_Language)

Repository Structure

Each project follows the same internal organization, separating the training and testing phases, along with the corresponding prompts used. In addition, a conversation with the model is included, following the prompts that were executed but with minimal modifications.

  • /
    • πŸ“ .AthenaTraining/
      • πŸ“ Learning/
        • πŸ“ 1-Step (Formal Definition)/
          • πŸ“„ Formal Specification.txt
        • πŸ“ 2-Step (Articles)/
          • πŸ“„ Athena.png
          • πŸ“„ ChapterAthena.pdf
          • πŸ“„ DesignAthena.pdf
        • πŸ“ 3-Step (Examples)/
          • πŸ“ CentroDeportivo/
            • πŸ“„ CentroDeportivo.athena
            • πŸ“„ CentroDeportivo.cql
            • πŸ“„ CentroDeportivo.js
            • πŸ“„ CentroDeportivo.sql
          • πŸ“ SoftwareDev/
            • πŸ“„ SoftwareDev.athena
            • πŸ“„ SoftwareDev.cql
            • πŸ“„ SoftwareDev.js
            • πŸ“„ SoftwareDev.sql
          • πŸ“ SoftwareProject/
            • πŸ“„ SoftwareProject.athena
            • πŸ“„ SoftwareProject.cql
            • πŸ“„ SoftwareProject.js
            • πŸ“„ SoftwareProject.sql
          • πŸ“ Umugram/
            • πŸ“„ Umugram.athena
            • πŸ“„ Umugram.cql
            • πŸ“„ Umugram.js
            • πŸ“„ Umugram.sql
          • πŸ“ Vigilancias/
            • πŸ“„ Vigilancias.athena
            • πŸ“„ Vigilancias.cql
            • πŸ“„ Vigilancias.js
            • πŸ“„ Vigilancias.sql
        • πŸ“„ Prompt.txt
      • πŸ“ Testing/
        • πŸ“ Athena2Schema/
          • πŸ“„ EduPlatform.athena
        • πŸ“ Schema2Athena/
          • πŸ“„ Cassandra2Athena.cql
          • πŸ“„ MongoValidator2Athena.js
          • πŸ“„ NaturalLanguage2Athena.txt
          • πŸ“„ SQL2Athena.sql
        • πŸ“„ Prompt.txt
    • πŸ“ .OrionTraining/
      • πŸ“ Learning/
        • πŸ“ 1-Step (Formal Definition)/
          • πŸ“„ Formal Specification.txt
        • πŸ“ 2-Step (Articles)/
          • πŸ“„ Athena.txt
          • πŸ“„ ChapterAthena.pdf
          • πŸ“„ DesignAthena.pdf
        • πŸ“ 3-Step (Examples)/
          • πŸ“ GameTracker/
            • πŸ“„ GameTracker1.athena
            • πŸ“„ GameTracker2.athena
            • πŸ“„ GameTrackerChange.cql
            • πŸ“„ GameTrackerChange.cypher
            • πŸ“„ GameTrackerChange.js
            • πŸ“„ GameTrackerChange.orion
            • πŸ“„ GameTrackerChange.sql
          • πŸ“ RunningSong/
            • πŸ“„ RunningSong1.athena
            • πŸ“„ RunningSong2.athena
            • πŸ“„ RunningSong3.athena
            • πŸ“„ RunningSongChange.cql
            • πŸ“„ RunningSongChange.cypher
            • πŸ“„ RunningSongChange.js
            • πŸ“„ RunningSongChange.orion
            • πŸ“„ RunningSongChange.sql
        • πŸ“„ Prompt.txt
      • πŸ“ Testing/
        • πŸ“ Orion2Schema/
          • πŸ“„ EduPlatform.athena
          • πŸ“„ EduPlatformChange.orion
        • πŸ“ Schema2Orion/
          • πŸ“„ CQL2Orion.cql
          • πŸ“„ MongoDB2Orion.js
          • πŸ“„ Neo4j2Orion.cypher
          • πŸ“„ SQL2Orion.sql
        • πŸ“„ Prompt.txt
    • πŸ“ .M2T/
      • πŸ“ Athena/
        • πŸ“„ Athena2Cassandra.xtend
        • πŸ“„ Athena2MongoDBShemaValidator.xtend
        • πŸ“„ Athena2MySQL.xtend
      • πŸ“ Orion/
        • πŸ“„ Orion2Cassandra.xtend
        • πŸ“„ Orion2MongoDB.xtend
        • πŸ“„ Orion2MySQL.xtend
        • πŸ“ utils/
          • πŸ“„ MongoDBTransactionModule.xtend
          • πŸ“„ SqlProcedureModule.xtend

File Description

Training and Testing Prompts

Each prompt.txt file contains multiple prompts used to train and evaluate the model. The prompts are separated by the delimiter "----", which allows for a clear differentiation of each query or instruction given to the model.

  • Learning folder: Contains the prompts designed for the model to learn the structure and rules of each DSL, including transformations to different database schemas.
  • Testing folder: Contains the prompts used to evaluate the language model's ability to understand and transform code from the DSLs.

Usage Instructions

You can see the example conversations here:

Athena: https://chatgpt.com/share/689a0551-d5f4-800b-9adb-98eb7e14cfa4

Orion: https://chatgpt.com/share/68961d20-1aa8-800b-b9bd-2eca64d7cf1f

  1. Review the prompts.
  2. Execute the prompts.
  3. Evaluate results. Some results will require clarification to improve the model.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •