diff --git a/.idea/cogniStance.iml b/.idea/cogniStance.iml index 2f0a84135ee5589963d729358a91d6e595cc2a32..1058f41f56d770f2db61d475ecae5e7f88b33745 100644 --- a/.idea/cogniStance.iml +++ b/.idea/cogniStance.iml @@ -3,6 +3,7 @@ <component name="NewModuleRootManager"> <content url="file://$MODULE_DIR$"> <excludeFolder url="file://$MODULE_DIR$/.venv" /> + <excludeFolder url="file://$MODULE_DIR$/venv" /> </content> <orderEntry type="jdk" jdkName="Python 3.9 (cognistance)" jdkType="Python SDK" /> <orderEntry type="sourceFolder" forTests="false" /> diff --git a/api/api_functions.py b/api/api_functions.py index 5aace6261be356028df8a59baf55067af1c51760..92ab9894aee21c21c793196e293e3db81c90e432 100644 --- a/api/api_functions.py +++ b/api/api_functions.py @@ -1,3 +1,5 @@ +from flask import make_response, jsonify + from func.ner.ner import * from func.usas.usas import * @@ -7,7 +9,11 @@ from func.usas.usas import * # Returns NER results def get_ner_for_data(page): result = run_ner_on_text(page) - return result + + if result["code"] == "SUCCESS": + return make_response(jsonify(result), 201) + + return make_response(jsonify(result), 400) def get_usas_for_data(): diff --git a/func/ner/ner.py b/func/ner/ner.py index b17f5b8e989e3e5423e56a893db7a1587781b111..000199998becc47e986bb086fa06538fb5cb2b21 100644 --- a/func/ner/ner.py +++ b/func/ner/ner.py @@ -5,14 +5,18 @@ from transformers import pipeline # Perform NER on Text def run_ner_on_text(page): ner_driver = CkipNerChunker(model="bert-base") - ws_driver = CkipWordSegmenter(device=-1) - txt = [ - "å‚…é”ä»ä»Šå°‡åŸ·è¡Œå®‰æ¨‚æ»ï¼Œå»çªç„¶çˆ†å‡ºè‡ªå·±20å¹´å‰é緯來體育å°å°æ®ºï¼Œä»–ä¸æ‡‚自己哪裡得罪到電視å°ã€‚", - "美國åƒè°é™¢é‡å°ä»Šå¤©ç¸½çµ±å¸ƒä»€æ‰€æå的勞工部長趙å°è˜å±•é–‹èªå¯è½è‰æœƒï¼Œé æ–™å¥¹å°‡æœƒå¾ˆé †åˆ©é€šéŽåƒè°é™¢æ”¯æŒï¼Œæˆç‚ºè©²åœ‹æœ‰å²ä»¥ä¾†ç¬¬ä¸€ä½çš„è¯è£”女性內閣æˆå“¡ã€‚", - "空白 也是å¯ä»¥çš„~", - ] + data = [] + ner = ner_driver([page]) - ner = ner_driver(txt) - print(ner) - return "hello ner" + for item in ner[0]: + word = item.word + ner = item.ner + idx = item.idx + obj = {"word":word, "translation": "" , "ner":ner, "idx":idx} + + data.append(obj) + + result = {'output': data,'message': 'Done', 'code': 'SUCCESS'} + + return result