Movatterモバイル変換


[0]ホーム

URL:


Skip to main content
OurBuilding Ambient Agents with LangGraph course is now available on LangChain Academy!
Open In ColabOpen on GitHub

PredictionGuardEmbeddings

Prediction Guard is a secure, scalable GenAI platform that safeguards sensitive data, prevents common AI malfunctions, and runs on affordable hardware.

Overview

Integration details

This integration shows how to use the Prediction Guard embeddings integration with Langchain. This integration supports text and images, separately or together in matched pairs.

Setup

To access Prediction Guard models, contact ushere to get a Prediction Guard API key and get started.

Credentials

Once you have a key, you can set it with

import os

os.environ["PREDICTIONGUARD_API_KEY"]="<Prediction Guard API Key"

Installation

%pip install--upgrade--quiet langchain-predictionguard

Instantiation

First, install the Prediction Guard and LangChain packages. Then, set the required env vars and set up package imports.

from langchain_predictionguardimport PredictionGuardEmbeddings
embeddings= PredictionGuardEmbeddings(model="bridgetower-large-itm-mlm-itc")

Prediction Guard embeddings generation supports both text and images. This integration includes that support spread across various functions.

Indexing and Retrieval

# Create a vector store with a sample text
from langchain_core.vectorstoresimport InMemoryVectorStore

text="LangChain is the framework for building context-aware reasoning applications."

vectorstore= InMemoryVectorStore.from_texts(
[text],
embedding=embeddings,
)

# Use the vectorstore as a retriever
retriever= vectorstore.as_retriever()

# Retrieve the most similar text
retrieved_documents= retriever.invoke("What is LangChain?")

# Show the retrieved document's content
retrieved_documents[0].page_content
API Reference:InMemoryVectorStore
'LangChain is the framework for building context-aware reasoning applications.'

Direct Usage

The vectorstore and retriever implementations are callingembeddings.embed_documents(...) andembeddings.embed_query(...) to create embeddings from the texts used in thefrom_texts and retrievalinvoke operations.

These methods can be directly called with the following commands.

Embed single texts

# Embedding a single string
text="This is an embedding example."
single_vector= embeddings.embed_query(text)

single_vector[:5]
[0.01456777285784483,
-0.08131945133209229,
-0.013045587576925755,
-0.09488929063081741,
-0.003087474964559078]

Embed multiple texts

# Embedding multiple strings
docs=[
"This is an embedding example.",
"This is another embedding example.",
]

two_vectors= embeddings.embed_documents(docs)

for vectorin two_vectors:
print(vector[:5])
[0.01456777285784483, -0.08131945133209229, -0.013045587576925755, -0.09488929063081741, -0.003087474964559078]
[-0.0015021917643025517, -0.08883760124444962, -0.0025286630261689425, -0.1052245944738388, 0.014225339516997337]

Embed single images

# Embedding a single image. These functions accept image URLs, image files, data URIs, and base64 encoded strings.
image=[
"https://farm4.staticflickr.com/3300/3497460990_11dfb95dd1_z.jpg",
]
single_vector= embeddings.embed_images(image)

print(single_vector[0][:5])
[0.0911610797047615, -0.034427884966135025, 0.007927080616354942, -0.03500846028327942, 0.022317267954349518]

Embed multiple images

# Embedding multiple images
images=[
"https://fastly.picsum.photos/id/866/200/300.jpg?hmac=rcadCENKh4rD6MAp6V_ma-AyWv641M4iiOpe1RyFHeI",
"https://farm4.staticflickr.com/3300/3497460990_11dfb95dd1_z.jpg",
]

two_vectors= embeddings.embed_images(images)

for vectorin two_vectors:
print(vector[:5])
[0.1593627631664276, -0.03636132553219795, -0.013229663483798504, -0.08789524435997009, 0.062290553003549576]
[0.0911610797047615, -0.034427884966135025, 0.007927080616354942, -0.03500846028327942, 0.022317267954349518]

Embed single text-image pairs

# Embedding a single text-image pair
inputs=[
{
"text":"This is an embedding example.",
"image":"https://farm4.staticflickr.com/3300/3497460990_11dfb95dd1_z.jpg",
},
]
single_vector= embeddings.embed_image_text(inputs)

print(single_vector[0][:5])
[0.0363212488591671, -0.10172265768051147, -0.014760786667466164, -0.046511903405189514, 0.03860781341791153]

Embed multiple text-image pairs

# Embedding multiple text-image pairs
inputs=[
{
"text":"This is an embedding example.",
"image":"https://fastly.picsum.photos/id/866/200/300.jpg?hmac=rcadCENKh4rD6MAp6V_ma-AyWv641M4iiOpe1RyFHeI",
},
{
"text":"This is another embedding example.",
"image":"https://farm4.staticflickr.com/3300/3497460990_11dfb95dd1_z.jpg",
},
]
two_vectors= embeddings.embed_image_text(inputs)

for vectorin two_vectors:
print(vector[:5])
[0.11867266893386841, -0.05898813530802727, -0.026179173961281776, -0.10747235268354416, 0.07684746384620667]
[0.026654226705431938, -0.10080841928720474, -0.012732953764498234, -0.04365091398358345, 0.036743905395269394]

API Reference

For detailed documentation of all PredictionGuardEmbeddings features and configurations check out the API reference:https://python.langchain.com/api_reference/community/embeddings/langchain_community.embeddings.predictionguard.PredictionGuardEmbeddings.html

Related


[8]ページ先頭

©2009-2025 Movatter.jp