# TextEmbeddingBuiltInFunction

> **Class** in `langchain_milvus`

📖 [View in docs](https://reference.langchain.com/python/langchain-milvus/function/TextEmbeddingBuiltInFunction)

Milvus Text Embedding built-in function (Data In Data Out).

This function allows Milvus to automatically generate embeddings from text
by calling external embedding service providers (OpenAI, Bedrock, Vertex AI, etc.).

See:
https://milvus.io/docs/embedding-function-overview.md

## Signature

```python
TextEmbeddingBuiltInFunction(
    self,
    *,
    input_field_names: Union[str, List[str]],
    output_field_names: Union[str, List[str]],
    dim: int,
    params: Dict[str, Any],
    function_name: Optional[str] = None,
)
```

## Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `input_field_names` | `Union[str, List[str]]` | Yes | The name(s) of the input field(s) containing text data. |
| `output_field_names` | `Union[str, List[str]]` | Yes | The name(s) of the output field(s) where embeddings will be stored. |
| `dim` | `int` | Yes | The dimension of the output embeddings. Required because langchain needs to know the vector dimension upfront when the embedding is generated on the server side. |
| `params` | `Dict[str, Any]` | Yes | Parameters for the embedding function. This dict is passed through to Milvus Function. Includes: - "provider": embedding service provider   (e.g., "openai", "dashscope") - "model_name": model name   (e.g., "text-embedding-3-small") - "credential": optional credential label from milvus.yaml - Other provider-specific parameters   (e.g., "dim", "user", "region", "url") Examples:     {"provider": "openai",      "model_name": "text-embedding-3-small"}     {"provider": "dashscope",      "model_name": "text-embedding-v3",      "credential": "apikey1"} |
| `function_name` | `Optional[str]` | No | The name of the function. Default is None, which means a random name will be generated. (default: `None`) |

## Extends

- `BaseMilvusBuiltInFunction`

## Constructors

```python
__init__(
    self,
    *,
    input_field_names: Union[str, List[str]],
    output_field_names: Union[str, List[str]],
    dim: int,
    params: Dict[str, Any],
    function_name: Optional[str] = None,
)
```

| Name | Type |
|------|------|
| `input_field_names` | `Union[str, List[str]]` |
| `output_field_names` | `Union[str, List[str]]` |
| `dim` | `int` |
| `params` | `Dict[str, Any]` |
| `function_name` | `Optional[str]` |


## Properties

- `dim`
- `params`

---

[View source on GitHub](https://github.com/langchain-ai/langchain-milvus/blob/fe9d63e6dcae52e4c2e2ef4dafd5a6f7ee9b254c/libs/milvus/langchain_milvus/function.py#L140)