文章目录
Google Gemini — 来源:Bard becomes Gemini
简介
Google Gemini Pro 是 Google 最新的 AI 模型 Gemini 的一部分,它被宣布为迄今为止最强大和通用的 AI 模型。这代表了 Google AI 发展的重要一步,旨在通过利用 AI 的能力,处理各种任务,并在许多领先的基准测试中实现最先进的性能。Gemini Pro 与 Gemini Ultra 和 Gemini Nano 一起推出,标志着 Google DeepMind 所称的 Gemini 时代的开始,旨在通过利用 AI 的能力为全球人民开启新的机遇。
Gemini Pro 在 2024 年 1 月全球发布,此前与三星合作将 Gemini Nano 和 Gemini Pro 集成到 Galaxy S24 手机系列中。实际上,甚至他们的 ChatGPT 竞争对手助手应用程序 Bard 现在已更名为 Gemini,就在本文撰写时(2024 年 2 月 8 日)的上周。我们还看到了通过 Google One 订阅服务的 AI 高级套餐推出的“Gemini Advanced with Ultra 1.0”。
Gemini Pro 的一个关键特性是其 API,旨在允许开发人员快速开发和集成基于 AI 的功能到他们的应用程序中。该 API 支持多种编程语言,包括 Python,这是我们将在这里使用的语言,向您展示如何免费(截至 2024 年 2 月)开始使用 Gemini Pro 大型语言模型!
Gemini 基础知识
Google 的 Gemini 是一套 AI 模型,旨在处理各种任务,包括使用文本和图像输入进行内容生成和问题解决。以下是您可以通过 API 轻松访问的不同 Gemini 模型的简要概述:
可用作 API 的关键 Gemini 模型
Gemini API 定价
截至本文撰写时(2024 年 2 月 13 日),Gemini Pro API 可免费使用,但我直觉告诉我,他们很快将推出基于令牌的定价,您可以从 他们的网站 上看到以下截图。
Gemini API 定价
使用 Python 开始使用 Gemini Pro
让我们现在开始使用 Gemini Pro API 和 Python 构建基本的 LLM 功能。我们将向您展示如何获取 API 密钥,然后在 Python 中使用相关的 Gemini LLM。
从 Google AI Studio 获取 API 密钥
Google AI Studio 是一个免费的基于 Web 的工具,允许您快速开发提示并获取用于应用程序开发的 API 密钥。您可以使用 Google 帐号登录 Google AI Studio,并从这里获取 API 密钥。
在 Google AI Studio 中创建 API 密钥
请记得将密钥保存在安全的地方,不要在像 GitHub 这样的公共平台上公开它。
Google Gemini Pro 目前还无法在所有国家/地区访问,但预计很快将在所有地区提供服务。如果您还无法访问,请使用 VPN。请在此处查看可用地区。
使用 Python 使用 Gemini Pro API 处理文本输入
要开始使用 Gemini Pro API,我们需要从 PyPI 或 GitHub 安装 google-generativeai 包。
pip install -q -U google-generativeai
现在,我已将我的 API 密钥保存在一个 YAML 文件中,以便可以加载它,而无需在代码中公开密钥。我使用以下代码将该文件加载并将 API 密钥加载到变量中。
import yaml
with open('gemini_key.yml', 'r') as file:
api_creds = yaml.safe_load(file)
GOOGLE_API_KEY = api_creds['gemini_key']
下一步是通过 API 创建与 Gemini Pro 模型的连接,首先需要使用您的 API 设置一个配置,然后加载模型(或者说在 Google 的服务器上创建与模型的连接)。
import google.generativeai as genai
genai.configure(api_key=GOOGLE_API_KEY)
model = genai.GenerativeModel('gemini-pro')
现在我们已经准备好开始使用 Gemini Pro 了!让我们做一个获取一些信息的基本任务。
response = model.generate_content("用 3 个要点解释生成式 AI")
to_markdown(response.text)
*to_markdown(…)* 函数
使文本输出更美观,您可以从官方文档获取该函数,或者使用我的Colab 笔记本。
现在,让我们尝试一个更实际的例子,假设您正在自动化跨多个地区的 IT 支持,这些地区使用不同的语言。我们将让 LLM 尝试检测客户问题的源语言,将其翻译成英语,并用客户的原始语言回复。
it_support_queue = [
"我无法访问我的电子邮件。一直显示错误消息。请帮忙。",
"Tengo problemas con la VPN. No puedo conectarme a la red de la empresa. ¿Pueden ayudarme, por favor?",
"Mon imprimante ne répond pas et n'imprime plus. J'ai besoin d'aide pour la réparer.",
"Eine wichtige Software stürzt ständig ab und beeinträchtigt meine Arbeit. Können Sie das Problem beheben?",
"我无法访问公司的网站。每次都显示错误信息。请帮忙解决。"
]
it_support_queue_msgs = f"""
"""
for i, msg in enumerate(it_support_queue):
it_support_queue_msgs += "\nMessage " + str(i+1) + ": " + msg
prompt = f"""
扮演客户支持代理。记得根据客户问题要求相关信息以解决问题。
不要在没有要求相关信息的情况下拒绝帮助。对于下面提到的每个支持消息,
在三个反引号中创建一个包含以下列的表格作为响应:
orig_msg: 客户原始消息
orig_lang: 客户消息的检测到的语言,例如西班牙语
trans_msg: 英文翻译的客户消息
response: 用 orig_lang 回复客户
trans_response: 用英语回复客户
消息:
'''{it_support_queue_msgs}'''
"""
现在,我们已经准备好将提示输入 LLM 中了!
response = model.generate_content(prompt)
to_markdown(response.text)
Gemini Pro LLM 对我们的提示的回复
非常棒!我相信通过更详细的信息或 RAG 系统,回复可能会更相关和有用。
使用 Python 使用 Gemini Pro Vision API 处理文本和图像输入
Google 发布了 Gemini Pro Vision 多模态 LLM,它可以接受文本和图像作为输入,并返回文本作为输出。请记住,这仍然是一个只输出文本的 LLM。让我们使用一个简单的用例来理解一张图片并根据它创建一个简短的故事!
我们首先加载图片。
import PIL.Image
img = PIL.Image.open('cat_pc.jpg')
img
然后,我们加载 Gemini Pro Vision 模型,并向其发送以下提示以获取回复。
model = genai.GenerativeModel('gemini-pro-vision')
prompt = """
首先根据您所看到的描述给出给定图片的描述。
然后根据您对图片的理解创建一个简短的故事。
输出应包含描述和简短故事作为两个单独的项目,并带有相关标题
"""
response = model.generate_content(contents=[prompt, img])
to_markdown(response.text)
Gemini Pro Vision LLM 对我们的提示的回复
总体而言,效果还不错!虽然我可能已经看到 GPT-4 with DALL-E 可以将游戏识别为《动物之森》,这更准确。但还是相当不错的。
您还可以使用 Gemini Pro 构建交互式聊天体验。这涉及向 API 发送消息并接收响应,支持多轮对话。请随时查看详细的 API 文档以获取一些示例! https://ai.google.dev/tutorials/python_quickstart
结论
总之,无论您是经验丰富的 AI 开发人员还是刚刚入门,Google 的 Gemini Pro 和 Python 提供了一种非常简单而强大的方式,将尖端的 AI 技术融入到您的应用程序和项目中。此外,Gemini Pro API 目前免费提供,这是一个免费使用强大工具的机会,而无需进行初始投资。尽管预计未来会有定价变化,但目前以零成本开始构建使用如此强大的工具的机会真是太棒了!
希望您了解了如何通过 Google AI Studio 获取 API 密钥,并在非常短的时间内执行您的第一个 Python 脚本与 Gemini Pro API。现在,请继续尝试在您自己的问题和项目中利用它!
在这里获取完整的代码的 Google Colab 笔记本! https://colab.research.google.com/drive/1OLCMhdlcjXpXk6AYQp4Li4hv6YrtQsTN?usp=sharing