Skip to content

tum-esi/LLM-MaGe

Repository files navigation

LLM-MaGe: Mashup Generation for the Web of Things using PDDL

Introduction

Welcome to the Mashup Generation for Web of Things using PDDL! This project aims to simplify the process of creating mashups for IoT devices. By utilizing natural language descriptions and the Thing Descriptions (TDs) of available devices, this program automates the generation of PDDL (Planning Domain Definition Language) models and plans, making it easier for end users to connect and operate their IoT devices.

Prerequisites

To run this program, you need to have Python installed on your system. Additionally, you'll need to install the OpenAI package.

Installation

  1. Clone the Repository
  2. and Install dependencies
   pip install -r requirements.txt

Running the program

To run the program, execute gui.py with Python. No special arguments are required.

    python gui.py

How to start using LLM-MaGe

  • Input System Description:

    • Provide a description of your system in natural language. This description should outline what you want to achieve with your IoT devices.
  • Add Thing Descriptions (TDs):

    • Move the TDs of the devices you wish to include in your mashup to the ./input_tds subfolder. These TDs should be correctly formatted and true to the extended specification in the thesis.
  • Generate Mashup:

    • Print both the domain and problem files with the corresponding buttons
    • Click "Generate Goal" to open up the GoalGen screen, which will automatically prompt a goal
    • If not satisfied, refine with the description box in the top left
    • As soon as satisfied, save the goal which prompts some stuff in the background
    • If wanted, it is possible to prompt preconditions now
  • Execute Mashup:

    • Make sure everything above is done first
    • Click "Start mashup"
    • Observe the changes to the output log + the changing problem files

Thank you for using our Mashup Generation tool for the Web of Things! We hope it makes your IoT projects easier and more enjoyable.

About

A automated Web of Things (WoT) Mashup generator using LLMs and PDDLs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published