Adding Phrase using Phrase_List_grammar with Ms AZure SDK

SALIL RAY 1 Reputation point
2021-01-31T03:09:01.83+00:00

Hi
I tried with following codes to add a list of Medicines with Phrase List Grammar. My codes are producing the same inaccuracy. I hope they are not working.

CODE SAMPLE

*

import azure.cognitiveservices.speech as speechsdk
> import time

> service_region = 'MyRegion'

> speech_key='MyServiceKey'

> filename = 'Filepath/filename.wav'

> out_txtfile = 'Filepath//Filename.txt'

> **def speech_recognize_continuous_from_file():

>     """performs continuous speech recognition with input from an audio file"""

>     # <SpeechContinuousRecognitionWithFile>

>     speech_config = speechsdk.SpeechConfig(subscription=speech_key, region=service_region)

>     audio_config = speechsdk.audio.AudioConfig(filename=filename)

>     speech_recognizer = speechsdk.SpeechRecognizer(speech_config=speech_config, audio_config=audio_config)

>     done = False

>     def stop_cb(evt):

>         """callback that stops continuous recognition upon receiving an event `evt`"""

>         print('CLOSING on {}'.format(evt))

>         speech_recognizer.stop_continuous_recognition()

>         nonlocal done

>         done = True

>     all_results = []

>     

>     #####  The following Lines I have addded to pass a PhraseList

>     

>     reco = speechsdk.SpeechRecognizer(speech_config=speech_config)

>     speechsdk.PhraseListGrammar.from_recognizer(recognizer: azure.cognitiveservices.speech.Recognizer)

>     phrase_list_grammar = speechsdk.PhraseListGrammar.from_recognizer(reco)

>     def addphrase(medicines):

>         for m in medicines:

>             print(m)

>             phrase_list_grammar.addPhrase(m)

>         medicines =["sulfamethoxazole and trimethoprim","ibuprofen","o2","cipro","zocor","zingo","zetia","tenex","tac 3","sular","mavik","lozol","Lisinopril","lopid","lasix","imdur","endep","digox","coreg","calan","bumex","bidil","actos","aceon","oxygen","ranexa","zyrtec","keppra","uribel","dulera","zebeta","visken","vascor","tricor","tiazac","symlin","riomet","quin-g","prozac","nitrek","niacin","nesina","nardil","mykrox","lovaza","lotrel","lescol","lantus","kazano","inspra","hytrin","glyset","diuril","diovan","cr-gtf","cozaar","celexa","byetta","avapro","apidra","amaryl","altace","mucinex","zytanix","nadolol","eliquis","miralax","bactrim","tylenol","zestril","welchol","vytorin","victoza","verelan","vasotec","univasc","tol-tab","tikosyn","teveten","starlix","serzone","sectral","rezulin","remeron","qbrelis","precose","prandin","plendil","orinase","onglyza","novolog","norvasc","norpace","niaspan","monoket","midamor","mexitil","mevacor","maxzide","loniten","lofibra","lo-aqua","lipitos","lipitor","levemir","levatol","l-caine","lanoxin","kerlone","januvia","janumet","isordil","ismelin","inderal","hylorel","humulin","humalog","glynase","glycron","exubera","esidrix","effexor","dymelor","dyazide","duetact","diltzac","dilt-xr","digitek","diabeta","demadex","crestor","corgard","cartrol","cardura","cardene","capoten","avandia","atacand","aspirin","aldomet","advicor","klor-con","pindolol","bepridil","atenolol","isophane","miglitol","tramadol","losartin","nystatin","yentreve","wytensin","trandate","tolinase","tenormin","serpasil","ramipril","questran","prinzide","prinivil","primacor","pacerone","nitrocot","natrecor","minitran","midamore","metaglip","lotensin","juvisync","jantoven","isochron","invokana","hygroton","glumetza","fortomet","eskalith","entresto","dyrenium","dynacirc","dobutrex","diaqua-2","cycloset","coumadin","corlanor","coreg cr","colestid","catapres","cardizem","capozide","calan sr","bydureon","betapace","antipres","altoprev","accupril","acarbose","symbicort","trulicity","vitamin d","ezetimibe","guanabenz","labetalol","minoxidil","guanadrel","carteolol","diltiazem","verapamil","exenatide","lactulose","meclizine","donepezil","synthroid","metamucil","proventil","florastor","vitamin c","zaroxolyn","vaseretic","uad caine","trazodone","tradjenta","toprol-xl","pronestyl","procanbid","pravachol","prandimet","novolin r","novolin n","novolin l","normodyne","nitrostat","nitromist","nitrogard","nitro-dur","nitro-bid","nexterone","moduretic","minipress","microzide","micronase","metformin","matzim la","humulin r","humulin n","glyburide","glucotrol","glipizide","enalapril","diltia xt","dilocaine","diabinese","covera-hs","covera hs","cordarone","clinacort","cartia xt","captopril","bupropion","bournvita","blocadren","avandaryl","avandamet","amoxapine","aldactone","adalat cc","folic acid","omeprazole","tolazamide","nefazodone","felodipine","alogliptin","indapamide","penbutolol","furosemide","isradipine","carvedilol","colestipol","bumetanide","irbesartan","lovastatin","methyldopa","nifedipine","bisac-evac","metoprolol","alprazolam","quetiapine","gabapentin","amlodipine","famotidine","zestoretic","verelan pm","u-tri-lone","truxacaine","symlin pen","sertraline","paroxetine","norpace cr","nitro-time","nitroquick","nitropress","nervocaine","nefedipine","modurectic","metolazone","lidoject 1","lanoxicaps","ken-jec 40","kenalog-40","kenalog-10","jentadueto","janumet xr","isoptin sr","isoditrate","glucovance","glucophage","fosinopril","diovan hct","dilacor xr","cardioquin","cardene sr","benazepril","aristocort","apresoline","amoxicillin","colesevelam","liraglutide","nisoldipine","mirtazapine","pravastatin","tolbutamide","saxagliptin","fenofibrate","fluvastatin","linagliptin","propranolol","triamterene","nicardipine","venlafaxine","sitagliptin","simvastatin","repaglinide","perindopril","paracetamol","nateglinide","hydrodiuril","humalog mix","glimepiride","fluvoxamine","dynacirc cr","cardizem sr","cardizem la","cardizem cd","candesartan","anestacaine","allopurinol","aldactazide","gemfibrozil","venlafaxine","ventolin hfa","pantoprazole","multivitamin","troglitazone","insulin zinc","rosuvastatin","bisac - evac","velosulin br","trandolapril","symlinpen 60","pronestyl-sr","procardia xl","pioglitazone","micardis hct","iletin lente","glucotrol xl","glipizide xl","dilatrate-sr","cordarone iv","actoplus met","atorvastatin","diltiazem hcl","acetaminophen","metformin hcl","canagliflozin","acetohexamide","rosiglitazone","methocarbamol","multivitamins","refresh tears","levothyroxine","xylocaine hcl","triamonide 40","tenormin i.v.","symlinpen 120","lopressor hct","kombiglyze xr","humulin n pen","glucophage xr","bromocriptine","refresh optive","tamsulosin hcl","insulin aspart","insulin lispro","chlorothiazide","chlorpropamide","spironolactone","enalapril i.v.","capozide 50/25","capozide 50/15","capozide 25/25","capozide 25/15","insulin detemir","warfarin sodium","insulin regular","timolol maleate","ferrous sulfate","venlafaxine hcl","vaseretic 10-25","transderm-nitro","novolog penfill","novolog flexpen"]

>         addphrase(medicines)  

>     ## Inclusionnof PhraseList ends

>         

>     def handle_final_result(evt):

>         all_results.append(evt.result.text)

>     speech_recognizer.recognized.connect(handle_final_result)

>     # Connect callbacks to the events fired by the speech recognizer

>     speech_recognizer.recognizing.connect(lambda evt: print('RECOGNIZING: {}'.format(evt)))

>     speech_recognizer.recognized.connect(lambda evt: print('RECOGNIZED: {}'.format(evt)))

>     speech_recognizer.session_started.connect(lambda evt: print('SESSION STARTED: {}'.format(evt)))

>     speech_recognizer.session_stopped.connect(lambda evt: print('SESSION STOPPED {}'.format(evt)))

>     speech_recognizer.canceled.connect(lambda evt: print('CANCELED {}'.format(evt)))

>     # stop continuous recognition on either session stopped or canceled events

>     speech_recognizer.session_stopped.connect(stop_cb)

>     speech_recognizer.canceled.connect(stop_cb)

>     # Start continuous speech recognition

>     speech_recognizer.start_continuous_recognition()

>     while not done:

>         time.sleep(.5)

>     print("writing result into txt file...")

>     f = open(out_txtfile, "w")

>     for content in all_results:

>         f.write(content)

>     f.close()

>     print("done.")

>     print(all_results)

>     

> speech_recognize_continuous_from_file()**

*

The above Code Block is not helping me to add the phrase list. I am not observing any increased accuracy of the output text.

I appreciate if anybody can modify the portion of code I need to correct.

Thanks

Salil Ray

Azure AI Speech
Azure AI Speech
An Azure service that integrates speech processing into apps and services.
1,476 questions
{count} votes