Skip to content
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

A/B Model Traffic split is not working as expected after edit of Experiment CR #5181

Open
DineshKrishnanG opened this issue Jan 4, 2024 · 1 comment
Labels

Comments

@DineshKrishnanG
Copy link

Describe the bug

A/B Model Traffic split is not working as expected after edit of Experiment CR.

Based on the Config Dump from envoy, the weighted routes keeps getting appended. It should replace the old weight with updated weight. Instead it maintains all the previous configuration.
The issue might be related to this, as the traffic split happens correctly when create Experiment with 100% and 0% first time itself.

To reproduce

  1. Create a Experiment with 50% traffic split ( Reference: https://docs.seldon.io/projects/seldon-core/en/v2.6.0/contents/examples/k8s-examples.html#experiment)
  2. Verify the request goes to both the models - SUCCESS
  3. Modify the Experiment to 0% traffic split to 'iris' and 100% traffic split to iris2
  4. Invoke the inference calls using REST/GRPC
  5. Verify the request goes to only model with iris2(100%) and not to iris(0%) - FAIL
    - > Traffic is routing to both iris and iris2 model

Expected behaviour

The traffic split should happen based on the edited configuration.

E.g., When weight is updated from 50% to 0%, traffic should not be routed to the model.
Expected Behaviour - Traffic to be only routed to iris2 model
Current Behaviour - Traffic is routing to both iris and iris2 model

Based on the Config Dump from envoy, the weighted routes keeps getting appended. It should replace the old weight with updated weight. Instead it maintains all the previous configuration.
The issue might be related to this, as the traffic split happens correctly when Experiment is created with 100% and 0% first time itself.

Environment

Kubernetes version : 1.27.7
Seldon Version : 2.6.0

Model Details

  • Images of your model: [Output of: kubectl get seldondeployment -n <yourmodelnamespace> <seldondepname> -o yaml | grep image: where <yourmodelnamespace>]
  • Logs of your model: [You can get the logs of your model by running kubectl logs -n <yourmodelnamespace> <seldonpodname> <container>]
@KengoA
Copy link
Contributor

KengoA commented Feb 20, 2024

@DineshKrishnanG Thank you for raising this. I created the experiment as per the documentation using 2.7.0 and the traffic split seems to work fine after the editing Experiment CR. Could you expand on how you're modifying the experiment and provide more logs if possible?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants