WatsonxEmbeddings is a wrapper for IBM watsonx.ai foundation models.This example shows how to communicate with
watsonx.ai models using LangChain.
Overview
Integration details
Setup
To access IBM watsonx.ai models you’ll need to create an IBM watsonx.ai account, get an API key, and install thelangchain-ibm integration package.
Credentials
This cell defines the WML credentials required to work with watsonx Embeddings. Action: Provide the IBM Cloud user API key. For details, see documentation.Installation
The LangChain IBM integration lives in thelangchain-ibm package:
Instantiation
You might need to adjust modelparameters for different models.
WatsonxEmbeddings class with previously set parameters.
Note:
- To provide context for the API call, you must add
project_idorspace_id. For more information see documentation. - Depending on the region of your provisioned service instance, use one of the urls described here.
project_id and Dallas url.
You need to specify model_id that will be used for inferencing.
APIClient object into the WatsonxEmbeddings class.
Indexing and Retrieval
Embedding models are often used in retrieval-augmented generation (RAG) flows, both as part of indexing data as well as later retrieving it. For more detailed instructions, please see our RAG tutorials. Below, see how to index and retrieve data using theembeddings object we initialized above. In this example, we will index and retrieve a sample document in the InMemoryVectorStore.
Direct Usage
Under the hood, the vectorstore and retriever implementations are callingembeddings.embed_documents(...) and embeddings.embed_query(...) to create embeddings for the text(s) used in from_texts and retrieval invoke operations, respectively.
You can directly call these methods to get embeddings for your own use cases.
Embed single texts
You can embed single texts or documents withembed_query:
Embed multiple texts
You can embed multiple texts withembed_documents:
API reference
For detailed documentation of allWatsonxEmbeddings features and configurations head to the API reference.
Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.