Skip to main content

An integration package connecting GoogleVertexAI and LangChain

Project description

langchain-google-vertexai

This package contains the LangChain integrations for Google Cloud generative models.

Installation

pip install -U langchain-google-vertexai

Chat Models

ChatVertexAI class exposes models .

To use, you should have Google Cloud project with APIs enabled, and configured credentials. Initialize the model as:

from langchain_google_vertexai import ChatVertexAI

llm = ChatVertexAI(model_name="gemini-pro")
llm.invoke("Sing a ballad of LangChain.")

You can use other models, e.g. chat-bison:

from langchain_google_vertexai import ChatVertexAI

llm = ChatVertexAI(model_name="chat-bison", temperature=0.3)
llm.invoke("Sing a ballad of LangChain.")

Multimodal inputs

Gemini vision model supports image inputs when providing a single chat message. Example:

from langchain_core.messages import HumanMessage
from langchain_google_vertexai import ChatVertexAI

llm = ChatVertexAI(model_name="gemini-pro-vision")
# example
message = HumanMessage(
    content=[
        {
            "type": "text",
            "text": "What's in this image?",
        },  # You can optionally provide text parts
        {"type": "image_url", "image_url": {"url": "https://picsum.photos/seed/picsum/200/300"}},
    ]
)
llm.invoke([message])

The value of image_url can be any of the following:

  • A public image URL
  • An accessible gcs file (e.g., "gcs://path/to/file.png")
  • A local file path
  • A base64 encoded image (e.g., data:image/png;base64,abcd124)

Embeddings

You can use Google Cloud's embeddings models as:

from langchain_google_vertexai import VertexAIEmbeddings

embeddings = VertexAIEmbeddings()
embeddings.embed_query("hello, world!")

LLMs

You can use Google Cloud's generative AI models as Langchain LLMs:

from langchain.prompts import PromptTemplate
from langchain_google_vertexai import VertexAI

template = """Question: {question}

Answer: Let's think step by step."""
prompt = PromptTemplate.from_template(template)

chain = prompt | llm

question = "Who was the president in the year Justin Beiber was born?"
print(chain.invoke({"question": question}))

You can use Gemini and Palm models, including code-generations ones:

from langchain_google_vertexai import VertexAI

llm = VertexAI(model_name="code-bison", max_output_tokens=1000, temperature=0.3)

question = "Write a python function that checks if a string is a valid email address"

output = llm(question)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

langchain_google_vertexai-0.0.1.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file langchain_google_vertexai-0.0.1.tar.gz.

File metadata

File hashes

Hashes for langchain_google_vertexai-0.0.1.tar.gz
Algorithm Hash digest
SHA256 54cfa2ca1a24d0a043752c53da46a1393c0e19676472134222adba7a0cbe4e69
MD5 a220c3b1651c86752cbdad5f770079c0
BLAKE2b-256 f279f788f10fd19deff78d430e30c1f44662adc82df4abb0b8462da434043583

See more details on using hashes here.

File details

Details for the file langchain_google_vertexai-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for langchain_google_vertexai-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 39bbfb4c1cced9b4550377ddee03f7042d91f6b282c8444c9278abc176774f72
MD5 48a640c4c63dfc8ac583aa2c247ed8bf
BLAKE2b-256 7e69ab21e12dce293a6278d2f01bf761e97ec9b0e3a6d86e0bbde7642cef8a4b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page