changed app name
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
**Vassal: Technical preparation for adding documentation**
|
||||
**Vaessl: Technical preparation for adding documentation**
|
||||
|
||||
Before documenting all my research for the planning phase of the app there are several technical preparations to arrange:
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
**Vassal: Product and technical vision**
|
||||
**Vaessl: Product and technical vision**
|
||||
|
||||
# Product vision
|
||||
Vassal is an AI-powered bridge designed to connect physical reality to digital management systems. It functions as an intelligent intermediary that performs image analysis and semantic search, enriching raw data before "serving" it to a primary application via REST API.
|
||||
Vaessl is an AI-powered bridge designed to connect physical reality to digital management systems. It functions as an intelligent intermediary that performs image analysis and semantic search, enriching raw data before "serving" it to a primary application via REST API.
|
||||
|
||||
# Technical requirements & stack
|
||||
|
||||
@@ -17,7 +17,7 @@ Vassal is an AI-powered bridge designed to connect physical reality to digital m
|
||||
|
||||
- AI Orchestration: Spring AI
|
||||
|
||||
- AI Gateway: LiteLLM (A proxy container that allows Vassal to communicate with various LLM providers—such as Gemini, Claude, or local models—using a unified protocol).
|
||||
- AI Gateway: LiteLLM (A proxy container that allows Vaessl to communicate with various LLM providers—such as Gemini, Claude, or local models—using a unified protocol).
|
||||
|
||||
- Core Task: Managing the lifecycle of an item from initial photo upload to final API export.
|
||||
|
||||
@@ -28,29 +28,29 @@ Vassal is an AI-powered bridge designed to connect physical reality to digital m
|
||||
|
||||
# Functionality
|
||||
## Intelligent search
|
||||
Vassal does not rely on exact word matching. Because it stores data in a vector-capable database, users can search via Natural Language Prompts.
|
||||
Vaessl does not rely on exact word matching. Because it stores data in a vector-capable database, users can search via Natural Language Prompts.
|
||||
|
||||
Example: Searching for "tool to tighten a bolt" will return a "Wrench," even if the word "bolt" or "tighten" isn't in the item's title.
|
||||
|
||||
Process: The search prompt is converted into a vector by the AI, and Postgres performs a "Cosine Similarity" check to find the closest matches in the staging or history tables.
|
||||
|
||||
## Image processing workflow (Start to Finish)
|
||||
The image processing is the heart of Vassal's "bridge" functionality. It ensures data quality before it reaches your primary app.
|
||||
The image processing is the heart of Vaessl's "bridge" functionality. It ensures data quality before it reaches your primary app.
|
||||
|
||||
- Ingestion: When a photo is uploaded, the raw image and its initial metadata are saved into a temporary staging table in Postgres.
|
||||
|
||||
- Analysis: Vassal sends the image to the AI (via LiteLLM). The AI identifies the items and returns structured data (names, categories, coordinates).
|
||||
- Analysis: Vaessl sends the image to the AI (via LiteLLM). The AI identifies the items and returns structured data (names, categories, coordinates).
|
||||
|
||||
- Expansion: The database creates individual records for every detected item, linking them to the original source photo. These records are marked with a STAGED status.
|
||||
|
||||
- Refinement: The user interacts with the UI to edit, delete, or confirm the AI's findings. At this point, Spring AI generates a vector embedding of the final description and stores it in the pgvector column for future searching.
|
||||
|
||||
- Execution: Once the user hits "Confirm," Vassal maps the staged data to the target application's format (e.g., Homebox JSON) and pushes it via REST API.
|
||||
- Execution: Once the user hits "Confirm," Vaessl maps the staged data to the target application's format (e.g., Homebox JSON) and pushes it via REST API.
|
||||
|
||||
- Cleanup: Upon successful export, the staged record is either archived or removed from the local database, keeping the bridge lean.
|
||||
|
||||
## Deployment
|
||||
Vassal is deployed via Docker Compose for high portability.
|
||||
Vaessl is deployed via Docker Compose for high portability.
|
||||
|
||||
- Container 1: Next.js (Web UI)
|
||||
- Container 2: Spring Boot
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
**Vassal: Project Goals**
|
||||
**Vaessl: Project Goals**
|
||||
|
||||
# Primary Objective
|
||||
|
||||
The goal of Vassal is to bridge the gap between unstructured physical data (images) and structured digital systems (Inventory APIs). This project serves as a technical deep-dive into the integration of Generative AI within a traditional Full-Stack Java/Spring Boot environment.
|
||||
The goal of Vaessl is to bridge the gap between unstructured physical data (images) and structured digital systems (Inventory APIs). This project serves as a technical deep-dive into the integration of Generative AI within a traditional Full-Stack Java/Spring Boot environment.
|
||||
|
||||
# Learning & Development Pillars
|
||||
|
||||
@@ -20,7 +20,7 @@ While the end product is a functional utility, the development process is specif
|
||||
|
||||
# Product Goals (Public Value)
|
||||
|
||||
Vassal is intended to be a useful tool for the public, specifically those utilizing self-hosted inventory systems like Homebox.
|
||||
Vaessl is intended to be a useful tool for the public, specifically those utilizing self-hosted inventory systems like Homebox.
|
||||
|
||||
- Intuitive Discovery: Replace rigid keyword searches with intent-based search (e.g., finding a "Soldering Iron" when the user searches for "fix electronics").
|
||||
|
||||
@@ -30,7 +30,7 @@ Vassal is intended to be a useful tool for the public, specifically those utiliz
|
||||
|
||||
- Phase 1: Foundation (Current)
|
||||
* Deploy the core infrastructure (PostgreSQL + pgvector, LiteLLM, Spring Boot Skeleton, Next.Js frontend).
|
||||
* Establish the bridge between the Vassal backend and a demo Homebox instance.
|
||||
* Establish the bridge between the Vaessl backend and a demo Homebox instance.
|
||||
|
||||
- Phase 2: The Processing Pipeline
|
||||
* Implement the image processing workflow: Upload $\rightarrow$ AI analysis $\rightarrow$ staging Table.
|
||||
|
||||
Reference in New Issue
Block a user