Skip to content

Commit d4469bd

Browse files
committed
change model name in e2e tests to be real small model supporting multi-modal requests
Signed-off-by: Maya Barnea <mayab@il.ibm.com>
1 parent 9a694cf commit d4469bd

28 files changed

Lines changed: 186 additions & 174 deletions

scripts/kind-dev-env.sh

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,7 @@ EPP_IMAGE="${EPP_IMAGE:-${IMAGE_REGISTRY}/llm-d-router-endpoint-picker:${EPP_TAG
3737
export EPP_IMAGE
3838

3939
# Set the model name to deploy.
40-
# When Encode disaggregation is enabled (multimodal pipeline), default to a
41-
# multimodal model. Otherwise use the standard text-only model.
42-
# Note: DISAGG_E/DISAGG_P are set later in this script, so read the raw env vars here.
43-
if [ "${DISAGG_E:-false}" == "true" ] || [ "${EPD_ENABLED:-false}" == "true" ] || [ "${EPD_ENABLED:-false}" == "\"true\"" ]; then
44-
export MODEL_NAME="${MODEL_NAME:-Qwen/Qwen3-VL-2B-Instruct}"
45-
else
46-
export MODEL_NAME="${MODEL_NAME:-TinyLlama/TinyLlama-1.1B-Chat-v1.0}"
47-
fi
40+
export MODEL_NAME="${MODEL_NAME:-Qwen/Qwen3-VL-2B-Instruct}"
4841
# Extract model family (e.g., "meta-llama" from "meta-llama/Llama-3.1-8B-Instruct")
4942
export MODEL_FAMILY="${MODEL_NAME%%/*}"
5043
# Extract model ID (e.g., "Llama-3.1-8B-Instruct")

test/e2e/configs_test.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
package e2e
22

3+
import (
4+
"github.com/llm-d/llm-d-router/test/utils"
5+
)
6+
37
// Simple EPP configuration for running without P/D
48
const simpleConfig = `apiVersion: llm-d.ai/v1alpha1
59
kind: EndpointPickerConfig
@@ -185,7 +189,7 @@ kind: EndpointPickerConfig
185189
plugins:
186190
- type: token-producer
187191
parameters:
188-
modelName: Qwen/Qwen2.5-1.5B-Instruct
192+
modelName: ` + utils.ModelName + `
189193
vllm:
190194
url: http://localhost:8000
191195
- type: precise-prefix-cache-scorer
@@ -217,7 +221,7 @@ kind: EndpointPickerConfig
217221
plugins:
218222
- type: token-producer
219223
parameters:
220-
modelName: Qwen/Qwen2.5-1.5B-Instruct
224+
modelName: ` + utils.ModelName + `
221225
vllm:
222226
url: http://localhost:8000
223227
- type: precise-prefix-cache-scorer

test/e2e/disruption_test.go

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ var disruptionClient = &http.Client{Timeout: 10 * time.Second}
3333

3434
// sendRawCompletion sends a completion request and returns the HTTP status code.
3535
func sendRawCompletion() (int, error) {
36-
body := fmt.Sprintf(`{"model":"%s","prompt":"%s","max_tokens":10}`, simModelName, simplePrompt)
36+
body := fmt.Sprintf(`{"model":"%s","prompt":"%s","max_tokens":10}`, testutils.ModelName, simplePrompt)
3737
req, err := http.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:%s/v1/completions", port), strings.NewReader(body))
3838
if err != nil {
3939
return 0, err
@@ -99,7 +99,7 @@ var _ = ginkgo.Describe("Disruption tests", ginkgo.Ordered, ginkgo.Label("Disrup
9999
gomega.Expect(decodePods).Should(gomega.HaveLen(2))
100100

101101
ginkgo.By("Verifying requests route successfully before disruption")
102-
nsHdr, _, _ := runCompletion(simplePrompt, simModelName)
102+
nsHdr, _, _ := runCompletion(simplePrompt, testutils.ModelName)
103103
gomega.Expect(nsHdr).Should(gomega.Equal(nsName))
104104

105105
targetPod := decodePods[0]
@@ -112,7 +112,7 @@ var _ = ginkgo.Describe("Disruption tests", ginkgo.Ordered, ginkgo.Label("Disrup
112112

113113
ginkgo.By("Verifying new requests eventually route to a pod other than the killed one")
114114
gomega.Eventually(func() error {
115-
nsHdr, podHdr, _, err := tryCompletion(simplePrompt, simModelName)
115+
nsHdr, podHdr, _, err := tryCompletion(simplePrompt, testutils.ModelName)
116116
if err != nil {
117117
return err
118118
}
@@ -133,7 +133,7 @@ var _ = ginkgo.Describe("Disruption tests", ginkgo.Ordered, ginkgo.Label("Disrup
133133

134134
ginkgo.By("Verifying requests succeed after recovery")
135135
for range 3 {
136-
nsHdr, _, _ = runCompletion(simplePrompt, simModelName)
136+
nsHdr, _, _ = runCompletion(simplePrompt, testutils.ModelName)
137137
gomega.Expect(nsHdr).Should(gomega.Equal(nsName))
138138
}
139139
})
@@ -185,7 +185,7 @@ var _ = ginkgo.Describe("Disruption tests", ginkgo.Ordered, ginkgo.Label("Disrup
185185

186186
ginkgo.By("Verifying requests succeed after recovery")
187187
for range 3 {
188-
nsHdr, _, _ := runCompletion(simplePrompt, simModelName)
188+
nsHdr, _, _ := runCompletion(simplePrompt, testutils.ModelName)
189189
gomega.Expect(nsHdr).Should(gomega.Equal(nsName))
190190
}
191191
})
@@ -205,7 +205,7 @@ var _ = ginkgo.Describe("Disruption tests", ginkgo.Ordered, ginkgo.Label("Disrup
205205
gomega.Expect(decodePods).Should(gomega.HaveLen(1))
206206

207207
ginkgo.By("Verifying requests succeed before disruption")
208-
nsHdr, _, _ := runCompletion(simplePrompt, simModelName)
208+
nsHdr, _, _ := runCompletion(simplePrompt, testutils.ModelName)
209209
gomega.Expect(nsHdr).Should(gomega.Equal(nsName))
210210

211211
ginkgo.By("Scaling deployment to zero")
@@ -231,7 +231,7 @@ var _ = ginkgo.Describe("Disruption tests", ginkgo.Ordered, ginkgo.Label("Disrup
231231

232232
ginkgo.By("Verifying requests succeed after recovery")
233233
gomega.Eventually(func() string {
234-
nsHdr, _, _ := runCompletion(simplePrompt, simModelName)
234+
nsHdr, _, _ := runCompletion(simplePrompt, testutils.ModelName)
235235
return nsHdr
236236
}, eppRecoveryTimeout, 2*time.Second).Should(gomega.Equal(nsName))
237237
})
@@ -248,7 +248,7 @@ var _ = ginkgo.Describe("Disruption tests", ginkgo.Ordered, ginkgo.Label("Disrup
248248
ginkgo.DeferCleanup(testutils.DeleteObjects, testConfig, epp)
249249

250250
ginkgo.By("Verifying requests succeed before EPP disruption")
251-
nsHdr, _, _ := runCompletion(simplePrompt, simModelName)
251+
nsHdr, _, _ := runCompletion(simplePrompt, testutils.ModelName)
252252
gomega.Expect(nsHdr).Should(gomega.Equal(nsName))
253253

254254
ginkgo.By("Finding EPP pod")
@@ -297,7 +297,7 @@ var _ = ginkgo.Describe("Disruption tests", ginkgo.Ordered, ginkgo.Label("Disrup
297297
ginkgo.DeferCleanup(testutils.DeleteObjects, testConfig, epp)
298298

299299
ginkgo.By("Verifying requests succeed before disruption")
300-
nsHdr, _, _ := runCompletion(simplePrompt, simModelName)
300+
nsHdr, _, _ := runCompletion(simplePrompt, testutils.ModelName)
301301
gomega.Expect(nsHdr).Should(gomega.Equal(nsName))
302302

303303
ginkgo.By("Starting background traffic")
@@ -341,7 +341,7 @@ var _ = ginkgo.Describe("Disruption tests", ginkgo.Ordered, ginkgo.Label("Disrup
341341

342342
func sendStreamingCompletion(connected chan<- string) error {
343343
longPrompt := strings.Repeat("This is a longer prompt to keep the stream open. ", 20)
344-
body := fmt.Sprintf(`{"model":"%s","prompt":"%s","max_tokens":100,"stream":true}`, simModelName, longPrompt)
344+
body := fmt.Sprintf(`{"model":"%s","prompt":"%s","max_tokens":100,"stream":true}`, testutils.ModelName, longPrompt)
345345
req, err := http.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:%s/v1/completions", port), strings.NewReader(body))
346346
if err != nil {
347347
connected <- ""

test/e2e/e2e_suite_test.go

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,6 @@ const (
3636
crdKustomizePath = "../../config/crd"
3737
// inferExtManifest is the manifest for the inference extension test resources.
3838
inferExtManifest = "../../deploy/components/inference-gateway/inference-pools.yaml"
39-
// simModelName is the test model name.
40-
simModelName = "food-review"
41-
// kvModelName is the model name used in KV tests.
42-
kvModelName = "Qwen/Qwen2.5-1.5B-Instruct"
4339
// envoyManifest is the manifest for the envoy proxy test resources.
4440
envoyManifest = "../../deploy/environments/dev/e2e-infra/envoy.yaml"
4541
// eppManifest is the manifest for the deployment of the EPP
@@ -303,7 +299,7 @@ func createEnvoy() {
303299
}
304300

305301
func createInferencePool(numTargetPorts int, toDelete bool) []string {
306-
poolName := simModelName + "-inference-pool"
302+
poolName := testutils.ModelServerName + "-inference-pool"
307303

308304
if toDelete {
309305
objName := []string{"inferencepool/" + poolName}

0 commit comments

Comments
 (0)