File size: 1,505 Bytes
f85caf4
 
 
 
709f5b7
f85caf4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
709f5b7
 
 
 
 
 
 
 
 
 
f85caf4
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
from flask import Flask, render_template, request, jsonify
import tempfile
import openai
from dotenv import load_dotenv
from postprocessing import postprocessing

load_dotenv()

app = Flask(__name__)
SYSPROMPT = """Ti si doktor medicine, specijalista za pisanje epikrize. Potrebno je od prosleđenih podataka o pacijentu da se napiše jasna, profesionalna i lepo strukturisana epikriza."""


@app.route("/")
def index():
    return render_template("index.html")


@app.route("/epikriza", methods=["POST"])
def epikriza():
    data = request.get_json()
    if "podaci" in data:
        podaci = data["podaci"]
        response = openai.chat.completions.create(
            model="ft:gpt-3.5-turbo-1106:labsoftdev::8ov22QMu",
            temperature=0.35,
            max_tokens=4096,
            messages=[
                {"role": "system", "content": SYSPROMPT},
                {"role": "user", "content": podaci},
            ],
        )
        epikriza = response.choices[0].message.content
        return jsonify(epikriza=epikriza)
    return jsonify(error="No data provided"), 400


@app.route("/postprocess", methods=["POST"])
def api_postprocess():
    data = request.get_json()
    if "epikriza" in data:
        original_text = data["epikriza"]
        processed_text = postprocessing(original_text)
        return jsonify(processedEpikriza=processed_text)
    return jsonify(error="No transcript provided"), 400


if __name__ == "__main__":
    app.run(host="0.0.0.0", port=7860, debug=True)