python+cloudflare ai gateway实现国内调用google gemini api流式输出对话框代码

代码语言:python

所属分类:人工智能

代码描述:python+cloudflare ai gateway实现国内调用google gemini api流式输出对话框代码

代码标签: python cloudflare ai gateway 国内 调用 google gemini a

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

#!/usr/local/python3/bin/python3
# -*- coding: utf-8 -*
import os
import json
from google import genai

# FastAPI 相关的导入
from fastapi import FastAPI
from fastapi.responses import HTMLResponse, StreamingResponse
from pydantic import BaseModel
from typing import List, Dict, Any

# Google GenAI SDK 相关的导入

from google.genai import types

# --- 1. 初始化和配置 ---
#load_dotenv()
app = FastAPI()

AI_GATEWAY_URL ="https://gateway.ai.cloudflare.com/v1/{acountid}/{projectname}/google-ai-studio" 
API_KEY ="a*******************"


# 检查配置是否齐全
if not AI_GATEWAY_URL or not API_KEY:
    raise ValueError("请确保 .env 文件中已设置 AI_GATEWAY_URL 和 GOOGLE_API_KEY")

# --- 2. 初始化 Google GenAI 客户端 (使用代理) ---
# 这是关键:我们在这里初始化客户端,并传入 http_options 来指定代理
try:
    client = genai.Client(
        api_key=API_KEY,
        http_options=types.HttpOptions(
            base_url=AI_GATEWAY_URL
        )
    )
except ImportError:
    raise ImportError("请运行 'pip install google-generativeai' 来安装所需的库。")


# --- 3. Pydantic 数据模型 (保持不变) ---
class Part(BaseModel):
    text: str

class Content(BaseModel):
    role: str
    parts: List[Part]

class ChatPayload(BaseModel):
    contents: List[Content]


# --- 4. HTML 模板 (保持不变) ---
HTML_TEMPLATE = """
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <met.........完整代码请登录后点击上方下载按钮下载查看

网友评论0