-
Notifications
You must be signed in to change notification settings - Fork 16
Add feature for blop to create JSON requests sent to the qserver rest api #110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
This is what we built bluesky-adaptive for. I believe we made some changes to make this compatible in this PR: #86 |
@maffettone are there any elements that blop has that adaptive doesn't have? I am new to both and have no preference |
Good question. Bluesky adaptive is solely a harness, moving toward an API spec. While it has some example agents (basic bayesopt or sklearn stuff) It is meant to be agnostic to the kinds of logic you are using for your agent, aka bring-your-own agent. So in my view of this, BLOP brings the logic, bluesky-adaptive brings the integration harness. The design choice to integrate BLOP tightly with an |
When I looked at bluesky-adaptive over a year ago it was just doing the "lockstep" approach. I am looking for an agent which can interact asynchronously with the queueserver at the "interplan" level. Are the changes required for these docs still pending: https://blueskyproject.io/bluesky-adaptive/tutorials/async.html Or is it ready to try out? |
Ready to try out! I just haven't had the time to write a good tutorial using bluesky pods. Because the async approach requires a bit more stack (tiled, message bus, qserver, etc). Hopefully this is a good jumping off point. https://blueskyproject.io/bluesky-adaptive/how-to/extend-my-tool.html We're hiring to get more active development on this, so feel free to be a squeaky wheel where this doesn't meet your needs |
I'll give it a go. We already have all of the rest of the stack in containers, it's easy to deploy. If I have questions I'll get back to you, better if I end up with a demo I'll try and share it. |
Blop currently utilizes its own run engine for executing plans. If a beamline wants to only run plans through the Qserver then integrating blop with its full functionality requires going against this approach.
If blop could create a JSON request (eventually sent to the qserver through its REST API) then we could still run all plans through the qserver while keeping the functionality of the blop agent. Blop in this mode would not directly execute the plan through a run engine.
This functionality would readily support future interfaces which are centered around the queue server.
Sample diagram of proposed functionality:
@mrakitin @maffettone @whs92
The text was updated successfully, but these errors were encountered: