import gradio as gr from transformers import pipeline from transformers import AutoTokenizer, AutoModelForTokenClassification from normalizer import cleaning pipe = pipeline("token-classification", model="HooshvareLab/albert-fa-zwnj-base-v2-ner") # model = AutoModelForTokenClassification.from_pretrained( # "HooshvareLab/albert-fa-zwnj-base-v2-ner") tokenizer = AutoTokenizer.from_pretrained( "HooshvareLab/albert-fa-zwnj-base-v2-ner") def is_begin(entity): return entity[0] == 'B' entity_mapping = {'DAT': 'تاریخ', 'EVE': 'رویداد', 'FAC': 'ساختمان', 'LOC': 'مکان', 'MON': 'پول', 'ORG': 'سازمان', 'PCT': 'درصد', 'PER': 'شخص', 'PRO': 'محصول', 'TIM': 'زمان'} sep = ' | ' def greet(text): text = cleaning(text) results = pipe(text) result_str = '' entity = None temp_result_list = [] score = 1 temp_result_str = '' for result in results: if is_begin(result['entity']): if entity: temp_result_str = tokenizer.convert_tokens_to_string( temp_result_list) result_str += temp_result_str + ' -> ' + \ entity + ' (' + str(score) + ')' + '\n' temp_result_list = [result['word']] entity = entity_mapping[result['entity'][2:]] score = result['score'] else: temp_result_list.append(result['word']) score *= result['score'] if entity: temp_result_str = tokenizer.convert_tokens_to_string( temp_result_list) result_str += temp_result_str + ' -> ' + \ entity + ' (' + str(score) + ')' + '\n' tokenized_text = sep.join(tokenizer.tokenize(text)) return text, tokenized_text, result_str demo = gr.Interface(fn=greet, inputs=gr.Textbox(label='input text'), outputs=[gr.Textbox(label="Normalized text:"), gr.Textbox(label="Tokenized text:"), gr.Textbox(label="Model output:")], examples=[ 'پيرو بخشنامه هاي شماره 194831/102/6 مورخ 25 /10 /1395 و 1770346/96 مورخ 24 /10 /1396 در خصوص نحوه اجراي قسمت اخير پاراگراف اول بند (ژ) ماده (1) قانون مبارزه با قاچاق كالا و ارز، در صورت تشخيص فاصله زماني نامتناسب اسناد مثبته گمركي پذيرفته شده از سوي مراجع رسيدگي كننده با زمان كشف كالاي مظنون به قاچاق، چنانچه مراجع رسيدگي كننده اصرار به پذيرش اسناد داشته باشد، ضمن بررسي و انجام اقدامات لازم و قانوني و اعلام نظر (انطباق يا عدم انطباق اسناد با كالا) به مرجع ذيربط، صراحتا در مكاتبه به موضوع عدم تناسب زماني اشاره شود. بديهي است هرگونه اقدام و اتخاذ تصميم با شعبه رسيدگي كننده مي باشد.', 'هيأت وزيران در جلسه 1 /10 /1395 به پيشنهاد مشترك سازمان اداري و استخدامي كشور و وزارت تعاون، كار و رفاه اجتماعي و به استناد اصل يكصد و سي و هشتم قانون اساسي جمهوري اسلامي ايران، آيين نامه اجرايي قسمت دوم ماده (59) قانون برنامه پنجساله پنجم توسعه جمهوري اسلامي ايران را به شرح زير تصويب كرد:', 'شماره: 250268 /60 تاريخ: 3 /12 /1393 هيات مديره محترم صندوق توسعه صنايع دريايي با سلام؛ به پيوست "دستورالعمل ماده «4» آيين نامه اجرايي قانون توسعه و حمايت از صنايع دريايي" كه به توشيح وزير محترم صنعت، معدن وتجارت و دبير شوراي عالي صنايع دريايي كشور رسيده است جهت اجرا ابلاغ مي گردد. مقتضي است ضمن هماهنگي با معاونت توسعه مديريت، منابع و امور استانها و دبيرخانه شوراي عالي صنايع دريايي كشور نسبت به اقدامات اجرايي تمهيدات لازم اتخاذ گردد. حسين حاجي پور مديركل دفتر وزارتي رونوشت: جناب آقاي صالحي نيا، معاون محترم امور صنايع جهت استحضار. جناب اقاي يزداني، معاون محترم توسعه مديريت، منابع و امور استانها، به انضمام يك نسخه از دستورالعمل فوق جهت استحضار و اقدام لازم حسب دستورالعمل. جناب آقاي رفعت، رييس محترم دبيرخانه شوراي عالي صنايع دريايي كشور، جهت استحضار و اقدام لازم حسب دستورالعمل. دفتر وزارتي دستور العمل ماده (4) آئين نامه اجرايي قانون توسعه و حمايت از صنايع دريايي ماده 1- معاونت توسعه مديريت و منابع و امور استانها موظف است سالانه در مهلت قانوني مقرر، اعتبار مورد نياز جهت اجراي مواد (2) و (3) قانون توسعه و حمايت از صنايع دريايي و حسب ماده (4) آيين نامه اجرايي قانون توسعه و حمايت از صنايع دريايي مصوب 4 /8 /1388 را با نظر صندوق توسعه صنايع دريايي برآورد و در بودجه سنواتي پيشنهاد نمايد. ماده 2- شناورهاي ساخت داخل و شناورهاي تعمير شده در داخل مي‏بايستي شرايط مندرج در مواد (2) و (3) قانون حسب مورد را احراز نمايند. تبصره: تعميرات دوره‏اي شناورهاي مشمول ماده (3) قانون، بايد در مناطق (ياردهاي) تعميراتي مورد تأييد صندوق توسعه صنايع دريايي كشور انجام شده باشد و حداقل دو و نيم سال از تعمير دوره‏اي قبلي شناور مذكور سپري شده باشد. ماده 3- متقاضيان واجد شرايط بايد درخواست بهره‏مندي از تسهيلات بالاعوض و يارانه موضوع مواد (2) و (3) قانون توسعه و حمايت از صنايع دريايي را به همراه گواهي مفاصا حساب مالياتي سال عملكرد (يا فيش پرداخت شده ماليات قطعي سال عملكرد)، صورت‏هاي مالي مورد تأييد سازمان حسابرسي يا حسابرسان مورد تأييد سازمان فوق، كه در آن درآمدها و هزينه‏هاي هر شناور به تفكيك قيد شده باشد و نيز ساير اسناد و مدارك مثبته شناورهاي مشمول، را به صندوق توسعه صنايع دريايي ارسال نمايند. ماده 4- صندوق توسعه صنايع دريايي پس از بررسي اسناد و مدارك، شناورهاي واجد شرايط را مشخص و اعلام پذيرش درخواست را جهت مالكان شناورهاي مزبور ارسال مي‏كند. براي مالكان ساير شناورهايي كه شرايط لازم را احراز ننمايند، نامه عدم پذيرش ارسال و علت يا علل عدم پذيرش در آن قيد مي‏شود. ماده 5- صندوق با بررسي حجم ريالي درخواست‏هاي پذيرش شده و بودجه تخصيص يافته سال مورد عملكرد، ميزان برخورداري مالكان شناورها را از تسهيلات بلاعوض و يارانه موضوع مواد (2) و (3) را اعلام مي‏نمايد. ماده 6- پس از تعيين ميزان تسهيلات بلاعوض و يارانه موضوع مواد (2) و (3) قانون، صندوق توسعه صنايع دريايي نسبت به پرداخت تسهيلات بالاعوض و يارانه متعلق طبق مقررات عمومي اقدام مي‏نمايد. ماده 7- نظارت بر حسن اجراي دستورالعمل به عهده دبيرخانه شوراي عالي صنايع دريايي كشور مي‏باشد. ماده 8- اين دستورالعمل در 8 ماده و 1 تبصره در تاريخ 1 /11 /1393 مورد تصويب وزير صنعت، معدن و تجارت و دبير شوراي عالي صنايع دريايي كشور قرار گرفت و از تاريخ تصويب لازم الاجرا مي باشد. محمد رضا نعمت زاده وزير صنعت، معدن و تجارت و دبير شوراي عالي صنايع دريايي كشور', 'پيشنهاد شماره 4163 - 91 مورخ 30 / 10 / 1371 سازمان برنامه و بودجه براساس درخواست شماره 11 / 11263 مورخ 17 / 8 / 1371 وزارت راه و ترابري منضم به صورتجلسه مورخ 5 / 8 / 1371 هيئت سه نفري كميسيون ماده 83 قانون محاسبات عمومي در خصوص خريد شش دستگاه ماشين كفساز آتش نشاني از طريق ترك تشريفات مناقصه در جلسه مورخ 3 / 12 / 1371 شوراي اقتصاد مطرح شد و پس از بحث و تبادل نظر باستناد ماده 87 قانون محاسبات عمومي اجراي عمليات فوق الذكر از طريق ترك تشريفات مناقصه حداكثر بمبلغ 543 / 042 / 22 فرانك فرانسه بصورت يوزانس يكساله ضمن رعايت ساير قوانين و مقررات مربوط مورد تائيد قرار گرفت.'], allow_flagging='never') demo.launch()