| | from fastapi import FastAPI |
| | from pydantic import BaseModel |
| | from fastapi.middleware.cors import CORSMiddleware |
| | import google.generativeai as genai |
| | import os |
| | from dotenv import load_dotenv |
| |
|
| | |
| | load_dotenv() |
| | |
| | genai.configure(api_key=os.environ["GOOGLE_API_KEY"]) |
| |
|
| | app = FastAPI() |
| |
|
| | |
| | app.add_middleware( |
| | CORSMiddleware, |
| | allow_origins=["*"], |
| | allow_credentials=True, |
| | allow_methods=["*"], |
| | allow_headers=["*"], |
| | ) |
| |
|
| | class ChatRequest(BaseModel): |
| | message: str |
| |
|
| | |
| | model = genai.GenerativeModel("gemini-1.5-flash") |
| |
|
| | @app.get("/") |
| | def root(): |
| | return {"status": "ok"} |
| |
|
| | @app.post("/chat") |
| | def chat(request: ChatRequest): |
| | """Chat endpoint using Gemini""" |
| | response = model.generate_content(request.message) |
| | return {"reply": response.text} |
| |
|