Gemini API:强大而优雅的异步 Python 封装
Gemini API 是一个为 Google Gemini(前身为 Bard)网页应用设计的反向工程异步 Python 封装库。该库提供了一系列强大的功能和简洁的接口,让开发者能够轻松地与 Gemini 进行交互。
主要特性
-
持久化 Cookie:自动在后台刷新 cookie,优化了长期运行的服务。
-
ImageFx 支持:支持检索由 ImageFx(Google 最新的 AI 图像生成器)生成的图像。
-
扩展支持:支持使用 Gemini 扩展(如 YouTube 和 Gmail)生成内容。
-
分类输出:自动对响应中的文本、网络图像和 AI 生成的图像进行分类。
-
官方风格:提供了一个简单优雅的接口,灵感来自 Google Generative AI 的官方 API。
-
异步支持:利用
asyncio
高效运行生成任务并返回输出。
安装和认证
安装 Gemini API 非常简单,只需使用 pip 进行安装:
pip install -U gemini_webapi
对于认证,你可以选择手动获取 cookie 或使用 browser-cookie3
自动导入本地浏览器的 cookie。
使用示例
以下是一些基本的使用示例:
- 初始化客户端:
from gemini_webapi import GeminiClient
client = GeminiClient()
await client.init()
- 生成文本内容:
response = await client.generate_content("Hello World!")
print(response.text)
- 从图像生成内容:
response = await client.generate_content(
"Describe each of these images",
images=["image1.png", "image2.png"],
)
print(response.text)
- 多轮对话:
chat = client.start_chat()
response1 = await chat.send_message("Briefly introduce Europe")
response2 = await chat.send_message("What's the population there?")
print(response1.text, response2.text, sep="\n\n----------------------------------\n\n")
- 生成和保存图像:
response = await client.generate_content("Generate some pictures of cats")
for i, image in enumerate(response.images):
await image.save(path="temp/", filename=f"cat_{i}.png", verbose=True)
高级功能
Gemini API 还提供了一些高级功能,如继续之前的对话、使用 Gemini 扩展生成内容、选择其他回复候选等。这些功能让开发者能够更灵活地控制与 Gemini 的交互过程。
结语
Gemini API 为开发者提供了一个强大而易用的工具,让他们能够轻松地将 Google Gemini 的功能集成到自己的应用中。无论是构建聊天机器人、图像生成应用,还是其他创新性的 AI 项目,Gemini API 都能提供有力的支持。
随着 AI 技术的不断发展,像 Gemini API 这样的工具将在未来扮演越来越重要的角色,帮助开发者释放 AI 的潜力,创造出更多令人惊叹的应用和服务。