在这篇博客文章中,您将学习如何在 Google Cloud 上使用 Vertex AI 和全新的简化版Google Gen AI SDK使用 Gemini 2.0 Flash,使构建这些强大模型比以往任何时候都更容易。我们将深入探讨一些令人兴奋的新功能,探索实用的代码示例,并分享高级笔记本,帮助您继续学习之旅。对于那些有兴趣通过 Google AI Studio 或 Gemini Developer API 探索 Gemini 2.0 Flash 的用户,请查看Gemini 2\.0 Cookbook。
想跳过博客,直接查看展示如何使用 Vertex AI Gemini API 的 Gemini 2.0 Flash 笔记本吗?请访问Generative AI on Vertex AI cookbook。确保您将其添加到书签中,以便后续轻松访问!
Google Gen AI SDK
想要将 Gemini 2.0 Flash 集成到您的应用程序中吗?Google Gen AI SDK 是您的首选工具。新的 Google Gen AI SDK 通过Gemini Developer API和Vertex AI Gemini API提供了一个统一的接口,目前支持 Python 和 Go。
response = client.models.generate_content(model=model_id, contents=”Explain to me, a front-end developer, what is Vertex AI and how can I use it to build GenAI applications?”)
多模态实时 API使与 Gemini 的实时交互成为可能,非常适合处理流数据的应用程序,例如涉及实时视频的应用。该 API 通过WebSockets实现与 Gemini 的低延迟双向通信,支持语音和视频交互。
该 API 允许进行自然、类人语音对话,包括用户可以通过语音命令打断模型响应的能力。声音是预设的,开发者可以选择可用的声音。该模型可以处理文本、音频和视频输入,并可以提供文本和音频输出,从而支持广泛的多模态应用。多模态实时 API 通过 Gemini API 中的BidiGenerateContent方法访问,利用WebSockets进行实时通信。
以下是一个简单的文本到文本的示例,帮助您开始使用多模态实时 API:
MODEL = ‘models/gemini-2.0-flash-exp’CONFIG = {‘generation_config’: {‘response_modalities’: [‘AUDIO’]}}
async with client.aio.live.connect(model=MODEL, config=CONFIG) as session: message = ‘Summarize what is happening in this Podcast?’ print(‘> ‘, message, ‘\n’) await session.send(message, end_of_turn=True)
# For text responses, when the model’s turn is complete it breaks out of the loop. async for response in session: model_turn = response.server_content.model_turn for part in model_turn.parts: print(“- “, part.text)
以下是一些突出多模态实时 API 潜力的用例:
•实时编码助手:使用多模态实时 API 作为实时编码伙伴,加快您的编码速度。
•互动语言辅导:想象一个语言学习应用程序,学生可以与 Gemini 进行实时对话。该 API 可以分析发音,提供即时反馈,并进行自由流畅的对话。
•实时转录和翻译:对于国际会议或商务会议,多模态实时 API 可以实时转录和翻译对话。说不同语言的参与者可以无缝理解彼此。
笔记本:想了解更多关于多模态实时 API 的信息吗?请查看这个笔记本,了解多模态实时 API 和 Vertex AI 上的 Gemini 2.0 的实时 RAG。
将搜索作为工具
大型语言模型(LLMs)有时可能提供过时的信息。为了确保准确性和时效性,特别是在处理事实查询时,使用外部来源进行支持是很重要的。通过使用将搜索作为工具,您可以提高 Gemini 模型的响应质量。从gemini-2.0-flash-exp模型开始,Google 搜索作为工具可用。这意味着模型可以智能地决定何时使用 Google 搜索来增强其知识。
要使用将搜索作为工具,您可以将tools关键字参数添加到GenerateContentConfig中。首先,您需要创建一个GoogleSearch工具对象,然后将其作为Tool对象传递。这指示 Gemini 首先使用提示执行 Google 搜索,然后根据网络搜索结果构建答案。
动态检索允许您设置何时使用支持来生成模型响应的阈值。这在提示不需要基于 Google 搜索的答案时非常有用。这有助于您更有效地管理延迟、质量和成本。