-
-
Notifications
You must be signed in to change notification settings - Fork 7.3k
[Feature][CLI] Unify configuration for structured outputs via --structured-output-config
#17420
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
base: main
Are you sure you want to change the base?
Conversation
👋 Hi! Thank you for contributing to the vLLM project. 💬 Join our developer Slack at https://slack.vllm.ai to discuss your PR in #pr-reviews, coordinate on features in #feat- channels, or join special interest groups in #sig- channels. Just a reminder: PRs would not trigger full CI run by default. Instead, it would only run Once the PR is approved and ready to go, your PR reviewer(s) can run CI to test the changes comprehensively before merging. To run CI, PR reviewers can either: Add 🚀 |
--structured-output-config
description=DecodingConfig.__doc__, | ||
description=StructuredOutputConfig.__doc__, | ||
) | ||
structured_output_group.add_argument( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
question for @hmellor:
For CLI do we want to add a deprecated=True
to add_argument instead? right now I will just include notice in docstring
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh that's neat, yeah I'd prefer adding deprecated=True
to the argument rather than changing the docstring when we are deprecating args.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will open a separate PR for this then
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not a full review but I've left some initial comments.
I'm not a huge fan of using JSON to bundle what could be separate arguments. As it is right now, each argument is listed and clearly described (which we get for free because we documented it in the dataclass anyway).
If you bundle it into JSON:
- the documentation and
--help
text won't look as nice - you'll have to maintain separate documentation explaining all the args in the dataclass
- it will become out of sync with the dataclass documentation
edit: After speaking to @aarnphm offline, I'm going to try adding the Config classes to the API reference directly. And then the JSON arg could reference that directly with no duplication or missing of information.
This pull request has merge conflicts that must be resolved before it can be |
2c202cd
to
f092460
Compare
This pull request has merge conflicts that must be resolved before it can be |
Signed-off-by: Aaron Pham <contact@aarnphm.xyz>
examples/online_serving/openai_chat_completion_client_with_tools_required.py
Outdated
Show resolved
Hide resolved
717a66a
to
b963e74
Compare
Signed-off-by: Aaron Pham <contact@aarnphm.xyz>
b963e74
to
bd2b2e0
Compare
Signed-off-by: Aaron Pham <contact@aarnphm.xyz>
e299540
to
c70b8cf
Compare
Signed-off-by: Aaron Pham <contact@aarnphm.xyz>
958eacf
to
26419c4
Compare
Signed-off-by: Aaron Pham <contact@aarnphm.xyz>
This pull request has merge conflicts that must be resolved before it can be |
This pull request has merge conflicts that must be resolved before it can be |
This PR introduces the args
--structured-output-config
as a way to unify all related structured outputs config in one CLI field.This would help simplify general UX for specifying custom options with backends.
This means all previous arguments are considered deprecated, and
--structured-output-config
should be used going forward (v0.10.x)This is the first of many to move all
guided_decoding
->structured_output
namespace. I plan to finish this migration by v0.10.xfor both OpenAI and all path within vLLM codebase.
Signed-off-by: Aaron Pham contact@aarnphm.xyz