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_id
orspace_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.