# Multi-tenancy collection with different embedding models?

**URL:** <https://forum.weaviate.io/t/multi-tenancy-collection-with-different-embedding-models/21951>\
**Category:** Support\
**Created:** [September 8, 2025, 2:47pm UTC](https://forum.weaviate.io/t/multi-tenancy-collection-with-different-embedding-models/21951 "2025-09-08T14:47:46Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![torbenw](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.weaviate.io/torbenw/32/7536_2.png) [@torbenw](https://forum.weaviate.io/u/torbenw)\
**Post date:** [September 8, 2025, 2:47pm UTC](https://forum.weaviate.io/t/multi-tenancy-collection-with-different-embedding-models/21951/1 "2025-09-08T14:47:46Z")

</div>

### Description

Currently our customers can have multiple collections with vectors created by different embedding models (e.g. “text-embedding-ada-002” or “text-embedding-3-large”). We tried to replace those collections with a single multi-tenancy collection and did not consider the differences in vector dimensions. When trying to migrate the old data to the new collection we then got errors like “new node has a vector with length 3072. Existing nodes have vectors with length 1536: vector dimensions do not match the index dimensions”. I guess there is no way to get this working in a single collection and we would need to have 1 multi-tenancy collection per embedding model. Would that be the best way to solve this?

### Server Setup Information

- Weaviate Server Version: **1.32.2**
- Deployment Method: Kubernetes/Docker
- Multi Node? Number of Running Nodes: 1
- Client Language and Version: Python 3.10
- Multitenancy?: Yes

### Any additional Information

---

<div class="post-metadata">

**Author:** ![DudaNogueira](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.weaviate.io/dudanogueira/32/7846_2.png) [@DudaNogueira](https://forum.weaviate.io/u/DudaNogueira)\
**Post date:** [September 8, 2025, 7:21pm UTC](https://forum.weaviate.io/t/multi-tenancy-collection-with-different-embedding-models/21951/2 "2025-09-08T19:21:03Z")

</div>

hi @torbenw !

Indeed, you cannot have one collection and each tenant choose their own embedding model.

All tenants must have the **same schema and vector configuration**. This means, that all properties and named vectors and their models must be exactly the same for each tenant.

So in your scenario, having one collection per model can be a workaround.

Let me know if this clarifies!

Thanks!

---

<div class="post-metadata">

**Author:** ![Dirk](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.weaviate.io/dirk/32/46_2.png) [@Dirk](https://forum.weaviate.io/u/Dirk)\
**Post date:** [September 9, 2025, 5:34am UTC](https://forum.weaviate.io/t/multi-tenancy-collection-with-different-embedding-models/21951/3 "2025-09-09T05:34:35Z")

</div>

You could also use two named vectors: [Collection definition | Weaviate Documentation](https://docs.weaviate.io/weaviate/config-refs/collections#vector-configuration)

---

<div class="post-metadata">

**Author:** ![torbenw](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.weaviate.io/torbenw/32/7536_2.png) [@torbenw](https://forum.weaviate.io/u/torbenw)\
**Post date:** [September 9, 2025, 2:06pm UTC](https://forum.weaviate.io/t/multi-tenancy-collection-with-different-embedding-models/21951/4 "2025-09-09T14:06:55Z")

</div>

Name vectors sound like a good idea. Is there a way to dynamically add new named vector configs?

---

<div class="post-metadata">

**Author:** ![DudaNogueira](https://yyz1.discourse-cdn.com/flex027/user_avatar/forum.weaviate.io/dudanogueira/32/7846_2.png) [@DudaNogueira](https://forum.weaviate.io/u/DudaNogueira)\
**Post date:** [September 9, 2025, 2:43pm UTC](https://forum.weaviate.io/t/multi-tenancy-collection-with-different-embedding-models/21951/5 "2025-09-09T14:43:18Z")

</div>

Hi!

Since 1.31 you can add new named vectors to already created collections:

> **[Vectorizer and vector index config | Weaviate Documentation](https://docs.weaviate.io/weaviate/manage-collections/vector-config#add-new-named-vectors)**
>
> Specify a vectorizer
