
Qwen hosted embeddings and downloadable Qwen or BGE checkpoints provide different routes away from an existing OpenAI embedding integration. The important migration work happens in the index: documents and queries must use the same embedding contract. An API request that succeeds is only the first check.
This guide compares official documentation reviewed October 2, 2026. It does not report a retrieval benchmark, a paid API run or a finding that one model is more accurate. Use the migration procedure below to establish that result on your own corpus.
The Qwen3.7 hosted model card lists configurable dimensions from 256 to 2,560, a 131,072-token model input limit and a Singapore international standard rate of $0.07 per million input tokens. The embedding API guide documents a stricter 128,000-token synchronous request limit. Apply the request limit rather than sending input at the larger model-card ceiling.
The Qwen3 Embedding repository separately publishes 0.6B, 4B and 8B checkpoints with 32K input windows. Their maximum dimensions are 1,024, 2,560 and 4,096 respectively. Those checkpoint specifications are not the hosted Qwen3.7 contract.
BGE-M3's model card documents a 1,024-dimensional dense representation, an 8,192-token sequence length and additional sparse and multi-vector retrieval options. If your database stores one dense vector per chunk, evaluate that particular output; do not assume it automatically implements every retrieval mode in the model package.
| Choice | Deployment | Index decision |
|---|---|---|
| Qwen3.7 hosted | Regional API | Fix the requested dimension and endpoint |
| Qwen3 Embedding 0.6B | Downloadable checkpoint | Fix checkpoint revision and query format |
| BGE-M3 | Downloadable checkpoint | Select dense, sparse or multi-vector retrieval explicitly |
Suppose the current collection stores 1,024-dimensional vectors. A replacement that also returns 1,024 dimensions can satisfy the database schema while still producing a different coordinate space. Comparing a new query vector against old document vectors then becomes an invalid migration shortcut.
Create a second collection for the replacement model. Record the exact model ID, dimension, chunking revision, query instruction and document preprocessing alongside it. Re-embed the source documents rather than copying old vectors. Keep stable document IDs so search results from the two collections can be compared and traced to the same source material.
Treat any change to those settings as an index version. A dimension change is easy to detect because insertion fails; a formatting or normalization change can be harder to notice because the database continues to accept vectors. Versioning makes the less obvious changes reviewable.
Check the chosen model's documented task instructions and text formatting before writing a common adapter. A search query asks for a relevant passage; a document represents candidate content. Passing the same template everywhere can discard the model's intended usage.
Keep these transformations in named functions rather than scattered string concatenation. Save a few transformed examples for review, including an English query, a Mandarin query and code containing punctuation. Apply the same document transformation to the initial rebuild and to future incremental writes.
Validate every returned vector for expected length and finite numeric values before inserting it. Confirm that response positions map back to the original batch items. A batch retry must not cause one document's vector to be attached to another document ID. Those are integration checks that can be performed independently of a model-quality comparison.
First take a source inventory: document count, deleted IDs, newest update time and the chunking procedure. Build the replacement collection from that inventory and reconcile counts before allowing it to serve queries. Documents changed during the rebuild need a catch-up pass or controlled dual writing.
Next run shadow searches. Send the same query to both indexes, but keep the current production result as the user-visible answer. Log result document IDs, scores and timing separately. Score values from different embedding spaces are not directly comparable, so review ranked results and relevance labels instead of subtracting raw similarity numbers.
Switch a small share of traffic only after the new collection is complete and retrieval checks pass. Keep a routing flag that selects the old collection without another rebuild. Continue updating the old route through the rollback period, or document the refresh needed before it can safely receive traffic again.
Assemble queries with known relevant documents. Include exact product names, paraphrases, cross-language questions and an unanswerable request. Label relevance before looking at the replacement rankings. Recall at a chosen cutoff tells you whether relevant documents enter the candidate set; it does not prove the final generated answer is correct.
Record misses individually. A chunk boundary, stale source record or bad query instruction can explain a failure that a general model leaderboard cannot. If a reranker follows retrieval, keep its configuration fixed during the embedding comparison, then evaluate a reranker change separately through the reranking guide.
Budget for the initial corpus re-embedding, ongoing writes, query embeddings, parallel storage and engineering time. The listed hosted input rate is one component. Self-hosting replaces part of that bill with compute and operations. Start with the embedding directory and an index version you can reproduce.
Keep it for rollback, but create a new collection for vectors produced by a different model. Equal dimensions do not establish a shared embedding space.
No. This guide treats the hosted model and downloadable checkpoint as separate contracts with different documented input and dimension limits.
The checkpoint provides model capabilities, not your provider account or serving interface. You need a runtime, an output mode and an adapter that matches your database and query pipeline.