上一篇文章 【AI大模型】使用谷歌 API 构建自己的 (一)我们介绍了 是什么,以及如何使用 构建一个多模态的聊天场景示例。这一篇我们使用 与 集成构建应用:
将 与 集成
已成功将模型整合到其生态系统中,使用AI类。
启动该过程需要向AI类提供所需的模型来创建一个llm类。我们调用函数并传递用户输入的内容为参数。
可以通过调用.获取生成的响应。
from langchain_google_genai import ChatGoogleGenerativeAI
llm = ChatGoogleGenerativeAI(model="gemini-pro")
response = llm.invoke("Explain Quantum Computing in 50 words?")
print(response.content)
在下面的代码中,我们将多个输入传入模型,并获取模型的响应。
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)
在下面的代码中,我们提供了文本和图像输入,并期望模型基于给定的输入生成文本响应。
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)
类是 库,用于将内容结构化为包含属性 type、text 和 的字典列表。该列表传递给 llm.() 函数,并可以使用 “.` 访问响应内容。
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)
脑洞大开,我们可以做一个这样找不同的程序了。
使用 API 创建一个
我们玩够了 后,使用 和 构建类似 的简单应用程序。
import streamlit as st
import os
import google.generativeai as genai
st.title("Gemini Bot")
os.environ['GOOGLE_API_KEY'] = "AIzaSyAjsDpD-XXXXXXXXXXXXX"
genai.configure(api_key = os.environ['GOOGLE_API_KEY'])
# 配置 model
model = genai.GenerativeModel('gemini-pro')
# 初始化 message
if "messages" not in st.session_state:
st.session_state.messages = [
{
"role":"assistant",
"content":"Ask me Anything"
}
]
# 重新运行应用程序时显示来自历史记录的聊天消息
for message in st.session_state.messages:
with st.chat_message(message["role"]):
st.markdown(message["content"])
# 处理并储存和回复。
def llm_function(query):
response = model.generate_content(query)
# 显示助手消息
with st.chat_message("assistant"):
st.markdown(response.text)
# 保存用户信息
st.session_state.messages.append(
{
"role":"user",
"content": query
}
)
# 保存用户信息
st.session_state.messages.append(
{
"role":"assistant",
"content": response.text
}
)
# 输入我们的问题
query = st.chat_input("What's up?")
# 当输入时调用该函数。
if query:
# 显示用户的回答
with st.chat_message("user"):
st.markdown(query)
llm_function(query)
streamlit run gemini-bot.py
总结: AI是谷歌创建的一组大型语言模型,具备处理多模态数据(文本、图像、音频等)的能力,能够进行复杂推理并生成多种类型的输出。 的多模态能力: AI 由谷歌开发,具有处理文本、图像、音频和代码等多种数据类型的能力,能够理解和响应复杂的多模态提示。生成文本和安全性:通过示例代码展示了如何使用 模型生成文本响应,并且模型内置的安全功能可以防止不当查询,如入侵电子邮件或制造武器的请求。超参数配置:可以配置诸如温度、top_k、top_p 等超参数,以控制生成文本的随机性、长度和多样性,从而满足不同的应用需求。视觉和多模态任务:使用 的 -pro- 模型,可以实现图像解释、基于图像生成故事以及对图像中的对象进行识别和计数等功能,展示了其在多模态处理上的强大能力。文章演示了如何使用 API进行文本生成和基于视觉的任务,包括解释图像内容、根据图片写故事以及计算图像中的对象数量。使用库可以简化与模型的集成,使得处理文本和图像输入更加方便,并能够批量处理多个查询。最后,展示了如何使用框架与模型结合,构建一个类似的聊天应用程序,并通过示例代码展示了具体的实现步骤。 如何系统的去学习大模型LLM ?
大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。
事实上,抢你饭碗的不是AI,而是会利用AI的人。
继科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?
与其焦虑……
不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!
但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。
针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 有需要的小伙伴,可以 扫描下方二维码领取↓↓↓
CSDN大礼包:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)
一、LLM大模型经典书籍
AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。
二、640套LLM大模型报告合集
这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)
三、LLM大模型系列视频教程
四、LLM大模型开源教程(LLaLA/Meta//)
LLM大模型学习路线 ↓ 阶段1:AI大模型时代的基础理解 阶段2:AI大模型API应用开发工程 阶段3:AI大模型应用架构实践 阶段4:AI大模型私有化部署
这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 有需要的小伙伴,可以 扫描下方二维码领取↓↓↓
CSDN大礼包:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)
323AI导航网发布