MLMs之Gemini :Gemini 2.5的简介、安装和使用方法、案例应用之详细攻略

MLMs之Gemini :Gemini 2.5的简介、安装和使用方法、案例应用之详细攻略

目录

相关文章

MLMs之Gemini:《Gemini 2.5: Our most intelligent AI model》翻译与解读

Gemini 2.5的简介

1、Gemini 2.5 特点

Gemini 2.5 安装和使用方法

1、安装

2、使用方法

Gemini 2.5 案例应用


相关文章

MLMs之Gemini:《Gemini 2.5: Our most intelligent AI model》翻译与解读

MLMs之Gemini:《Gemini 2.5: Our most intelligent AI model》翻译与解读-CSDN博客

Gemini 2.5的简介

Gemini 2.5 Pro是Google目前最强劲的编码和世界知识模型。它属于Gemini 2.5系列,是混合推理模型,能够在任务中进行扩展思考,并使用工具来最大化响应准确性。 它在编码、推理和多模态能力方面都比之前的Gemini Pro-exp-02-05版本有了显著提升,在数学和STEM基准测试中表现出行业领先的推理能力,尤其擅长代码编写,特别是Web开发。在LMSys上排名第一,对于复杂提示也表现出色。

总而言之,该项目详细介绍了如何使用Google Gen AI SDK和Gemini 2.5 Pro模型,并提供了丰富的示例来演示其在不同任务中的应用。 它强调了Gemini 2.5 Pro的强大能力,以及其在复杂推理、代码生成和多模态处理方面的优势。

地址https://github.com/GoogleCloudPlatform/generative-ai/blob/main/gemini/getting-started/intro_gemini_2_5_pro.ipynb

1、Gemini 2.5 特点

>> 混合推理模型:能够进行扩展思考,并利用工具提高准确性。

>> 强大的编码能力:尤其擅长Web开发,能够创建引人入胜的Web应用程序和代理代码应用程序,以及代码转换和编辑。

>> 领先的推理能力:在数学和STEM基准测试中表现出色。

>> 多模态能力:支持文本、代码、文档、图像、音频和视频等多种数据类型。

>> 处理复杂提示:能够有效处理复杂提示,并给出全面的回答。

>> 长上下文窗口:虽然教程中未明确说明token数量,但其能够处理长篇幅内容。

>> 可配置参数:允许用户通过调整参数(例如temperature, top_p)来控制模型的输出。

>> 系统指令设置:支持设置系统指令来引导模型的行为,提供更定制化的响应。

>> 安全过滤器:提供安全过滤器来限制或允许特定类型的内容,以适应不同的使用场景。

>> 自动和手动函数调用:支持自动和手动函数调用,允许用户自定义函数并集成到模型中。

>> 代码执行:允许模型生成和运行Python代码,并根据结果进行迭代学习。

>> 接地性(Grounding): 可以使用Google搜索结果作为工具,获取超出其训练数据范围的信息,从而产生更准确、更新和相关的响应。

Gemini 2.5 安装和使用方法

1、安装

安装Google Gen AI SDK for Python

使用pip命令:

%pip install --upgrade --quiet google-genai

2、使用方法

身份验证 (仅限Colab):如果在Google Colab上运行,需要运行from google.colab import auth; auth.authenticate_user()进行身份验证。

连接到生成式AI API服务:可以使用Gemini Developer API (用于小型项目) 或 Vertex AI (用于企业级项目)。Google Gen AI SDK 提供了统一的接口。

设置Google Cloud项目或API密钥 (Vertex AI):可以选择使用Google Cloud项目或Vertex AI API密钥 (Express模式)。前者需要在Google Cloud项目中启用Vertex AI API;后者需要获取API密钥。

加载Gemini 2.5 Pro模型:使用MODEL_ID = "gemini-2.5-pro-exp-03-25"指定模型ID。

使用client.models.generate_content()方法生成文本:将提示文本传递给该方法,并使用.text属性获取文本内容。 该方法支持多种参数配置,例如temperature, top_p, candidate_count, system_instruction, safety_settings等,以控制模型的输出。

使用client.models.generate_content_stream()方法生成文本流:以流式方式获取模型生成的文本。

使用client.chats.create()方法启动多轮对话:创建一个对话对象,并使用send_message()方法发送消息。

使用异步方法:client.aio 提供了异步方法,例如client.aio.models.generate_content。

处理多模态数据:支持通过Part.from_bytes()或Part.from_uri()上传本地文件或网络资源(图像、音频、视频等)。

使用函数调用:支持自动和手动函数调用,允许模型调用用户定义的函数。

代码执行:使用ToolCodeExecution工具,允许模型执行Python代码。

控制生成的输出:使用response_schema参数指定输出结构。

# 导入必要的库
from IPython.display import HTML, Image, Markdown, display  # 用于在Jupyter Notebook中显示HTML、图像、Markdown和其它内容
from google import genai  # Google Gen AI SDK的核心库
from google.genai.types import (  # Google Gen AI SDK中定义的数据类型
    FunctionDeclaration,  # 函数声明
    GenerateContentConfig,  # 生成内容配置
    GoogleSearch,  # Google搜索工具
    HarmBlockThreshold,  # 安全过滤阈值
    HarmCategory,  # 安全过滤类别
    Part,  # 多模态数据片段
    SafetySetting,  # 安全设置
    Tool,  # 工具
    ToolCodeExecution,  # 代码执行工具
)
import sys  # 用于检查运行环境
import os  # 用于获取环境变量


# 安装Google Gen AI SDK for Python (如果需要)
# %pip install --upgrade --quiet google-genai


# 身份验证 (仅限Google Colab)
if "google.colab" in sys.modules:
    from google.colab import auth  # Google Colab身份验证库
    auth.authenticate_user()  # 进行用户身份验证


# 连接到生成式AI API服务
# 选择使用Google Cloud项目或Vertex AI API密钥 (Express模式)

# 选项1:使用Google Cloud项目 (推荐)
PROJECT_ID = "[your-project-id]"  # @param {type: "string", placeholder: "[your-project-id]", isTemplate: true}
# 获取GOOGLE_CLOUD_PROJECT环境变量,如果没有设置则使用用户提供的PROJECT_ID
if not PROJECT_ID or PROJECT_ID == "[your-project-id]":
    PROJECT_ID = str(os.environ.get("GOOGLE_CLOUD_PROJECT"))

LOCATION = os.environ.get("GOOGLE_CLOUD_REGION", "us-central1") # 获取GOOGLE_CLOUD_REGION环境变量,如果没有设置则默认为us-central1

client = genai.Client(vertexai=True, project=PROJECT_ID, location=LOCATION) # 创建客户端对象,连接到Vertex AI


# 选项2:使用Vertex AI API密钥 (Express模式)  (注释掉,选择一种方式即可)
# API_KEY = "[your-api-key]"  # @param {type: "string", placeholder: "[your-api-key]", isTemplate: true}
# if not API_KEY or API_KEY == "[your-api-key]":
#     raise Exception("您必须提供API密钥才能在Express模式下使用Vertex AI。")
# client = genai.Client(vertexai=True, api_key=API_KEY)


# 验证连接模式
if not client.vertexai:
    print("正在使用Gemini Developer API。")
elif client._api_client.project:
    print(f"正在使用Vertex AI,项目ID:{client._api_client.project},区域:{client._api_client.location}")
elif client._api_client.api_key:
    print(f"正在使用Vertex AI (Express模式),API密钥:{client._api_client.api_key[:5]}...{client._api_client.api_key[-5:]}")


# 使用Gemini 2.5 Pro模型
MODEL_ID = "gemini-2.5-pro-exp-03-25"  # 指定Gemini 2.5 Pro模型的ID


# 生成文本
response = client.models.generate_content(  # 调用generate_content方法生成文本
    model=MODEL_ID,  # 指定模型ID
    contents="太阳系中最大的行星是什么?"  # 输入提示
)

display(Markdown(response.text))  # 显示生成的文本


# 其它功能的代码 (Generate content stream, Multi-turn chat, Asynchronous requests, ... )  类似地添加中文注释即可.  以下是一些示例:

# 生成文本流
# for chunk in client.models.generate_content_stream(
#     model=MODEL_ID,
#     contents="给我讲一个关于孤独的机器人找到意想不到友谊的故事。",
# ):
#     display(Markdown(chunk.text))
#     display(Markdown("---"))


# 多轮对话
# chat = client.chats.create(model=MODEL_ID)
# response = chat.send_message("写一个检查年份是否为闰年的函数。")
# display(Markdown(response.text))
# response = chat.send_message("为生成的函数编写单元测试。")
# display(Markdown(response.text))

Gemini 2.5 案例应用

文本生成:回答问题、编写故事、翻译文本等。

代码生成:生成Web应用程序、游戏代码等。

多模态推理:根据图像解决几何问题等。

数学和问题解决:解决数学问题、脑筋急转弯等。

多轮对话:进行多轮对话,上下文信息得到保留。

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个处女座的程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值