Download src/app.py from LabSoft/Epikriza: direct link, hf CLI and curl.
- Browser
- Download file 1.51 kB
-
https://huggingface.co/spaces/LabSoft/Epikriza/resolve/main/src/app.py
- Command line
-
hf download hf://spaces/LabSoft/Epikriza/src/app.py
-
curl -L -o app.py https://huggingface.co/spaces/LabSoft/Epikriza/resolve/main/src/app.py
1.51 kB
| 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.""" | |
| def index(): | |
| return render_template("index.html") | |
| 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 | |
| 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) | |