or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

Files

docs

agents.mdcaches.mdcallbacks.mddocuments.mdembeddings.mdindex.mdlanguage-models.mdmemory-storage.mdmessages.mdoutput-parsers.mdprompts.mdretrievers.mdrunnables.mdtools.mdvectorstores.md
tile.json

embeddings.mddocs/

0

# Embeddings

1

2

Embedding model abstractions for converting text to vector representations. Embeddings enable semantic search and similarity comparisons by transforming text into high-dimensional numerical vectors.

3

4

## Capabilities

5

6

### Embeddings

7

8

Abstract base class for all embedding implementations.

9

10

```typescript { .api }

11

/**

12

* Abstract base class for embedding models

13

*/

14

abstract class Embeddings {

15

/** Async caller for managing API requests */

16

caller: AsyncCaller;

17

18

constructor(params: EmbeddingsParams);

19

20

/** Embed multiple documents */

21

abstract embedDocuments(documents: string[]): Promise<number[][]>;

22

23

/** Embed a single query */

24

abstract embedQuery(document: string): Promise<number[]>;

25

}

26

```

27

28

**Usage Examples:**

29

30

```typescript

31

import { Embeddings } from "@langchain/core/embeddings";

32

33

// Example embedding implementation

34

class MyEmbeddings extends Embeddings {

35

async embedDocuments(texts: string[]): Promise<number[][]> {

36

// Implementation would call embedding API

37

return texts.map(text => this.generateVector(text));

38

}

39

40

async embedQuery(text: string): Promise<number[]> {

41

// Single text embedding

42

return this.generateVector(text);

43

}

44

45

private generateVector(text: string): number[] {

46

// Placeholder - real implementation would use ML model

47

return new Array(384).fill(0).map(() => Math.random());

48

}

49

}

50

51

// Usage

52

const embeddings = new MyEmbeddings();

53

54

// Embed documents for vector store

55

const docVectors = await embeddings.embedDocuments([

56

"LangChain is a framework for building LLM applications",

57

"Vector stores enable semantic search over documents"

58

]);

59

60

// Embed query for similarity search

61

const queryVector = await embeddings.embedQuery("What is LangChain?");

62

```

63

64

## Types

65

66

```typescript { .api }

67

interface EmbeddingsInterface {

68

embedDocuments(documents: string[]): Promise<number[][]>;

69

embedQuery(document: string): Promise<number[]>;

70

}

71

72

interface EmbeddingsParams extends AsyncCallerParams {

73

/** Maximum number of documents to embed at once */

74

maxConcurrency?: number;

75

/** Maximum number of retries for failed requests */

76

maxRetries?: number;

77

}

78

79

interface AsyncCallerParams {

80

/** Maximum number of concurrent requests */

81

maxConcurrency?: number;

82

/** Maximum number of retries */

83

maxRetries?: number;

84

/** Base delay between retries (ms) */

85

onFailedAttempt?: (error: Error) => void;

86

}

87

```