Embodied Robotic LLM RAG Interface - Generative UI Global Hackathon: Agentic Interfaces
AI Tinkerers - Portland
Hackathon Showcase

Embodied Robotic LLM RAG Interface

2 members

Our goal is to use A2UI to compliment the current Llama.cpp, Java, Smol/Gemma/Llama YOLOv11, C++ stack running locally, embodied in a custom robotic platform, with full IMU/Camera/Drive. The project will allow users to control and augment the robot in realtime by interacting with the embodied LLM via interactive RAG.

The semantic database will be updated in realtime to reflect goals and upgrade the knowledge base of the robot.

Integration Design: AGUI Messaging + A2UI Rendering in JavaFX Components:
Agentic Robotics Backend / LLM Agent
Generates or updates A2UI JSON widgets representing the current UI state or next UI step.
Processes user events coming from the UI and updates internal state or robot commands.
AGUI Messaging Layer

Acts as the communication backbone between backend and client UI.
Sends A2UI widget JSON payloads as messages to the client.
Receives user-generated event messages from the client and forwards them to the backend.
JavaFX Client Renderer

Listens for incoming A2UI widget JSON messages via AGUI messaging.
Parses and renders the UI natively using the JavaFX A2UI renderer (like the ExpandedA2UIRenderer).
Captures user interactions (button clicks, input changes), converts them into AGUI event messages, and sends them back to the backend.
Workflow
Initialization
Client connects to AGUI messaging service.
Backend sends initial A2UI widget JSON describing the starting UI.
Rendering

Client receives A2UI JSON message.
JavaFX renderer parses and renders the UI dynamically.
User Interaction

User interacts with UI components.
Client captures events, packages them as AGUI event messages, and sends to backend.
Backend Processing

Backend receives events, updates internal state or robotics commands.
Generates updated A2UI widget JSON reflecting new UI state or robot feedback.
UI Update

AGUI messaging sends updated A2UI JSON to client.
Client re-renders or patches UI accordingly.
Implementation Tips
Messaging Protocol: Use WebSocket, MQTT, or HTTP-based messaging supported by AGUI SDK for real-time communication.

Data Model Sync: Keep a synchronized data model on both client and backend to minimize UI diff and optimize updates.

Event Mapping: Define a clear mapping between A2UI event names and backend handler methods.

Partial Updates: Support partial UI updates or patches if your AGUI messaging supports it, to improve performance.

Error Handling: Gracefully handle malformed or unsupported widgets/events.

Security: Secure messaging channels and validate inputs/events.

Initially, a A2UI to JavaFX pipeline will be created for rendering the controls in a high-performance display environment that has the potential to be expanded to a web-based engine. JavaFX also contains its own XML-based rendering engine for which XSLT can be employed to translate A2UI to the JavaFX FXML format. The AG-UI Java SDK will then be leveraged to employ the JSON messaging protocols that will drive the rendering pipeline form the embodied robotic LLMs and associated subsystems.

Pre-existing installed stack includes Llama.cpp, Java, Smol/Gemma/Llama YOLOv11, C++, running locally, embodied in custom robotic platform with full IMU/Camera/Drive. Relatrix semantic database built on Meta RocksDb. Pico-based hardware control via Marlinspike project.

A2UI AI Tinkerers C++ CopilotKit Eclipse Google DeepMind Java JavaFX Llama.cpp Smol/Gemma/Llama YOLOv11 VS code

Generative UI Global Hackathon: Agentic Interface Embodied Robotic LLM RAG

Summarizing URL...

Submission Custom Robotic Platform In Motion

Summarizing URL...