Spaces:
Sleeping
Sleeping
rate limit
Browse files
app.py
CHANGED
@@ -2,6 +2,8 @@ import os
|
|
2 |
import logging
|
3 |
from groq import Groq
|
4 |
from flask import Flask, render_template_string, request, Response, stream_with_context
|
|
|
|
|
5 |
from dotenv import load_dotenv
|
6 |
|
7 |
load_dotenv()
|
@@ -11,6 +13,14 @@ app = Flask(__name__)
|
|
11 |
# Set up logging
|
12 |
logging.basicConfig(level=logging.DEBUG)
|
13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
# Set Groq API key
|
15 |
client = Groq(api_key=os.getenv("GROQ_API_KEY"))
|
16 |
|
@@ -171,6 +181,7 @@ def home():
|
|
171 |
return render_template_string(html_template)
|
172 |
|
173 |
@app.route("/generate", methods=["POST"])
|
|
|
174 |
def generate():
|
175 |
parent_name = request.form["parent_name"]
|
176 |
child_name = request.form["child_name"]
|
|
|
2 |
import logging
|
3 |
from groq import Groq
|
4 |
from flask import Flask, render_template_string, request, Response, stream_with_context
|
5 |
+
from flask_limiter import Limiter
|
6 |
+
from flask_limiter.util import get_remote_address
|
7 |
from dotenv import load_dotenv
|
8 |
|
9 |
load_dotenv()
|
|
|
13 |
# Set up logging
|
14 |
logging.basicConfig(level=logging.DEBUG)
|
15 |
|
16 |
+
# Set up rate limiter
|
17 |
+
limiter = Limiter(
|
18 |
+
get_remote_address,
|
19 |
+
app=app,
|
20 |
+
default_limits=["5 per minute"],
|
21 |
+
storage_uri="memory://"
|
22 |
+
)
|
23 |
+
|
24 |
# Set Groq API key
|
25 |
client = Groq(api_key=os.getenv("GROQ_API_KEY"))
|
26 |
|
|
|
181 |
return render_template_string(html_template)
|
182 |
|
183 |
@app.route("/generate", methods=["POST"])
|
184 |
+
@limiter.limit("5 per minute")
|
185 |
def generate():
|
186 |
parent_name = request.form["parent_name"]
|
187 |
child_name = request.form["child_name"]
|