---
title: embedding | CodeWeaver Docs
description: API reference for codeweaver.providers.types.embedding
url: "https://docs.knitli.com/api/providers/types/embedding"
type: static
generatedAt: "2026-04-17T17:21:09.377Z"
---

# embedding
       [Open in ChatGPT](https://chatgpt.com/?q=Read%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F.%20I%20want%20to%20ask%20questions%20about%20it.)[Open in Claude](https://claude.ai/new?q=Read%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F.%20I%20want%20to%20ask%20questions%20about%20it.)[View in Markdown](/codeweaver/api/providers/types/embedding.md)       [Share on LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F)[Share on X](https://x.com/intent/tweet?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F&text=embedding)[Share on Threads](https://threads.net/intent/post?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F&text=embedding)[Share on Bluesky](https://bsky.app/intent/compose?text=embedding%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F)[Share on Facebook](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F)[Share on Reddit](https://reddit.com/submit?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F&title=embedding)[Share on Hacker News](https://news.ycombinator.com/submitlink?u=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F&t=embedding)[Share on Email](mailto:?subject=embedding&body=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F)[Share on WhatsApp](https://wa.me/?text=embedding%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F)[Share on Telegram](https://t.me/share/url?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fproviders%2Ftypes%2Fembedding%2F&text=embedding)
# `codeweaver.providers.types.embedding`
[Section titled “codeweaver.providers.types.embedding”](#codeweaverproviderstypesembedding)
Embedding-related types and classes for provider systems.

## Class: `ConfiguredCapability`
[Section titled “Class: ConfiguredCapability”](#class-configuredcapability)
Contains a capability and its associated configuration.

Note: user-defined capabilities may not have a capabilities object, but hopefully they define one :). If they don’t we have to assume conservative defaults.

For asymmetric embedding configurations, the config field may be an AsymmetricEmbeddingProviderSettings, which contains both embed_provider and query_provider settings.

### Method: `datatype`
[Section titled “Method: datatype”](#method-datatype)

**

```
datatype()
```

Get the data type of the embedding vectors for this capability.

### Method: `dimension`
[Section titled “Method: dimension”](#method-dimension)

**

```
dimension()
```

Get the dimensionality of the embedding vectors for this capability.

### Method: `distance`
[Section titled “Method: distance”](#method-distance)

**

```
distance()
```

Get the preferred distance metric for this capability.

## Class: `EmbeddingCapabilityGroup`
[Section titled “Class: EmbeddingCapabilityGroup”](#class-embeddingcapabilitygroup)
A group of embedding model capabilities for use with vector search. The goal here is to define a group of models that can be used for different types of vector search based on needs and assessed intent/strategy.

Currently, we only use it to define sparse and dense providers (or IDF in lieu of sparse if configured), but the overall plan is to take a multivector, tailored, approach to each search based on needs. Right now it’s just simple RRF (reciprocal rank fusion) between sparse and dense vectors or idf and dense vectors (which is still more robust than essentially every other code search tool out there…).

### Method: `as_vector_params`
[Section titled “Method: as_vector_params”](#method-as_vector_params)

**

```
as_vector_params()
```

Convert the embedding capability group to Qdrant collection parameters.

Uses role-based vector names: “primary” for dense, “sparse” for sparse/idf.

### Method: `from_capabilities`
[Section titled “Method: from_capabilities”](#method-from_capabilities)

**

```
from_capabilities()
```

Creates an EmbeddingCapabilityGroup from a sequence of model capabilities.

## Function: `inject_embedding_settings`
[Section titled “Function: inject_embedding_settings”](#function-inject_embedding_settings)

**

```
inject_embedding_settings()
```

Inject embedding settings into globals to resolve Pydantic forward references.

This avoids circular imports by importing late.