-
Notifications
You must be signed in to change notification settings - Fork 31
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
Server Example #135
Comments
Yep! https://github.com/AI-Planning/planutils/tree/main/environments%2Fserver But also worth pointing out that it's hosted online too so you don't have to. |
Thank you! I used the same parameters in that link to set up my planutils server, but I'm still a little confused on what the server endpoints are. Ideally, I'd like to create a simple python client app that can load a domain.pddl and problem.pddl along with other necessary parameters into a JSON dictionary and send a POST or GET to the planutils server, but I have no idea what the server API is. Is there an explanation or example of using the server API anywhere? Thanks a lot! |
Will hook you up later tonight when I get back to a laptop... |
Thank you for your help. You pointed out in the VS Code thread that I should be trying the planner as a service instead, so I will give that a try. |
So, I got the planutils as a service container running and successfully executed the sample Python domain/problem script using the lama planner. I would like to use the popf planner instead; however, I found that the manifest.json file for popf does not describe any server endpoints, so I copied the ones used for lama:
I'm not sure what additional hooks need to be added to the planutils server to support popf, but I was unable to get this to work using the sample Python app. Are there other files in the server that need to be touched to add popf support? Thanks! |
Great! So the popf planner works in a fairly different manner than lama. Most importantly (and frustratingly), there are no proper plan files produced. You can see the manifest for a very similar planner (optic) over here: https://github.com/AI-Planning/planutils/blob/main/planutils/packages/optic/manifest.json#L7 Note that the call string just pipes it all to a plan file, and then that's the file that is returned. |
Thank you for the replay. I am trying to wrap my head around the mechanics of how a planner's output is routed to the result of a POST request here, and what those mechanics mean for POPF compatibility:
My new POPF manifest.json is:
When I run the Python sample client, even with a known POPF compatible set of domain/problem files, I get a seg fault in the result:
I am likely doing something horribly wrong but do not have the insight to understand what. Would you happen to have any idea what may be happening? When I run the planutils POPF command line utility on my domain and problem files inside the docker container, I successfully get a plan:
|
Hrmz...maybe something funky with the |
Could anyone please provide an example of how to use the planutils server endpoints? I am having difficulty figuring out how to format client requests using the manifest.json files. If I had an example demonstrating something like what the client call for the lama planner looks like, that would go a million miles for my simple brain. Cheers, and great work on this awesome project!
The text was updated successfully, but these errors were encountered: