-
Notifications
You must be signed in to change notification settings - Fork 33
Board Interfaces
Dimitri Glazkov edited this page Dec 14, 2024
·
9 revisions
This is a proposal to implement interface-like functionality in Breadboard.
The motivating use case:
- A component exposes a
behaviors: ["board"]
port, intended for plugging in a "model board". - The "model board" must conform to a particular type of interface, which includes both input/output schema and potentially an exchange protocol
- Examples of exchange protocol:
- a "model board" accepts two kinds of requests. One to get information about available models and their capabilities (can it output images? or just text? does it support system instructions or function calls?) and another to generate content. This can't be easily/succinctly expressed just by JSON schema.
- a "worker board" recognizes both an "introduction" and "do work" requests.
- Examples of exchange protocol:
- At design time, when dragging a board reference into workspace, we want to make sure that only ports that accept "model boards" light up.
- How do we know whether or not any given board is a "model board"?