SDSC/open-pulse-hackathon-data-analysis huggingface dataset:
Repository: hassan11196/starter-slack-boltjs
Primary language: JavaScript

# Slack Boltjs Starter

Deploy a Slack Bot onto Cyclic using Boltjs framework.

[![Deploy to Cyclic](https://deploy.cyclic.app/button.svg)](https://deploy.cyclic.app/)

## Setup

1. Deploy this starter
   - Copy the app URL for use when creating the slack app
1. Create Slack App
   - Follow this quick start to create a Slack App (aka bot): https://api.slack.com/start/building/bolt-js
   - The events url is the URL of your app with `/slack/events`
   - Example: `https://some-fun-animal.cyclic.app/slack/events/`
1. Set secret values
   - Copy your secret values to an `.env` file in your fork of this repo
   - Copy your secret values your Cyclic App
1. Confirm Events URL
   - You will need to set the secret values before you can register your events url

### Example Secret Values

```toml
SLACK_SIGNING_SECRET=somelongalphanumericwithouthyphens
SLACK_BOT_TOKEN=xoxb-some-long-alpha-numeric-with-hyphens
```

## Further References

- Slack Boltjs Concepts: https://slack.dev/bolt-js/concepts
- Slack Dev console: https://api.slack.com/apps
Repository: hugorecio-7/LauzHack-2025
Primary language: Python

# WeatherWear - LAUZHACK2025 (AXA)

Have you ever doubted what to wear given the weather outdoors?
Has it ever happened that, while traveling, you were unaware of the climate at your things? 

With **WeatherWear**, you can upload a photo of your outfit, choose a location and a start date and end date, and the system will tell you:

- Based on thermal sensation and precipitations, how will you feel: **too cold / too hot / OK**
- What garments you are **missing** or should **remove** for that weather
- Explicit **weather risks** (rain, wind, cold, heat, UV)

## Technology used:

- **SAM3** – segments the outfit photo into individual garments  
- **Open-Meteo API** – gets forecast for the period of time specified  
- **Gemini 2.5 Pro** – describes each garment more accurately and combines garments and weather to generate recommendations
- **FastAPI + Vite** – backend & frontend integration

---

## Tech Stack

**Backend**

- Python 3.10+
- FastAPI, Uvicorn
- `transformers` (SAM3: `facebook/sam3`)
- `google-generativeai` (Gemini)
- `requests` (Open-Meteo)
- Environment configuration via `.env`
- Dependencies listed in `requirements.txt`

**Frontend**

- Vite
- Vanilla JavaScript
- HTML + CSS

---

## Project Structure

```text
LauzHack-2025/
├── backend/
│   └── app/
│       ├── api/
│       │   ├── pipeline.py     # pipeline of the full recommendation
│       │   ├── weather.py      # Weather JSON API
│       │   ├── vision.py       #  image to garments
│       │   └── recommendation.py   # direct recommendation endpoints
│       ├── services/
│       │   ├── sam3/
│       │   │   ├── sam3.py     # SAM3 model loading & segmentation
│       │   │   ├── runner.py   # run_sam3_on_image helper
│       │   │   ├── data/       # automatically generated pictures when calling the system
│       │   │   └── crops/      # automatically generated cropped garments
│       │   ├── vision_garments_extractor.py  # Gemini Vision: crops → garment strings
│       │   ├── weather_json.py # Open-Meteo client, returns full JSON
│       │   ├── recommendation_engine.py  # Gemini 2.5 Pro reasoning engine
│       │   └── gemini_client.py  # Connect to Gemini API
│       └── models/
│           └── schemas.py     
└── frontend/
│    ├── index.html
│    ├── package.json
│    └── src/
│        ├── main.js # full frontend implementation            
│        ├── backendApi.js # connect the frontend with the backend      
│        └── style.css # style formatting
│       
└──requirements.txt

---

## Project Structure (Simplified)

- Python 3.10 or higher
- Node.js 18 or higher
- A Gemini API key (from Google AI Studio / Google Cloud)
- Internet access (for Open-Meteo API)

# How to run the project

```
#To connect to the backend 
cd backend
uvicorn main:app --reload
```

```
#To connect to the frontend 
cd frontend
npl run dev
```
Repository: ihchaeryu/LauzHack23-RHR
Primary language: Jupyter Notebook

# DistilLM: The Sales Support Employee You Wish You Had

## 2023 LauzHack AWS & AXA Challenge

<br>

### Team

- Gabriel Agerholm
- Ihchae Ryu
- Keita Hidaka

### Goal of Challenge

1. Extract general problems from customer reviews dataset and present useful feedback
2. Useful application of LLMs

### Dataset and Tools

- [Amazon Reviews: Unlocked Mobile Phones](https://www.kaggle.com/datasets/PromptCloudHQ/amazon-reviews-unlocked-mobile-phones/)
- OpenAI API (model: gpt-3.5-turbo)

### Process and Results

**1. Text distilled via LLM**

![LLM summarizing reviews](results/summarizing.png)

**2. Embedding text via OpenAI**
   
![Embedding of summaries](results/embedding.png)

**3. Clustering via K-Means**

![Clustering visualization](results/clustering.png)

**4. Analyzing and extracting cluster themes**

![Cluster themes 0, 1](results/clusters_theme1.png)

![Cluster themes 2, 3](results/clusters_theme2.png)

**5. Reliable issues in wordclouds**

![Cluster wordcloud 0](results/clusters_wordcloud1.png)

![Cluster wordcloud 1](results/clusters_wordcloud2.png)

![Cluster wordcloud 2](results/clusters_wordcloud3.png)

![Cluster wordcloud 3](results/clusters_wordcloud4.png)
Repository: jofremosegui/lauzhack
Primary language: Jupyter Notebook

<h6 align="center"> LauzHack - EPFL</h6>

<h1 align="center">UBS Efficient Entity Resolution: Clustering and Embedding-Based Matching</h1>

<h6 align="center">
Daniela Álvarez, Elena Alegret, Jofre Moseguí, Andrea Quiroz
</h6>

<div style="text-align: justify;">
This project focuses on resolving external counterparties efficiently by combining clustering, embeddings, and similarity-based classification. Instead of comparing all entities exhaustively, we use clustering and embedding-based techniques to narrow down potential matches, significantly improving computational efficiency and scalability.
</div>

###### The Challenge
Comparing 1.4 million entities directly is computationally prohibitive, leading to billions of pairwise comparisons. Our approach minimizes this complexity by:
1. Pre-clustering entities into ~1400 groups using K-Means.
2. Embedding new entries to find their nearest cluster centroid.
3. Resolving entities within clusters based on similarity measures.

#### Workflow overview

<p align="center">
    <img width="550" alt="Screenshot 2024-12-01 at 12 00 05" src="https://github.com/user-attachments/assets/cde4b524-aee1-49ff-8bea-742b4dc2d4af">
    <img width="450" alt="Screenshot 2024-12-01 at 12 00 32" src="https://github.com/user-attachments/assets/d09b16d5-c4b9-4c93-b984-dbabd7c37977">

</p>

<p align="center">
    <em>Figure 1: K-Means Structure Overview </em>  &emsp;&emsp;&emsp;&emsp;&emsp;&emsp;
    <span style="margin-left: 110px;"> <em>Figure 2: New Entry Structure Overview</em> </span>

</p>