|
from flask import Flask, render_template, request, jsonify |
|
|
|
from source_data import get_response |
|
from flask_limiter import Limiter |
|
from flask_limiter.util import get_remote_address |
|
from cahtbott import send_message |
|
app = Flask(__name__) |
|
|
|
limiter = Limiter(app) |
|
|
|
|
|
@app.get("/") |
|
@limiter.limit("3/second; 200/minute; 1200/hour") |
|
def index_get(): |
|
return render_template("base.html") |
|
|
|
@app.post("/predict") |
|
def predict(): |
|
text = request.get_json().get("message") |
|
if len(text) > 100: |
|
message = {"answer": "I'm sorry, your query has too many characters for me to process. If you would like to speak to a live agent, say 'I would like to speak to a live agent'"} |
|
return jsonify(message) |
|
response = get_response(text) |
|
message = {"answer": response} |
|
return jsonify(message) |
|
|
|
|
|
if __name__ == "__main__": |
|
app.run("0.0.0.0",7860) |
|
|
|
|