This project uses Quarkus, the Supersonic Subatomic Java Framework. Java 21 or above is required for building and running.
Learn more about Quarkus: https://quarkus.io.
We've published a container image for easy local execution (replace podman
for docker
for Windows):
podman run ghcr.io/postfinance/swiss-hacks-2024:latest
See available versions here.
Pre-created Login Credentials
For your convenience, we've pre-created login credentials with some sample accounts and transactions:
Username | Password | Role |
---|---|---|
john.doe | strong-password | User |
jane.smith | you-dont-guess-me | User |
jimmy.allen | secure-secret | Admin |
We challenge you to leverage Generative AI and transform the way APIs are tested in the banking sector. Imagine innovative GenAI applications for end-to-end testing that utilize our provided resources:
- Precise standards: ./src/main/resources/openapi/openapi.yml
- Use case definitions: ./spec/Requirements.md
The goal is to develop AI that intelligently suggests improvements during the development/building/testing phase (any or multiple).
The criteria by which we will measure success is documented as well.
- Clone this repository:
git clone git@github.com:postfinance/swiss-hacks.git
- Navigate to the project directory:
cd swiss-hacks
- Build the application using Maven:
./mvnw package
For IntelliJ IDEA Community Edition, install the Quarkus Tools plugin from the marketplace: https://plugins.jetbrains.com/plugin/13234-quarkus-tools.
- Within your IDE or using:
./mvnw compile quarkus:dev
- Access the Dev UI at http://localhost:8080/q/dev (available only in dev mode).
- Package the application:
./mvnw package
-
This creates
quarkus-run.jar
intarget/quarkus-app/
. -
Run the application:
java -jar target/quarkus-app/quarkus-run.jar
- Build the native executable:
./mvnw package -Dnative
- Alternatively, build it in a container if GraalVM is not installed:
./mvnw package -Dnative -Dquarkus.native.container-build=true
- Run the native executable:
./target/swiss-hacks-2024-*-runner
If you want to learn more about building native executables, please consult https://quarkus.io/guides/maven-tooling.
For access to OpenAI Platform, please ask the mentors to receive a token. You're free to use any other language model on your on behalf.
Example using Python:
from openai import OpenAI
client = OpenAI(api_key="<YOUR_TOKEN>")
response = client.chat.completions.create(
model="gpt-4-turbo",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Who won the world series in 2020?"},
{"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."},
{"role": "user", "content": "Where was it played?"}
]
)
// TBD