使用谷歌 Gemini API 与 langchain 结合构建自己的 ChatBot(二)
使用谷歌 Gemini API 与 langchain 结合构建自己的 ChatBot(二)_模态上一篇文章 使用谷歌 Gemini API 构建自己的 Chat(教程一) 我们介绍了 Gemini 是什么,以及如何使用Gemini 构建一个多模态的聊天场景示例。这一篇我们使用 langchain 与 Gemini 集成构建应用:
将 Langchain 与 Gemini 集成
Langchain已成功将Gemini模型整合到其生态系统中,使用ChatGoogleGenerativeAI类。
启动该过程需要向ChatGoogleGenerativeAI类提供所需的Gemini模型来创建一个llm类。我们调用函数并传递用户输入的内容为参数。
可以通过调用response.content获取生成的响应。
- 在下面的代码中,我们构建了一个最简单的查询。
from langchain_google_genai import ChatGoogleGenerativeAI
llm = ChatGoogleGenerativeAI(model="gemini-pro")
response = llm.invoke("Explain Quantum Computing in 50 words?")
print(response.content)
使用谷歌 Gemini API 与 langchain 结合构建自己的 ChatBot(二)_模态_02在下面的代码中,我们将多个输入传入模型,并获取模型的响应。
代码语言:javascript复制batch_responses = llm.batch(
[
"Who is the Prime Minister of India?",
"What is the capital of India?",
]
)
for response in batch_responses:
print(response.content)
使用谷歌 Gemini API 与 langchain 结合构建自己的 ChatBot(二)_模态_03在下面的代码中,我们提供了文本和图像输入,并期望模型基于给定的输入生成文本响应。
代码语言:javascript复制from langchain_core.messages import HumanMessage
llm = ChatGoogleGenerativeAI(model="gemini-pro-vision")
message = HumanMessage(
content=[
{
"type": "text",
"text": "Describe the image",
},
{
"type": "image_url",
"image_url": "https://picsum.photos/id/237/200/300"
},
]
)
response = llm.invoke([message])
print(response.content)
使用谷歌 Gemini API 与 langchain 结合构建自己的 ChatBot(二)_API_04
使用谷歌 Gemini API 与 langchain 结合构建自己的 ChatBot(二)_API_05HumanMessage 类是 langchain_core Message库,用于将内容结构化为包含属性 type、text 和 image_url 的字典列表。该列表传递给 llm.invoke() 函数,并可以使用 `response.content 访问响应内容。
- 在下面的代码中,我们要求模型找出给定图像之间的差异。
from langchain_core.messages import HumanMessage
llm = ChatGoogleGenerativeAI(model="gemini-pro-vision")
message = HumanMessage(
content=[
{
"type": "text",
"text": "Find the differences between the given images",
},
{
"type": "image_url",
"image_url": "https://picsum.photos/id/237/200/300"
},
{
"type": "image_url",
"image_url": "https://picsum.photos/id/219/5000/3333"
}
]
)
response = llm.invoke([message])
print(response.content)
使用谷歌 Gemini API 与 langchain 结合构建自己的 ChatBot(二)_应用程序_06
使用谷歌 Gemini API 与 langchain 结合构建自己的 ChatBot(二)_API_07
使用谷歌 Gemini API 与 langchain 结合构建自己的 ChatBot(二)_应用程序_08脑洞大开,我们可以做一个这样找不同的程序了。


