Skip to content

Conversation

@tao12345666333
Copy link
Contributor

What type of PR is this?

What this PR does / why we need it:

Which issue(s) this PR fixes:

Fixes #33

Release Notes: Yes/No

@github-actions
Copy link

github-actions bot commented Sep 4, 2025

👥 vLLM Semantic Team Notification

The following members have been identified for the changed files in this PR and have been automatically assigned:

📁 src

Owners: @rootfs, @Xunzhuo, @wangchen615
Files changed:

  • src/semantic-router/pkg/extproc/reason_mode_selector.go
  • src/semantic-router/pkg/extproc/request_handler.go
  • src/semantic-router/pkg/metrics/metrics.go

This comment was automatically generated based on the OWNER files in the repository.

@netlify
Copy link

netlify bot commented Sep 4, 2025

Deploy Preview for vllm-semantic-router ready!

Name Link
🔨 Latest commit 467f36a
🔍 Latest deploy log https://app.netlify.com/projects/vllm-semantic-router/deploys/68bafc77c782d60008b9810d
😎 Deploy Preview https://deploy-preview-56--vllm-semantic-router.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@rootfs
Copy link
Collaborator

rootfs commented Sep 4, 2025

@tao12345666333 thanks for starting up this! I am also working on the benchmark script to make it easier to use. So when you are testing the reasoning controller, please verify it with a reasoning model.

We are also going to add an e2e CI to test this out.

@tao12345666333
Copy link
Contributor Author

@rootfs Glad to hear that, I'll verify it this way. Thank you!

@Xunzhuo
Copy link
Member

Xunzhuo commented Sep 5, 2025

Cool, welcome @tao12345666333 :)

@tao12345666333 tao12345666333 marked this pull request as ready for review September 5, 2025 11:31
@rootfs
Copy link
Collaborator

rootfs commented Sep 5, 2025

@tao12345666333 thanks for the prompt action! Would you please rebase?

}

// getModelFamilyAndTemplateParam returns a normalized model family name and the template param to be used (if any)
func getModelFamilyAndTemplateParam(model string) (string, string) {
Copy link
Collaborator

@rootfs rootfs Sep 5, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you add a unit test for this? you can do it in a follow up PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should add an UT in this PR, let us make sure it does not break the strategy for modifying the body.

)

// ReasoningDecisions tracks the reasoning mode decision outcome by category, model, and effort
ReasoningDecisions = promauto.NewCounterVec(
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please come up with a follow up PR to add them to the doc

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added an issue for tracking #62

if strings.Contains(lower, "qwen3") {
return "qwen3", "enable_thinking"
}
if strings.Contains(lower, "deepseek") || strings.Contains(lower, "ds") {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ds is too broad to me. Maybe we should also add a config validation to detect if there are conflict or duplicate model names with ds in them but not actually deepseek..

Copy link
Collaborator

@rootfs rootfs Sep 5, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would you add an issue and follow up with this in the next PR for more robust model name filter?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I write "ds" here because many people (including on social media) refer to DeepSeek as "ds" and Claude Code as "cc." 🤣

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I created an issue for tracking #61

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

my setup modelname for deepseek-v3 is also ds-v3 😄

Signed-off-by: Jintao Zhang <[email protected]>
@rootfs
Copy link
Collaborator

rootfs commented Sep 5, 2025

@tao12345666333 for the reasoning e2e test on CI github action, do you like to give it a try? You can start by creating the script to setup the env and verification process and we'll use your work in github action. Thanks

@rootfs rootfs merged commit ddc86e3 into vllm-project:main Sep 5, 2025
9 checks passed
Copy link
Member

@Xunzhuo Xunzhuo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

plz add UT in a follow-up

}

// getModelFamilyAndTemplateParam returns a normalized model family name and the template param to be used (if any)
func getModelFamilyAndTemplateParam(model string) (string, string) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should add an UT in this PR, let us make sure it does not break the strategy for modifying the body.

if strings.Contains(lower, "qwen3") {
return "qwen3", "enable_thinking"
}
if strings.Contains(lower, "deepseek") || strings.Contains(lower, "ds") {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

my setup modelname for deepseek-v3 is also ds-v3 😄

@tao12345666333
Copy link
Contributor Author

@tao12345666333 for the reasoning e2e test on CI github action, do you like to give it a try? You can start by creating the script to setup the env and verification process and we'll use your work in github action. Thanks

@rootfs Sure. Please assign an issue to me. I'm happy to give it a try

@tao12345666333
Copy link
Contributor Author

plz add UT in a follow-up

Sure. #56 (comment)

I will submit the follow-up PR soon.

@tao12345666333 tao12345666333 deleted the feat-reasoning-mode-ctl branch September 5, 2025 15:18
@rootfs
Copy link
Collaborator

rootfs commented Sep 5, 2025

plz add UT in a follow-up

Sure. #56 (comment)

I will submit the follow-up PR soon.

Great! please create an issue and we'll assign it to you

@tao12345666333
Copy link
Contributor Author

@rootfs I have submitted a PR #63

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[v0.1] Model Selection and Configuration: Reasoning mode controller

4 participants