34 lines
1.3 KiB
Python
34 lines
1.3 KiB
Python
import calendar_connection as cal
|
|
import os
|
|
from flask import Flask, request, render_template
|
|
import json
|
|
import requests
|
|
|
|
app = Flask(__name__)
|
|
|
|
@app.route('/')
|
|
def index():
|
|
return render_template("index.html")
|
|
|
|
@app.route('/calendar/getCalendarId', methods = ['POST'])
|
|
def get_calendar():
|
|
return json.dumps({"calendar_id": cal.get_calendar(request.json["token"], request.json["timezone"])})
|
|
|
|
def get_json(input):
|
|
headers = {"Authorization": f"Bearer {os.environ['HF_TOKEN']}"}
|
|
with open("prompt.txt", "r") as promptFile:
|
|
payload = {
|
|
"inputs": f"Here is a set of sample prompts, which are only to be used for reference:\n{promptFile.read()}\nWhat is the output to {input}? Only return one line of output.\nOutput: ",
|
|
"parameters": {"temperature": 1, "return_full_text": False, "top_k": 1}
|
|
}
|
|
url = "https://api-inference.huggingface.co/models/mistralai/Mistral-7B-Instruct-v0.2"
|
|
response = requests.post(url = url, headers=headers, json=payload).json()[0]["generated_text"]
|
|
return response
|
|
|
|
@app.route('/calendar/execute', methods = ['POST'])
|
|
def calendar():
|
|
return json.dumps({"output": cal.execute_json(request.json["token"], request.json["calendar_id"], request.json["timezone"], get_json(request.json["input"]))})
|
|
|
|
if __name__ == "__main__":
|
|
app.run()
|