# OpenAIEmbeddings

> **Class** in `@langchain/openai`

📖 [View in docs](https://reference.langchain.com/javascript/langchain-openai/OpenAIEmbeddings)

Class for generating embeddings using the OpenAI API.

To use with Azure, import the `AzureOpenAIEmbeddings` class.

## Signature

```javascript
class OpenAIEmbeddings
```

## Extends

- `Embeddings<TOutput>`

## Implements

- `Partial<OpenAIEmbeddingsParams>`

## Constructors

- [`constructor()`](https://reference.langchain.com/javascript/langchain-openai/OpenAIEmbeddings/constructor)

## Properties

- `apiKey`
- `batchSize`
- `caller`
- `client`
- `clientConfig`
- `dimensions`
- `encodingFormat`
- `model`
- `modelName`
- `organization`
- `stripNewLines`
- `timeout`

## Methods

- [`embeddingWithRetry()`](https://reference.langchain.com/javascript/langchain-openai/OpenAIEmbeddings/embeddingWithRetry)
- [`embedDocuments()`](https://reference.langchain.com/javascript/langchain-openai/OpenAIEmbeddings/embedDocuments)
- [`embedQuery()`](https://reference.langchain.com/javascript/langchain-openai/OpenAIEmbeddings/embedQuery)

## Examples

```typescript
// Embed a query using OpenAIEmbeddings to generate embeddings for a given text
const model = new OpenAIEmbeddings();
const res = await model.embedQuery(
  "What would be a good company name for a company that makes colorful socks?",
);
console.log({ res });
```

---

[View source on GitHub](https://github.com/langchain-ai/langchainjs/blob/21fff396eb1fcddb1c746a98600b31400ab7ac16/libs/providers/langchain-openai/src/embeddings.ts#L80)