diff options
author | Alexander_Kabui | 2024-04-23 18:28:13 +0300 |
---|---|---|
committer | Alexander_Kabui | 2024-04-23 18:28:13 +0300 |
commit | a514d910fe16c5e693dd03d8a78885aedfb97ad4 (patch) | |
tree | 2bcac479aa069be16ba0baafc4a00c00e3dec8e5 | |
parent | ed0e55326787f61a7fe130b64d52af75eb3257aa (diff) | |
download | genenetwork2-a514d910fe16c5e693dd03d8a78885aedfb97ad4.tar.gz |
Create an endpoint for gnqa test template
-rw-r--r-- | gn2/wqflask/views.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gn2/wqflask/views.py b/gn2/wqflask/views.py index 074ccae2..c126524b 100644 --- a/gn2/wqflask/views.py +++ b/gn2/wqflask/views.py @@ -347,6 +347,39 @@ def gnqna_rating(task_id, weight): lambda x: (x.json(), x.status_code)) +@app.route("/gnqa/testing", methods=["GET", "POST"]) +@require_oauth2 +def qnqa_testing(): + def __error__(resp): + return render_template("gnqa_errors.html", + **{"status_code": resp.status_code, + **resp.json()}) + + def __success__(result): + return render_template("gnqa_chat_box.html", + **{"query": result["query"], + "answer": result["answer"], + "task_id": result["task_id"]["task_id"], + "references": result["references"]}) + if request.method == "POST" or request.args.get("query") is not None: + token = session_info()["user"]["token"].either( + lambda err: err, lambda tok: tok["access_token"]) + return (monad_requests.post( + urljoin(GN3_LOCAL_URL, + "/api/llm/gnqna"), + json={"querygnqa": request.form.get("query") or + request.args.get("query")}, + headers={ + "Authorization": f"Bearer {token}" + } + ).then( + lambda resp: resp.json() + ).either(__error__, __success__)) + return render_template("gnqa_test.html", history=["what is a gene", + "which genes are involved", + "what is a gene"]) + + @app.route("/gsearch_updating", methods=('POST',)) def gsearch_updating(): result = UpdateGSearch(request.args).__dict__ |