":{"message":"Invalid URL (POST /v1/v1beta/models/gemini-3-pro-preview:streamGen...

2025年12月25日 14:36 状态: processing

🚨 错误信息

[GEMINI] {"error":{"message":"Invalid URL (POST /v1/v1beta/models/gemini-3-pro-preview:streamGenerateContent)","type":"invalid_request_error","code":""}} {"message":"{\"error\":{\"message\":\"Invalid URL (POST /v1/v1beta/models/gemini-3-pro-preview:streamGenerateContent)\",\"type\":\"invalid_request_error\",\"code\":\"\"}}","status":404,"modelId":"gemini-3-pro-preview","providerId":"gemini"}

🤖 AI解决方案

好的,资深工程师来为您分析这个API调用报错。

错误翻译

原文
Invalid URL (POST /v1/v1beta/models/gemini-3-pro-preview:streamGenerateContent)
译文
URL 无效 (POST /v1/v1beta/models/gemini-3-pro-preview:streamGenerateContent)

原因分析

这是一个 API 端点路径拼写错误 导致的 404 (Not Found) 错误。
  • 根本原因:您在构造请求 URL 时,使用了错误或格式不正确的路径。路径中出现了 v1/v1beta 的重复和混淆,并且 :streamGenerateContent 的冒号用法不符合标准的 REST API 设计(它通常是作为查询参数或特定端点的一部分)。
  • 具体位置:错误发生在您的 HTTP 客户端(如 curl, requests 库等)向 Gemini API 服务器发送请求时。服务器无法识别您提供的 URL 路径,因此返回了“无效URL”的错误。
  • 解决方案

    请根据您使用的 Gemini API 版本(v1 或 v1beta)和调用方式,修正您的 URL 和请求体。

    如果您使用的是 Google AI Python SDK (官方推荐):

    import google.generativeai as genai
    
    # 1. 配置API密钥
    genai.configure(api_key="YOUR_API_KEY")
    
    # 2. 选择模型
    model = genai.GenerativeModel('gemini-1.5-pro-latest') # 或 'gemini-1.5-flash-latest'
    # 注意:目前公开API中 `gemini-3-pro-preview` 可能不可用,请使用以上模型或查阅最新文档。
    
    # 3. 流式生成内容(正确方式)
    response = model.generate_content("你好,请讲个故事。", stream=True)
    
    for chunk in response:
        print(chunk.text)

    如果您是直接构造 HTTP 请求:
    请确保您的 URL 和请求头格式正确。对于 gemini-pro 模型的流式调用,一个常见的正确示例如下:

    POST https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-pro-latest:streamGenerateContent?key=YOUR_API_KEY

    请求头:
    Content-Type: application/json

    请求体 (JSON):
    {
      "contents": [{
        "parts": [{"text": "你好,请讲个故事。"}]
      }]
    }

    关键修正点:
  • 使用 v1betav1,不要同时使用 v1/v1beta

  • 模型名称为 gemini-1.5-pro-latest 等有效名称。

  • 流式调用端点格式为 :streamGenerateContent,它附加在模型资源路径之后。
  • ️ 预防措施

  • 优先使用官方 SDK:对于 Gemini API,强烈建议使用 Google AI Python SDK 或 Node.js SDK。官方 SDK 会帮您处理复杂的 URL 构建、认证和参数序列化,极大避免此类低级错误。
  • 仔细核对 API 文档:在手动构造请求时,务必从 Google AI for Developers 官方文档 中复制最新的端点格式和模型名称。不同版本(如 v1v1beta)的路径和参数可能有差异。