LLM / app.py
hrsprojects's picture
Update app.py
d3ff814 verified
raw
history blame
849 Bytes
from fastapi import FastAPI, Query
from fastapi.middleware.cors import CORSMiddleware
from duckduckgo_search import DDGS
import uvicorn
app = FastAPI()
# Enable CORS for all origins (fixes CORS issues)
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.get("/")
def home():
return {"message": "DuckDuckGo Search API is running!"}
@app.get("/search")
def search(query: str = Query(..., title="Search Query"), max_results: int = 10):
""" DuckDuckGo Search API - Returns top search results. """
with DDGS() as ddgs:
results = list(ddgs.text(query, max_results=max_results))
return {"query": query, "results": results}
# Ensure the API runs properly
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=7860)