- 2025-03 Research paper Logical and Physical Optimizations for SQL Query Execution over Large Language Models Accepted to SIGMOD 2025
Galois is written in Java, and require a working JDK (>=21).
In addition, the following tools/subscriptions are needed:
- PostgreSQL - required for all projects
- Ollama - required to run experiments locally. In order to use Ollama. Note that Ollama might have low performance on some hosts, and it is suggested only for small models (e.g.: llama3.1:8b).
- TogetherAI API Key - optional - A valid subscription on TogetherAI is needed to run larger models (as
llama3.1:70b), or to run RAG experiments. In order to use TogetherAI, theTOGETHERAI_APIneed to be specified. - ChromaDB - optional - Needed only for RAG experiments
All datasets are available in the resources folder
The project contains several Experiments. For each experiment, queries and prompts are defined in the corresponding test executor classes:
- TestRunFlight2Batch
- TestRunFlight4Batch
- TestRunMoviesBatch
- TestRunRAGFortuneBatch
- TestRunRAGPremierLeagueBatch
- TestRunSpiderGeoBatch
- TestRunUSAPresidentsBatch
- TestRunVenezuelaPresidentsBatch
- TestRunWorld1Batch
./gradlew -i :core:test --tests "galois.test.experiments.run.batch.<EXPERIMENT-TO-EXECUTE>"
For example
./gradlew -i :core:test --tests "galois.test.experiments.run.batch.TestRunFlight2Batch"