Skip to content

Gemini原生格式 API 文档

普通对话(非流)

接口说明

提供 Gemini 2.5 Flash 模型的文本生成能力

请求地址

POST https://www.dmxapi.cn/v1beta/models/gemini-2.5-flash:generateContent

请求参数

Header 参数

参数名类型必填说明
Content-Typestring固定值 application/json
keystringAPI 密钥

Body 参数

json
{
  "contents": [
    {
      "role": "user",
      "parts": [
        {
          "text": "输入你的问题或提示"
        }
      ]
    }
  ]
}

Python 示例代码

python
import requests
import json

# API 配置
model = "gemini-2.5-flash"
API_KEY = "sk-*******************"  # 替换为你的API密钥
API_URL = f"https://www.dmxapi.cn/v1beta/models/{model}:generateContent?key={API_KEY}"

def generate_text(prompt):
    """调用Gemini API生成文本
    
    Args:
        prompt (str): 用户输入的提示文本
        
    Returns:
        dict: API响应结果
    """
    headers = {"Content-Type": "application/json"}
    payload = {
        "contents": [{
            "role": "user",
            "parts": [{"text": prompt}]
        }]
    }
    
    try:
        response = requests.post(
            API_URL,
            headers=headers,
            params={"key": API_KEY},
            json=payload
        )
        response.raise_for_status()  # 检查请求是否成功
        return response.json()
        
    except requests.exceptions.RequestException as e:
        print(f"请求失败: {e}")
        if e.response:
            print(f"状态码: {e.response.status_code}")
            print(f"响应内容: {e.response.text}")
        return None

# 使用示例
if __name__ == "__main__":
    result = generate_text("Hi, 你是谁?")
    if result:
        print(json.dumps(result, indent=2, ensure_ascii=False))

响应示例

json
{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [
          {
            "text": "你好!我是一个大型语言模型,由 Google 训练。"
          }
        ]
      },
      "finishReason": "STOP",
      "index": 0,
      "safetyRatings": null
    }
  ],
  "promptFeedback": {
    "safetyRatings": null
  },
  "usageMetadata": {
    "promptTokenCount": 5,
    "candidatesTokenCount": 13,
    "totalTokenCount": 49,
    "thoughtsTokenCount": 31,
    "promptTokensDetails": [
      {
        "modality": "TEXT",
        "tokenCount": 5
      }
    ]
  }
}

注意事项

  1. 请妥善保管API密钥
  2. 参数 "role": "user" 从 gemini-2.5 开始是必填项,不让会报错 400

一个 Key 用全球大模型