Gemini API开发实战教程

API密钥获取、接口调用方法、参数详解、实战案例,带你快速上手AI应用开发。

一、获取API密钥

1.1 注册Google Cloud账号

  1. 访问 https://cloud.google.com
  2. 使用Google账号登录
  3. 创建新项目
  4. 启用Gemini API

1.2 创建API密钥

  1. 在Google Cloud控制台中找到"API和服务"
  2. 点击"凭据"
  3. 点击"创建凭据" > "API密钥"
  4. 复制生成的API密钥
💡 注意:
API密钥是敏感信息,请妥善保管,不要泄露给他人。建议使用环境变量存储API密钥。

二、安装SDK

2.1 Python SDK

pip install google-generativeai

2.2 Node.js SDK

npm install @google/generative-ai

2.3 其他语言

Gemini API支持多种编程语言,包括Java、Go、C#等。请参考官方文档获取对应语言的SDK安装方法。

三、基本调用示例

3.1 Python示例

import google.generativeai as genai

genai.configure(api_key="你的API密钥")

model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("你好,Gemini!")
print(response.text)

3.2 Node.js示例

const { GoogleGenerativeAI } = require("@google/generative-ai");

const genAI = new GoogleGenerativeAI("你的API密钥");
const model = genAI.getGenerativeModel({ model: "gemini-1.5-flash" });

const result = await model.generateContent("你好,Gemini!");
console.log(result.response.text());

3.3 REST API示例

curl https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=你的API密钥 \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "parts": [{
        "text": "你好,Gemini!"
      }]
    }]
  }'

四、参数详解

4.1 模型参数

4.2 请求参数

4.3 响应参数

五、进阶功能

5.1 多轮对话

model = genai.GenerativeModel("gemini-1.5-flash")
chat = model.start_chat(history=[
    {"role": "user", "parts": "你好"},
    {"role": "model", "parts": "你好!我是Gemini,你的智能助手。"},
])

response = chat.send_message("今天天气怎么样?")
print(response.text)

5.2 多模态输入

import PIL.Image

model = genai.GenerativeModel("gemini-1.5-flash")
image = PIL.Image.open("image.jpg")
response = model.generate_content(["描述这张图片", image])
print(response.text)

5.3 流式输出

model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("写一个小故事", stream=True)

for chunk in response:
    print(chunk.text, end="")

5.4 函数调用

Gemini API支持函数调用,可以让模型调用外部API:

functions = [
    {
        "name": "get_weather",
        "description": "获取天气信息",
        "parameters": {
            "type": "object",
            "properties": {
                "city": {"type": "string"}
            }
        }
    }
]

response = model.generate_content(
    "北京今天天气怎么样?",
    tools=functions
)

六、实战案例

6.1 聊天机器人

创建一个简单的聊天机器人应用。

6.2 代码生成器

创建一个代码生成工具,支持多种编程语言。

6.3 文本摘要器

创建一个文本摘要工具,自动生成文章摘要。

6.4 翻译工具

创建一个多语言翻译工具。

💡 提示:
以上案例只是入门示例,Gemini API还可以用于更多场景,如数据分析、创意写作、教育辅导等。

七、最佳实践

八、常见问题

Q: API调用需要付费吗?

A: Google Cloud提供免费试用额度,超出部分需要付费。具体价格请参考官方文档。

Q: API有调用频率限制吗?

A: 是的,API有调用频率限制。免费用户和付费用户的限制不同。

Q: 如何提高API调用速度?

A: 可以使用流式输出、缓存结果、优化提示词等方式提高响应速度。

Q: 支持哪些模型?

A: 当前支持Gemini 1.5 Flash和Gemini 1.5 Pro等模型。

Q: 如何获取技术支持?

A: 可以通过Google Cloud官方文档、社区论坛、技术支持等渠道获取帮助。