Skip to content

[Bug]: CustomTextEmbedding lookup is case-sensitive after canonical model resolution #650

Description

@CODING-DARSH

What happened?

Custom models can be registered using one casing (for example Org/Model)
and later instantiated using another (org/model).

Although TextEmbedding resolves the model name case-insensitively,
CustomTextEmbedding later retrieves the postprocessing configuration
using the original user-provided model name instead of the canonical
resolved model name.

This can result in a KeyError during construction.

What is the expected behaviour?

Once a model name has been resolved, all subsequent lookups should use the
canonical resolved model name so that model registration and instantiation
remain case-insensitive.

A minimal reproducible example

register_custom_model("Org/Model", ...)
TextEmbedding("org/model")
Current:
KeyError
Expected:
Construction succeeds.

What Python version are you on? e.g. python --version

python 3.14.3

FastEmbed version

v0.8.0

What os are you seeing the problem on?

No response

Relevant stack traces and/or logs

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions