{"cells":[{"cell_type":"code","execution_count":1,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":160,"referenced_widgets":["34737b905b43495ab5823b100af3d1e1","cd30b9d1c27b463aa8c13fc46acfd3a7","184d757c20e24ce6910d0d5a0346cda7","60a0453796b1483ba7967aadd26f4dee","960df296aba9494bb86820eed9e78588","371fb6545f5245eab0ec74040e722e84","af941b80c5324b6b86d4874865bef81f","322ef0319bc6456bb1a5ecd3951e3065","bb7c5c97676b4149a73f5bb6d5c323cc","e5789b44286e42f0be9e79f300b3bdfd","8a6564f4cc994b78841227fd185b4484","9e7e5816993f4f2c89140527c1b93497","847788bb3bbd4ae2ad47ff6edc5db6a2","aaf0ba87cd6043b7a28f849c5e1ab1eb","99abb2aa1d1f4ee6a30aa1a774e675ca","1053231570414637af40ed12bb144f0f","b03e3d816ef74911aa7ca33b9e58214d","ea211649b5c745a28df3a03a598f61e1","c194e5ea285443f9a02082e2b56db710","40768b1f67c845b58fe5b5a99c256058","8ae347f3682c43f386b416cedd25de58","43ef6a5bee3649819988ad934c79b66e","a1ca9385cd4b414998874efc30ef952c","1defa01a98a44a2b926ee2c0fec7a124","3b9b66d4cd934d8d9f77031475e3bdf6","a945a92fba494170bb83783efb5aeadd","d54c6045a7754e24b78502c829625092","22a0463895904046a486babe13f70d11","95718b8dfce445d0b373011c62572706","ff148a3c6f5b48da8ce8d7bdcb538321","0c5a16d588c241dbbe937e9f92642756","9f13815e1de947a7b009c9624ffe4578"]},"executionInfo":{"elapsed":500,"status":"ok","timestamp":1713501259875,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"KKa7zT4Z8INt","outputId":"d59c4b5e-5989-49c4-e681-45e6e50b67e8"},"outputs":[{"data":{"application/vnd.jupyter.widget-view+json":{"model_id":"34737b905b43495ab5823b100af3d1e1","version_major":2,"version_minor":0},"text/plain":["VBox(children=(HTML(value='
str:\n"," device = \"cuda\"\n"," prompt_template = \"\"\"\n"," user\n"," {query}\n"," \\\\nmodel\n","\n"," \"\"\"\n"," prompt = prompt_template.format(query=query)\n"," encodeds = tokenizer(prompt, return_tensors=\"pt\", add_special_tokens=True)\n"," model_inputs = encodeds.to(device)\n"," generated_ids = model.generate(**model_inputs, max_new_tokens=1000, do_sample=True, pad_token_id=tokenizer.eos_token_id)\n"," # decoded = tokenizer.batch_decode(generated_ids)\n"," decoded = tokenizer.decode(generated_ids[0], skip_special_tokens=True)\n"," return (decoded)\n","\n"]},{"cell_type":"code","execution_count":53,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":55731,"status":"ok","timestamp":1713511505527,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"QmX0dyIuVaoj","outputId":"d111c022-6a42-4c74-d0a1-6dcae6f18eb9"},"outputs":[{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["lossom 鈥?nday to 鈥?ce of all days when the Debit Card is found to be lost or abused, the Merchant is required to reverse the Credit Card transaction i.e. the money from the Merchant's account to yours. If 鈥?s not done, the Debit Card can be sent to the Fraud squad of the issuing Bank for a review. \\nThe Merchant has to reverse the Credit Card transaction and refund the exact amount of money, without any cash collection for a disputed product being sold. \\nThe customer can raise a dispute in writing to the concerned merchant at the time of purchase of his Debit Card. \\nOnce a written claim is made, the authority is vested to review the validity of the said claim and render the necessary approval. 鈥?s the Merchant found to be in the wrong for any reason, the company will reimburse the amount to the cardholder. 鈥?s the Merchant is not found to be in the wrong for any reason, the company will reimburse the amount to the Merchant and also refund the excess money collected from the cardholder. 鈥?s the excess amount refunded by the Merchant can be used to replenish any cash or other resources for conducting business. 鈥?s the Merchant is found to comply with all the above guidelines, the Merchant is reimbursed the refund amount directly into their Merchant Cash Box. 鈥?s this is with the understanding that the credit card company can use this to identify and suspend the Merchant's Debit Card authorization at the place of operation. 鈥?s The cardholder is required to intimate the issuer about the same through its PhoneBanking service. 鈥?s in a situation where the order placed is beyond the Cardholder鈥?s Credit limit provided by the Card Holder鈥?s Merchant or his Customer Contact Centre and the Cardholder does not intimate the Cardholder鈥?s Merchant about the resolution of the same issue via PhoneBanking or through its Customer Contact Center for the same within 48 Hrs of the purchase of the card, the company will reimburse any balance in your Account for the card purchased or make the Cardholder hold the balance till the card is replaced and the excess amount can be used to replenish the same. 鈥?s The Merchant will be liable to compensate the customer for any further loss, damage, or inconvenience caused by the disputed debit card. 鈥?s An amicable resolution to the card issue can be achieved by establishing that the transactions made are actually the cardholders鈥? transactions. 鈥?s All the charges shall be borne by the Merchant. 鈥?s If a dispute has been made for the Card issued by the Company, a written letter of complaint will be addressed to the Cardholder which can be delivered by courier service with a docket. 鈥?s After a stipulated period of 14 days from the date of receipt of the aforesaid letter of complaint from the cardholder, the Cardholder becomes a consumer of the Card from the company. 鈥?s The Merchant has no responsibility before the Cardholder until the card is returned to it or until the card is processed to restore the same by a Card Processing Service or by the company at its discretion. 鈥?s In the event that the Merchant is found to be non-compliant with the card company鈥?s procedures at any point of time, the cardholder can invoke the cancellation of the card and can recover its full purchase value. 鈥?s The Cardholder and the Company will have the option to proceed for legal action and the prevailing law and the company鈥?s rules shall prevail therein. 鈥?s The Cardholder is bound to cooperate with the Company to assist in the resolution of the dispute and to provide all necessary assistance for the recovery of the card. 鈥?s The cardholder also agrees to reimburse any loss, damage or inconvenience caused to the Company due to the act of the Company or it agents. 鈥?s The Cardholder is bound to comply with all the instructions or requirements provided by the Cardholder鈥?s Merchant or by the Cardholder鈥?s Merchant鈥?s representatives. 鈥?s The above terms and conditions are to be read in all materiality and to be binding on the Cardholder and the Cardholder鈥?s Bank. 鈥?s This is the extent of liability of the Merchant in respect of the Card, the Merchant is only liable for providing a fully functional Debit Card that can be used by the cardholder for making payments in the normal course of conduct. 鈥?s The Merchant is not liable if the Cardholder鈥?s bank cancels the card for any reason other than the cardholder鈥?s fault. 鈥?s For further information, please contact the company鈥?s Customer Contact Centre.\n"]}],"source":["query = \"What is the time frame to report Debit Card transaction dispute\"\n","result = get_completion(query=query, model=model, tokenizer=tokenizer)\n","pattern = r'model[\\s\\S]*'\n","# 使用正则表达式查找并获取匹配的内容\n","match = re.search(pattern, result)\n","\n","if match:\n"," result = match.group(0)\n"," # 去掉'model'本身,只保留其后面的内容\n"," ivr_steps = result.replace('model', '').strip()\n"," print(ivr_steps)"]},{"cell_type":"code","execution_count":8,"metadata":{"executionInfo":{"elapsed":2030,"status":"ok","timestamp":1713501605109,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"lTzVQRV8t6wM"},"outputs":[],"source":["from datasets import Dataset, load_dataset\n","import pandas as pd\n","import re\n","import nltk\n","import numpy as np\n","from nltk.translate.bleu_score import sentence_bleu"]},{"cell_type":"code","execution_count":48,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":35},"executionInfo":{"elapsed":333,"status":"ok","timestamp":1713511281894,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"iFaRS3VPsiDV","outputId":"7243d76f-b82f-4307-c2ca-bc6afafb7cba"},"outputs":[{"data":{"application/vnd.google.colaboratory.intrinsic+json":{"type":"string"},"text/plain":["'What is the time frame to report Debit Card transaction dispute'"]},"execution_count":48,"metadata":{},"output_type":"execute_result"}],"source":["df = pd.read_csv(file_path + 'train_set.csv')\n","dataset = Dataset.from_pandas(df)\n","dataset.shuffle(seed=4321)\n","dataset = dataset[:103]\n","dataset['Question'][0]"]},{"cell_type":"code","execution_count":49,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":35},"executionInfo":{"elapsed":333,"status":"ok","timestamp":1713511302250,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"NTGEeX8ZO0Sx","outputId":"3edc6dea-32be-4366-e771-d2f1c1598abd"},"outputs":[{"data":{"application/vnd.google.colaboratory.intrinsic+json":{"type":"string"},"text/plain":["'Transaction dispute needs to be reported in writing within 30 days from the transaction date.'"]},"execution_count":49,"metadata":{},"output_type":"execute_result"}],"source":["dataset['Answer'][0]"]},{"cell_type":"code","execution_count":37,"metadata":{"executionInfo":{"elapsed":1,"status":"ok","timestamp":1713509414810,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"QAulI6sO9OKl"},"outputs":[],"source":["querys = dataset['Question']\n","answers = dataset['Answer']"]},{"cell_type":"code","execution_count":23,"metadata":{"executionInfo":{"elapsed":476,"status":"ok","timestamp":1713503049853,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"h8DEFr4Gc3n7"},"outputs":[],"source":["from rouge_score import rouge_scorer\n","def sentence_rouge(reference, candidate):\n"," # 假设我们有两个字符串,一个是生成的文本摘要,另一个是参考文本摘要\n"," generated_summary = candidate\n"," reference_summary = reference\n","\n"," # 初始化Scorer实例\n"," scorer = rouge_scorer.RougeScorer(['rouge1', 'rouge2', 'rougeL'], use_stemmer=True)\n","\n"," # 计算得分\n"," scores = scorer.score(generated_summary, reference_summary)\n"," # 返回字典\n"," return scores\n","# 输出ROUGE-1, ROUGE-2, 和 ROUGE-L的F1分数\n"]},{"cell_type":"code","execution_count":43,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":3,"status":"ok","timestamp":1713511038972,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"JO8ebxQztae0","outputId":"b8a504df-8e9b-4e61-846e-e123874d75e5"},"outputs":[{"data":{"text/plain":["{'rouge1': Score(precision=0.0, recall=0.0, fmeasure=0.0),\n"," 'rouge2': Score(precision=0.0, recall=0.0, fmeasure=0.0),\n"," 'rougeL': Score(precision=0.0, recall=0.0, fmeasure=0.0)}"]},"execution_count":43,"metadata":{},"output_type":"execute_result"}],"source":["sentence_rouge('Iaf havae ga dogd, itcd iss cute', 'I have a cat, it is cuqte')"]},{"cell_type":"code","execution_count":38,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":1234039,"status":"ok","timestamp":1713510656720,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"yZOq_icb9NVT","outputId":"ee754d34-cb46-4aa4-87ec-4b6ea722ea37"},"outputs":[{"name":"stdout","output_type":"stream","text":["0\n"]},{"name":"stderr","output_type":"stream","text":["/usr/local/lib/python3.10/dist-packages/nltk/translate/bleu_score.py:552: UserWarning: \n","The hypothesis contains 0 counts of 3-gram overlaps.\n","Therefore the BLEU score evaluates to 0, independently of\n","how many N-gram overlaps of lower order it contains.\n","Consider using lower n-gram order or use SmoothingFunction()\n"," warnings.warn(_msg)\n","/usr/local/lib/python3.10/dist-packages/nltk/translate/bleu_score.py:552: UserWarning: \n","The hypothesis contains 0 counts of 4-gram overlaps.\n","Therefore the BLEU score evaluates to 0, independently of\n","how many N-gram overlaps of lower order it contains.\n","Consider using lower n-gram order or use SmoothingFunction()\n"," warnings.warn(_msg)\n"]},{"name":"stdout","output_type":"stream","text":["1\n","2\n","3\n","4\n"]},{"name":"stderr","output_type":"stream","text":["/usr/local/lib/python3.10/dist-packages/nltk/translate/bleu_score.py:552: UserWarning: \n","The hypothesis contains 0 counts of 2-gram overlaps.\n","Therefore the BLEU score evaluates to 0, independently of\n","how many N-gram overlaps of lower order it contains.\n","Consider using lower n-gram order or use SmoothingFunction()\n"," warnings.warn(_msg)\n"]},{"name":"stdout","output_type":"stream","text":["5\n","6\n","7\n","8\n","9\n","10\n","11\n","12\n","13\n","14\n","15\n","16\n","17\n","18\n","19\n","20\n","21\n","22\n","23\n","24\n","25\n","26\n","27\n","28\n","29\n","30\n","31\n","32\n","33\n","34\n","35\n","36\n","37\n","38\n","39\n","40\n","41\n","42\n","43\n","44\n","45\n","46\n","47\n","48\n","49\n","50\n","51\n","52\n","53\n","54\n","55\n","56\n","57\n","58\n","59\n","60\n","61\n","62\n","63\n","64\n","65\n","66\n","67\n","68\n","69\n","70\n","71\n","72\n","73\n","74\n","75\n","76\n","77\n","78\n","79\n","80\n","81\n","82\n","83\n","84\n","85\n","86\n","87\n","88\n","89\n","90\n","91\n","92\n","93\n","94\n","95\n","96\n","97\n","98\n","99\n","100\n","101\n","102\n","BLEU: 0.009725251813783678 \n","ROUGE1: 0.22983082606148533 \n","ROUGE2: 0.05843928367245067 \n","ROUGEL: 0.1484156679821411\n"]}],"source":["BLEU_gemma = []\n","ROUGE1_gemma = []\n","ROUGE2_gemma = []\n","ROUGEL_gemma = []\n","for i in range(len(querys)):\n"," print(i)\n"," result = get_completion(query=querys[i], model=model, tokenizer=tokenizer)\n"," pattern = r'model[\\s\\S]*'\n","\n"," # 使用正则表达式查找并获取匹配的内容\n"," match = re.search(pattern, result)\n","\n"," if match:\n"," result = match.group(0)\n"," # 去掉'model'本身,只保留其后面的内容\n"," ivr_steps = result.replace('model', '').strip()\n"," # print(ivr_steps)\n","\n"," reference = [answers[i].split()]\n"," candidate = ivr_steps.split()\n"," bleu_score = sentence_bleu(reference, candidate, weights=(0.25, 0.25, 0.25, 0.25))\n"," scores = sentence_rouge(answers[i], ivr_steps)\n","\n"," BLEU_gemma.append(bleu_score)\n"," ROUGE1_gemma.append(scores['rouge1'].fmeasure)\n"," ROUGE2_gemma.append(scores['rouge2'].fmeasure)\n"," ROUGEL_gemma.append(scores['rougeL'].fmeasure)\n","BLEU_original_model = np.mean(BLEU_gemma)\n","ROUGE1_original_model = np.mean(ROUGE1_gemma)\n","ROUGE2_original_model = np.mean(ROUGE2_gemma)\n","ROUGEL_original_model = np.mean(ROUGEL_gemma)\n","print('BLEU:',BLEU_original_model,\n"," '\\nROUGE1:',ROUGE1_original_model,\n"," '\\nROUGE2:',ROUGE2_original_model,\n"," '\\nROUGEL:',ROUGEL_original_model)"]},{"cell_type":"code","execution_count":27,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000},"executionInfo":{"elapsed":3600472,"status":"error","timestamp":1713508717213,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"Z8fKV1FBwXUe","outputId":"7b229471-065b-4014-c7ef-85d7d8c920d1"},"outputs":[{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["0\n"]},{"name":"stderr","output_type":"stream","text":["/usr/local/lib/python3.10/dist-packages/nltk/translate/bleu_score.py:552: UserWarning: \n","The hypothesis contains 0 counts of 4-gram overlaps.\n","Therefore the BLEU score evaluates to 0, independently of\n","how many N-gram overlaps of lower order it contains.\n","Consider using lower n-gram order or use SmoothingFunction()\n"," warnings.warn(_msg)\n","A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["1\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["2\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["3\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["4\n"]},{"name":"stderr","output_type":"stream","text":["/usr/local/lib/python3.10/dist-packages/nltk/translate/bleu_score.py:552: UserWarning: \n","The hypothesis contains 0 counts of 2-gram overlaps.\n","Therefore the BLEU score evaluates to 0, independently of\n","how many N-gram overlaps of lower order it contains.\n","Consider using lower n-gram order or use SmoothingFunction()\n"," warnings.warn(_msg)\n","/usr/local/lib/python3.10/dist-packages/nltk/translate/bleu_score.py:552: UserWarning: \n","The hypothesis contains 0 counts of 3-gram overlaps.\n","Therefore the BLEU score evaluates to 0, independently of\n","how many N-gram overlaps of lower order it contains.\n","Consider using lower n-gram order or use SmoothingFunction()\n"," warnings.warn(_msg)\n","A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["5\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["6\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["7\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["8\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["9\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["10\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["11\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["12\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["13\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["14\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["15\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["16\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["17\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["18\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["19\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["20\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["21\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["22\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["23\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["24\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["25\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["26\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["27\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["28\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["29\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["30\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["31\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["32\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["33\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["34\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["35\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["36\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["37\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["38\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["39\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["40\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["41\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["42\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["43\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["44\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["45\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["46\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["47\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["48\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["49\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["50\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["51\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["52\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["53\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["54\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["55\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["56\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["57\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["58\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["59\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["60\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["61\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["62\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["63\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["64\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["65\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["66\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["67\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["68\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["69\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["70\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["71\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["72\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["73\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["74\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["75\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["76\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["77\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["78\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["79\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["80\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["81\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["82\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["83\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["84\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["85\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["86\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["87\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["88\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["89\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["90\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["91\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["92\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["93\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["94\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["95\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["96\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["97\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["98\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["99\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["100\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["101\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["102\n"]},{"name":"stderr","output_type":"stream","text":["A decoder-only architecture is being used, but right-padding was detected! For correct generation results, please set `padding_side='left'` when initializing the tokenizer.\n"]},{"name":"stdout","output_type":"stream","text":["103\n"]},{"ename":"KeyboardInterrupt","evalue":"","output_type":"error","traceback":["\u001b[0;31m---------------------------------------------------------------------------\u001b[0m","\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)","\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mrange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mquerys\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m \u001b[0mresult\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mget_completion\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mquery\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mquerys\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmodel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmodel\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtokenizer\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mtokenizer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 8\u001b[0m \u001b[0mpattern\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34mr'model[\\s\\S]*'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;32m\u001b[0m in \u001b[0;36mget_completion\u001b[0;34m(query, model, tokenizer)\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[0mencodeds\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtokenizer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mprompt\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreturn_tensors\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"pt\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0madd_special_tokens\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 11\u001b[0m \u001b[0mmodel_inputs\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mencodeds\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mto\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdevice\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 12\u001b[0;31m \u001b[0mgenerated_ids\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmodel\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgenerate\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0mmodel_inputs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmax_new_tokens\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1000\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdo_sample\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mpad_token_id\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mtokenizer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0meos_token_id\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 13\u001b[0m \u001b[0;31m# decoded = tokenizer.batch_decode(generated_ids)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 14\u001b[0m \u001b[0mdecoded\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtokenizer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdecode\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mgenerated_ids\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mskip_special_tokens\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;32m/usr/local/lib/python3.10/dist-packages/torch/utils/_contextlib.py\u001b[0m in \u001b[0;36mdecorate_context\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 113\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mdecorate_context\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 114\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mctx_factory\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 115\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 116\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 117\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mdecorate_context\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;32m/usr/local/lib/python3.10/dist-packages/transformers/generation/utils.py\u001b[0m in \u001b[0;36mgenerate\u001b[0;34m(self, inputs, generation_config, logits_processor, stopping_criteria, prefix_allowed_tokens_fn, synced_gpus, assistant_model, streamer, negative_prompt_ids, negative_prompt_attention_mask, **kwargs)\u001b[0m\n\u001b[1;32m 1590\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1591\u001b[0m \u001b[0;31m# 13. run sample\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1592\u001b[0;31m return self.sample(\n\u001b[0m\u001b[1;32m 1593\u001b[0m \u001b[0minput_ids\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1594\u001b[0m \u001b[0mlogits_processor\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mprepared_logits_processor\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;32m/usr/local/lib/python3.10/dist-packages/transformers/generation/utils.py\u001b[0m in \u001b[0;36msample\u001b[0;34m(self, input_ids, logits_processor, stopping_criteria, logits_warper, max_length, pad_token_id, eos_token_id, output_attentions, output_hidden_states, output_scores, output_logits, return_dict_in_generate, synced_gpus, streamer, **model_kwargs)\u001b[0m\n\u001b[1;32m 2738\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mpad_token_id\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2739\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mValueError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"If `eos_token_id` is defined, make sure that `pad_token_id` is defined.\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2740\u001b[0;31m \u001b[0mnext_tokens\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnext_tokens\u001b[0m \u001b[0;34m*\u001b[0m \u001b[0munfinished_sequences\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mpad_token_id\u001b[0m \u001b[0;34m*\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0munfinished_sequences\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2741\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2742\u001b[0m \u001b[0;31m# update generated ids, model inputs, and length for next step\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;32m/usr/local/lib/python3.10/dist-packages/torch/_tensor.py\u001b[0m in \u001b[0;36mwrapped\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 38\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mhas_torch_function\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 39\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mhandle_torch_function\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mwrapped\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 40\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 41\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 42\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mNotImplemented\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;32m/usr/local/lib/python3.10/dist-packages/torch/_tensor.py\u001b[0m in \u001b[0;36m__rsub__\u001b[0;34m(self, other)\u001b[0m\n\u001b[1;32m 939\u001b[0m \u001b[0;34m@\u001b[0m\u001b[0m_handle_torch_function_and_wrap_type_error_to_not_implemented\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 940\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m__rsub__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mother\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 941\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0m_C\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_VariableFunctions\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrsub\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mother\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 942\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 943\u001b[0m \u001b[0;34m@\u001b[0m\u001b[0m_handle_torch_function_and_wrap_type_error_to_not_implemented\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;31mKeyboardInterrupt\u001b[0m: "]}],"source":["BLEU_bank_chatbot = []\n","ROUGE1_bank_chatbot = []\n","ROUGE2_bank_chatbot = []\n","ROUGEL_bank_chatbot = []\n","for i in range(len(querys)):\n"," print(i)\n"," result = get_completion(query=querys[i], model=model, tokenizer=tokenizer)\n"," pattern = r'model[\\s\\S]*'\n","\n"," # 使用正则表达式查找并获取匹配的内容\n"," match = re.search(pattern, result)\n","\n"," if match:\n"," result = match.group(0)\n"," # 去掉'model'本身,只保留其后面的内容\n"," ivr_steps = result.replace('model', '').strip()\n"," # print(ivr_steps)\n","\n"," reference = [answers[i].split()]\n"," candidate = ivr_steps.split()\n"," bleu_score = sentence_bleu(reference, candidate, weights=(0.25, 0.25, 0.25, 0.25))\n"," scores = sentence_rouge(answers[i], ivr_steps)\n","\n"," BLEU_bank_chatbot.append(bleu_score)\n"," ROUGE1_bank_chatbot.append(scores['rouge1'].fmeasure)\n"," ROUGE2_bank_chatbot.append(scores['rouge2'].fmeasure)\n"," ROUGEL_bank_chatbot.append(scores['rougeL'].fmeasure)\n","BLEU_merged_model = np.mean(BLEU_bank_chatbot)\n","ROUGE1_merged_model = np.mean(ROUGE1_bank_chatbot)\n","ROUGE2_merged_model = np.mean(ROUGE2_bank_chatbot)\n","ROUGEL_merged_model = np.mean(ROUGEL_bank_chatbot)\n","print('BLEU:',BLEU_merged_model,\n"," '\\nROUGE1:',ROUGE1_merged_model,\n"," '\\nROUGE2:',ROUGE2_merged_model,\n"," '\\nROUGEL:',ROUGEL_merged_model)"]},{"cell_type":"code","execution_count":28,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":397,"status":"ok","timestamp":1713508752891,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"QCjQULKVFGGk","outputId":"7372ef63-e1a3-4e79-b405-314d46d5ed1d"},"outputs":[{"name":"stdout","output_type":"stream","text":["BLEU: 0.004169024615889749 \n","ROUGE1: 0.1477298327214734 \n","ROUGE2: 0.03781535324784406 \n","ROUGEL: 0.08945045531352358\n"]}],"source":["BLEU_merged_model = np.mean(BLEU_bank_chatbot)\n","ROUGE1_merged_model = np.mean(ROUGE1_bank_chatbot)\n","ROUGE2_merged_model = np.mean(ROUGE2_bank_chatbot)\n","ROUGEL_merged_model = np.mean(ROUGEL_bank_chatbot)\n","print('BLEU:',BLEU_merged_model,\n"," '\\nROUGE1:',ROUGE1_merged_model,\n"," '\\nROUGE2:',ROUGE2_merged_model,\n"," '\\nROUGEL:',ROUGEL_merged_model)"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":472},"executionInfo":{"elapsed":500,"status":"ok","timestamp":1711877889027,"user":{"displayName":"Yuzheng ZHAO","userId":"17332033973441833102"},"user_tz":-480},"id":"UbUXunI5-VnP","outputId":"01983cd7-df81-4bf7-8e90-63532ada7f4c"},"outputs":[{"data":{"image/png":"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69ev15w5c/T888/rrbfe0uDBg2tsjMA5BCSgjjh3auPXdzDVpDZt2kiS9u/fX+7owY8//qjs7GzdeOONF+zHxcVF119/va6//nq98MIL+vOf/6ynnnpKGzduVFRUlNq2bavMzEydOXPG4dSOdSzvv/++Tp486XAU6csvv3QY6/lcccUVuuyyy1RaWnpRR87atGmjsrIyZWVlmUetJCk3N1f5+fkX3P75VBYmBgwYoOeff17vv/++fH191b59e9lsNnXq1EmbNm3Spk2bHKZ4+PXvy+rLL7+Ur69vjV6Ab1XV1+jcz6ysLIejOceOHdP//vc/hz7btm2rU6dOXfTRzoCAAD366KN69NFHlZeXpx49eujZZ58lIKFWcA0SUAecOXNG69evl5ubm8Mfo5p0/fXXy83NTa+88kq564eWLFmis2fPXvAPzYkTJ8q1nfvqjXO3ft9+++06fvy4Fi1aVK723NGJm266SaWlpeVqXnzxRdlstguOw9XVVbfffrtWr16tvXv3llt+7NixSte/6aabJKncXVMvvPCCJJl3lVWXl5eXCgoKKlw2YMAAFRcXa/78+erfv78ZpgYMGKDXXntN33//vXn9kfRzGAgLC9OyZcscpgLYu3ev1q9fb+5DbanqaxQVFaXGjRtr4cKFDkefKroj7a677lJGRobee++9csvy8/PN/0mwKi0tLfe6tmzZUoGBgeWmHABqCkeQACd49913zaMleXl5Wr58ubKysjRp0iR5e3s71G7fvl2zZs0q18d1111nXq9SUFCgf/7znxVu69zUAS1btlRSUpKmTp2qa6+9VrfccouaNGmiLVu26F//+pduvPFG3XzzzZWO++mnn9ZHH32kIUOGqE2bNsrLy9PLL7+sK6+80hxLXFyc/vGPfygxMVFbt27VgAEDVFRUpPfff1+PPvqobr31Vt18880aOHCgnnrqKR0+fFjdunXT+vXr9Z///EcJCQlq27btBV/D5557Ths3bpTdbtdDDz2kjh076sSJE9q5c6fef//9CsPcOd26ddOIESO0ZMkS5efnKzIyUlu3btWyZcsUExOjgQMHXnD7FQkPD9fKlSuVmJioXr16qWnTpuZrGhERoUaNGmn//v0aNWqUuc61116rV155RZIcApL083fADR48WBEREYqPjzdv8/fx8an17ymr6mt0xRVXaPz48UpOTtbQoUN10003adeuXXr33Xfl6+vr0OeECRP09ttva+jQobr//vsVHh6uoqIiffbZZ3rzzTd1+PDhcutIP8+BdOWVV+qOO+5Qt27d1LRpU73//vvatm2b5s2bV6uvA37HnHgHHfC7U9Ft/h4eHkZYWJjxyiuvONwmbRjGeW/fl2Q888wzhmFUfpt/RW/xf/7zn0afPn0MLy8vw93d3Wjfvr0xc+ZM4/Tp0xccf3p6unHrrbcagYGBhpubmxEYGGgMHz683G3bP/74o/HUU08ZISEhRuPGjQ1/f3/jjjvuMA4ePGjWnDx50njiiSeMwMBAo3HjxkZoaKgxZ86cCl+D893enZubazz22GNGUFCQuZ3rr7/eWLJkyQX35cyZM8bMmTPNMQYFBRmTJ08u9zpU5zb/U6dOGXfffbfRrFkzQ1K5W/579eplSDIyMzPNtm+//daQZAQFBVXY5/vvv2/069fP8PT0NLy9vY2bb77Z+OKLLy44lnO3+a9atcqh/dy/wW3btjm0VzQNRFVfo9LSUmPmzJlGQECA4enpaVx33XXG3r17jTZt2jjc5m8YP//eJ0+ebFx99dWGm5ub4evra/Tt29eYO3euw3QE+tVt/sXFxcaECROMbt26GZdddpnh5eVldOvWzXj55Zcv+DoAF8tmGJYr8gAAAH7nuAYJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWTBR5kcrKyvT999/rsssuu2Tf5wQAAH4bwzB08uRJBQYGml+yXREC0kX6/vvvy32fFQAAqB+ys7N15ZVXnnc5AekinfuCzezs7HJfDQEAAOqmwsJCBQUFOXxRdkUISBfp3Gk1b29vAhIAAPXMhS6P4SJtAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFjUiYC0ePFiBQcHy8PDQ3a7XVu3bq20ftWqVWrfvr08PDzUpUsXrVu3zmG5YRhKSkpSQECAPD09FRUVpaysLHP5hx9+KJvNVuFj27ZttbKPAACg/mjk7AGsXLlSiYmJSklJkd1u1/z58xUdHa39+/erZcuW5eq3bNmi4cOHKzk5WUOHDtXy5csVExOjnTt3qnPnzpKk2bNna8GCBVq2bJlCQkI0bdo0RUdH64svvpCHh4f69u2ro0ePOvQ7bdo0paenq2fPnpdkvwEANcc20+bsIaCGGdMNp27fZhiGU0dgt9vVq1cvLVq0SJJUVlamoKAgjRkzRpMmTSpXHxsbq6KiIq1du9Zs69Onj8LCwpSSkiLDMBQYGKhx48Zp/PjxkqSCggL5+fkpNTVVw4YNK9fnmTNn1KpVK40ZM0bTpk2r0rgLCwvl4+OjgoICeXt7X8yuAwBqCAGp4amtgFTVv99OPcVWUlKiHTt2KCoqymxzcXFRVFSUMjIyKlwnIyPDoV6SoqOjzfpDhw4pJyfHocbHx0d2u/28fb799tv64YcfNHLkyN+6SwAAoAFw6im248ePq7S0VH5+fg7tfn5++vLLLytcJycnp8L6nJwcc/m5tvPVWP3tb39TdHS0rrzyyvOOtbi4WMXFxebzwsLC89YCAID6rU5cpO1M3377rd577z3Fx8dXWpecnCwfHx/zERQUdIlGCAAALjWnBiRfX1+5uroqNzfXoT03N1f+/v4VruPv719p/bmfVe1z6dKlatGihW655ZZKxzp58mQVFBSYj+zs7Mp3DgAA1FtODUhubm4KDw9Xenq62VZWVqb09HRFRERUuE5ERIRDvSRt2LDBrA8JCZG/v79DTWFhoTIzM8v1aRiGli5dqri4ODVu3LjSsbq7u8vb29vhAQAAGian3+afmJioESNGqGfPnurdu7fmz5+voqIi84LpuLg4tWrVSsnJyZKksWPHKjIyUvPmzdOQIUO0YsUKbd++XUuWLJEk2Ww2JSQkaNasWQoNDTVv8w8MDFRMTIzDtj/44AMdOnRIDz744CXdZwAAULc5PSDFxsbq2LFjSkpKUk5OjsLCwpSWlmZeZH3kyBG5uPxyoKtv375avny5pk6dqilTpig0NFRr1qwx50CSpIkTJ6qoqEijRo1Sfn6++vfvr7S0NHl4eDhs+29/+5v69u2r9u3bX5qdBQAA9YLT50Gqr5gHCQDqDuZBanh+1/MgAQAA1EUEJAAAAAsCEgAAgAUBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALJw+kzbKszHfWYPDdKwAUL9wBAkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABYEJAAAAAsCEgAAgAUBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABZOD0iLFy9WcHCwPDw8ZLfbtXXr1krrV61apfbt28vDw0NdunTRunXrHJYbhqGkpCQFBATI09NTUVFRysrKKtfPO++8I7vdLk9PTzVv3lwxMTE1uVsAAKAec2pAWrlypRITEzV9+nTt3LlT3bp1U3R0tPLy8iqs37Jli4YPH674+Hjt2rVLMTExiomJ0d69e82a2bNna8GCBUpJSVFmZqa8vLwUHR2t06dPmzWrV6/Wfffdp5EjR2rPnj3avHmz7r777lrfXwAAUD/YDMMwnLVxu92uXr16adGiRZKksrIyBQUFacyYMZo0aVK5+tjYWBUVFWnt2rVmW58+fRQWFqaUlBQZhqHAwECNGzdO48ePlyQVFBTIz89PqampGjZsmM6ePavg4GDNnDlT8fHxFz32wsJC+fj4qKCgQN7e3hfdT0VsthrtDnWA895lwO+DbSYfnA2NMb12Pjir+vfbaUeQSkpKtGPHDkVFRf0yGBcXRUVFKSMjo8J1MjIyHOolKTo62qw/dOiQcnJyHGp8fHxkt9vNmp07d+q7776Ti4uLunfvroCAAA0ePNjhKFRFiouLVVhY6PAAAAANk9MC0vHjx1VaWio/Pz+Hdj8/P+Xk5FS4Tk5OTqX1535WVvP1119LkmbMmKGpU6dq7dq1at68ua677jqdOHHivONNTk6Wj4+P+QgKCqrG3gIAgPrE6RdpX2plZWWSpKeeekq33367wsPDtXTpUtlsNq1ateq8602ePFkFBQXmIzs7+1INGQAAXGJOC0i+vr5ydXVVbm6uQ3tubq78/f0rXMff37/S+nM/K6sJCAiQJHXs2NFc7u7urquuukpHjhw573jd3d3l7e3t8AAAAA2T0wKSm5ubwsPDlZ6ebraVlZUpPT1dERERFa4TERHhUC9JGzZsMOtDQkLk7+/vUFNYWKjMzEyzJjw8XO7u7tq/f79Zc+bMGR0+fFht2rSpsf0DAAD1VyNnbjwxMVEjRoxQz5491bt3b82fP19FRUUaOXKkJCkuLk6tWrVScnKyJGns2LGKjIzUvHnzNGTIEK1YsULbt2/XkiVLJEk2m00JCQmaNWuWQkNDFRISomnTpikwMNCc58jb21uPPPKIpk+frqCgILVp00Zz5syRJN15552X/kUAAAB1jlMDUmxsrI4dO6akpCTl5OQoLCxMaWlp5kXWR44ckYvLLwe5+vbtq+XLl2vq1KmaMmWKQkNDtWbNGnXu3NmsmThxooqKijRq1Cjl5+erf//+SktLk4eHh1kzZ84cNWrUSPfdd59++ukn2e12ffDBB2revPml23kAAFBnOXUepPqMeZBQHbzLgNrFPEgNz+92HiQAAIC6ioAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABYEJAAAAAsCEgAAgAUBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABYEJAAAAIs6EZAWL16s4OBgeXh4yG63a+vWrZXWr1q1Su3bt5eHh4e6dOmidevWOSw3DENJSUkKCAiQp6enoqKilJWV5VATHBwsm83m8HjuuedqfN8AAED94/SAtHLlSiUmJmr69OnauXOnunXrpujoaOXl5VVYv2XLFg0fPlzx8fHatWuXYmJiFBMTo71795o1s2fP1oIFC5SSkqLMzEx5eXkpOjpap0+fdujr6aef1tGjR83HmDFjanVfAQBA/WAzDMNw5gDsdrt69eqlRYsWSZLKysoUFBSkMWPGaNKkSeXqY2NjVVRUpLVr15ptffr0UVhYmFJSUmQYhgIDAzVu3DiNHz9eklRQUCA/Pz+lpqZq2LBhkn4+gpSQkKCEhISLGndhYaF8fHxUUFAgb2/vi+rjfGy2Gu0OdYBz32VAw2ebyQdnQ2NMr50Pzqr+/XbqEaSSkhLt2LFDUVFRZpuLi4uioqKUkZFR4ToZGRkO9ZIUHR1t1h86dEg5OTkONT4+PrLb7eX6fO6559SiRQt1795dc+bM0dmzZ8871uLiYhUWFjo8AABAw9TImRs/fvy4SktL5efn59Du5+enL7/8ssJ1cnJyKqzPyckxl59rO1+NJD3++OPq0aOHLr/8cm3ZskWTJ0/W0aNH9cILL1S43eTkZM2cObN6OwgAAOolpwYkZ0pMTDT/u2vXrnJzc9PDDz+s5ORkubu7l6ufPHmywzqFhYUKCgq6JGMFAACXllNPsfn6+srV1VW5ubkO7bm5ufL3969wHX9//0rrz/2sTp/Sz9dCnT17VocPH65wubu7u7y9vR0eAACgYXJqQHJzc1N4eLjS09PNtrKyMqWnpysiIqLCdSIiIhzqJWnDhg1mfUhIiPz9/R1qCgsLlZmZed4+JWn37t1ycXFRy5Ytf8suAQCABsDpp9gSExM1YsQI9ezZU71799b8+fNVVFSkkSNHSpLi4uLUqlUrJScnS5LGjh2ryMhIzZs3T0OGDNGKFSu0fft2LVmyRJJks9mUkJCgWbNmKTQ0VCEhIZo2bZoCAwMVExMj6ecLvTMzMzVw4EBddtllysjI0BNPPKF7771XzZs3d8rrAAAA6g6nB6TY2FgdO3ZMSUlJysnJUVhYmNLS0syLrI8cOSIXl18OdPXt21fLly/X1KlTNWXKFIWGhmrNmjXq3LmzWTNx4kQVFRVp1KhRys/PV//+/ZWWliYPDw9JP58uW7FihWbMmKHi4mKFhIToiSeecLjGCAAA/H45fR6k+op5kFAdvMuA2sU8SA3P73oeJAAAgLqIgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABYEJAAAAAsCEgAAgAUBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwuOiAVFJSov379+vs2bM1OR4AAACnq3ZA+vHHHxUfH68mTZqoU6dOOnLkiCRpzJgxeu6552p8gAAAAJdatQPS5MmTtWfPHn344Yfy8PAw26OiorRy5coaHRwAAIAzNKruCmvWrNHKlSvVp08f2Ww2s71Tp046ePBgjQ4OAADAGap9BOnYsWNq2bJlufaioiKHwAQAAFBfVTsg9ezZU++88475/Fwo+utf/6qIiIiaGxkAAICTVPsU25///GcNHjxYX3zxhc6ePauXXnpJX3zxhbZs2aL//ve/tTFGAACAS6raR5D69++vPXv26OzZs+rSpYvWr1+vli1bKiMjQ+Hh4bUxRgAAgEuqWkeQzpw5o4cffljTpk3Tq6++WltjAgAAcKpqHUFq3LixVq9eXVtjAQAAqBOqfYotJiZGa9asqYWhAAAA1A3Vvkg7NDRUTz/9tDZv3qzw8HB5eXk5LH/88cdrbHAAAADOYDMMw6jOCiEhIefvzGbT119//ZsHVR8UFhbKx8dHBQUF8vb2rtG+mU6q4aneuwxAddlm8sHZ0BjTa+eDs6p/v6t9BOnQoUO/aWAAAAB1XbWvQfo1wzBUzQNQAAAAdd5FBaR//OMf6tKlizw9PeXp6amuXbvqtddeq+mxAQAAOEW1T7G98MILmjZtmkaPHq1+/fpJkj7++GM98sgjOn78uJ544okaHyQAAMClVO2AtHDhQr3yyiuKi4sz22655RZ16tRJM2bMICABAIB6r9qn2I4ePaq+ffuWa+/bt6+OHj1aI4MCAABwpmoHpKuvvlpvvPFGufaVK1cqNDS0RgYFAADgTNUOSDNnzlRSUpIGDRqkZ555Rs8884wGDRqkmTNn6umnn76oQSxevFjBwcHy8PCQ3W7X1q1bK61ftWqV2rdvLw8PD3Xp0kXr1q1zWG4YhpKSkhQQECBPT09FRUUpKyurwr6Ki4sVFhYmm82m3bt3X9T4AQBAw1LtgHT77bcrMzNTvr6+WrNmjdasWSNfX19t3bpVf/zjH6s9gJUrVyoxMVHTp0/Xzp071a1bN0VHRysvL6/C+i1btmj48OGKj4/Xrl27FBMTo5iYGO3du9esmT17thYsWKCUlBRlZmbKy8tL0dHROn36dLn+Jk6cqMDAwGqPGwAANFzVnkm7ptntdvXq1UuLFi2SJJWVlSkoKEhjxozRpEmTytXHxsaqqKhIa9euNdv69OmjsLAwpaSkyDAMBQYGaty4cRo/frwkqaCgQH5+fkpNTdWwYcPM9d59910lJiZq9erV6tSpk3bt2qWwsLAqjZuZtFEdTBcG1C5m0m54nD2TdrWPIK1bt07vvfdeufb33ntP7777brX6Kikp0Y4dOxQVFfXLgFxcFBUVpYyMjArXycjIcKiXpOjoaLP+0KFDysnJcajx8fGR3W536DM3N1cPPfSQXnvtNTVp0uSCYy0uLlZhYaHDAwAANEzVDkiTJk1SaWlpuXbDMCo84lOZ48ePq7S0VH5+fg7tfn5+ysnJqXCdnJycSuvP/aysxjAM3X///XrkkUfUs2fPKo01OTlZPj4+5iMoKKhK6wEAgPqn2gEpKytLHTt2LNfevn17HThwoEYGVdsWLlyokydPavLkyVVeZ/LkySooKDAf2dnZtThCAADgTNUOSD4+Pvr666/LtR84cEBeXl7V6svX11eurq7Kzc11aM/NzZW/v3+F6/j7+1daf+5nZTUffPCBMjIy5O7urkaNGunqq6+WJPXs2VMjRoyocLvu7u7y9vZ2eAAAgIap2gHp1ltvVUJCgg4ePGi2HThwQOPGjdMtt9xSrb7c3NwUHh6u9PR0s62srEzp6emKiIiocJ2IiAiHeknasGGDWR8SEiJ/f3+HmsLCQmVmZpo1CxYs0J49e7R7927t3r3bnCZg5cqVevbZZ6u1DwAAoOGp9leNzJ49W4MGDVL79u115ZVXSpK+/fZbDRgwQHPnzq32ABITEzVixAj17NlTvXv31vz581VUVKSRI0dKkuLi4tSqVSslJydLksaOHavIyEjNmzdPQ4YM0YoVK7R9+3YtWbJEkmSz2ZSQkKBZs2YpNDRUISEhmjZtmgIDAxUTEyNJat26tcMYmjZtKklq27atuU8AAOD3q9oBycfHR1u2bNGGDRu0Z88eeXp6qmvXrrr22msvagCxsbE6duyYkpKSlJOTo7CwMKWlpZkXWR85ckQuLr8c6Orbt6+WL1+uqVOnasqUKQoNDdWaNWvUuXNns2bixIkqKirSqFGjlJ+fr/79+ystLU0eHh4XNUYAAPD7UiPzIOXn56tZs2Y1MJz6g3mQUB3MgwTULuZBanjq3TxIzz//vFauXGk+v+uuu9SiRQu1atVKe/bsubjRAgAA1CHVDkgpKSnmHEAbNmzQhg0b9O6772rw4MGaMGFCjQ8QAADgUqv2NUg5OTlmQFq7dq3uuusu3XjjjQoODpbdbq/xAQIAAFxq1T6C1Lx5c3OSxLS0NPMrPQzDqHCGbQAAgPqm2keQbrvtNt19990KDQ3VDz/8oMGDB0uSdu3aZU64CAAAUJ9VOyC9+OKLCg4OVnZ2tmbPnm3OIXT06FE9+uijNT5AAACAS61GbvP/PeI2f1QH7zKgdnGbf8NT727zBwAAaOgISAAAABYEJAAAAAsCEgAAgEWV72IrLCyssN3Ly0uurq41NiAAAABnq/IRpGbNmql58+blHp6enmrXrp1effXV2hwnAADAJVPlI0gbN26ssD0/P187duzQhAkT1KhRI40cObLGBgcAAOAMVQ5IkZGR51126623Kjg4WAsXLiQgAQCAeq/GLtKOjIzUgQMHaqo7AAAAp6mxgFRQUCAfH5+a6g4AAMBpaiQgnTlzRnPmzJHdbq+J7gAAAJyqytcg3XbbbRW2FxQU6PPPP5fNZtOmTZtqbGAAAADOUuWAdL7TZ0FBQbr99tt1zz33cIoNAAA0CFUOSEuXLq3NcQAAANQZVb4GKS8vr9LlZ8+e1datW3/zgAAAAJytygEpICDAISR16dJF2dnZ5vMffvhBERERNTs6AAAAJ6hyQDIMw+H54cOHdebMmUprAAAA6qMamwdJkmw2W012BwAA4BQ1GpAAAAAagirfxWaz2XTy5El5eHjIMAzZbDadOnVKhYWFkmT+BAAAqO+qHJAMw9A111zj8Lx79+4OzznFBgAAGoIqB6SNGzfW5jgAAADqjCoHpMjIyEqX//jjj9q9e/dvHQ8AAIDT1dhF2llZWRowYEBNdQcAAOA03MUGAABgQUACAACwICABAABYVPki7bfffrvS5YcOHfrNgwEAAKgLqhyQYmJiLljDPEgAAKAhqHJAKisrq81xAAAA1BlcgwQAAGBR7YD0ww8/mP+dnZ2tpKQkTZgwQR999NFFD2Lx4sUKDg6Wh4eH7Ha7tm7dWmn9qlWr1L59e3l4eKhLly5at26dw3LDMJSUlKSAgAB5enoqKipKWVlZDjW33HKLWrduLQ8PDwUEBOi+++7T999/f9H7AAAAGo4qB6TPPvtMwcHBatmypdq3b6/du3erV69eevHFF7VkyRL94Q9/0Jo1a6o9gJUrVyoxMVHTp0/Xzp071a1bN0VHRysvL6/C+i1btmj48OGKj4/Xrl27FBMTo5iYGO3du9esmT17thYsWKCUlBRlZmbKy8tL0dHROn36tFkzcOBAvfHGG9q/f79Wr16tgwcP6o477qj2+AEAQMNjMwzDqErh4MGD1ahRI02aNEmvvfaa1q5dq+joaL366quSpDFjxmjHjh365JNPqjUAu92uXr16adGiRZJ+vtYpKChIY8aM0aRJk8rVx8bGqqioSGvXrjXb+vTpo7CwMKWkpMgwDAUGBmrcuHEaP368JKmgoEB+fn5KTU3VsGHDKhzH22+/rZiYGBUXF6tx48YXHHdhYaF8fHxUUFAgb2/vau3zhXCte8NTtXcZgItlm8kHZ0NjTK+dD86q/v2u8hGkbdu26dlnn1W/fv00d+5cff/993r00Ufl4uIiFxcXjRkzRl9++WW1BllSUqIdO3YoKirqlwG5uCgqKkoZGRkVrpORkeFQL0nR0dFm/aFDh5STk+NQ4+PjI7vdft4+T5w4oddff119+/atUjgCAAANW5UD0okTJ+Tv7y9Jatq0qby8vNS8eXNzefPmzXXy5Mlqbfz48eMqLS2Vn5+fQ7ufn59ycnIqXCcnJ6fS+nM/q9Lnk08+KS8vL7Vo0UJHjhzRf/7zn/OOtbi4WIWFhQ4PAADQMFXrIm3rPEf1fd6jCRMmaNeuXVq/fr1cXV0VFxen851xTE5Olo+Pj/kICgq6xKMFAACXSpXnQZKk+++/X+7u7pKk06dP65FHHpGXl5ekn4+wVJevr69cXV2Vm5vr0J6bm2serbLy9/evtP7cz9zcXAUEBDjUhIWFldu+r6+vrrnmGnXo0EFBQUH65JNPFBERUW67kydPVmJiovm8sLCQkAQAQANV5SNII0aMUMuWLc0jKPfee68CAwPN5y1btlRcXFy1Nu7m5qbw8HClp6ebbWVlZUpPT68wpEhSRESEQ70kbdiwwawPCQmRv7+/Q01hYaEyMzPP2+e57UrnD3ru7u7y9vZ2eAAAgIapykeQli5dWisDSExM1IgRI9SzZ0/17t1b8+fPV1FRkUaOHClJiouLU6tWrZScnCxJGjt2rCIjIzVv3jwNGTJEK1as0Pbt27VkyRJJP5/2S0hI0KxZsxQaGqqQkBBNmzZNgYGB5telZGZmatu2berfv7+aN2+ugwcPatq0aWrbtm2lIQoAAPw+VOsUW22IjY3VsWPHlJSUpJycHIWFhSktLc28yPrIkSNycfnlQFffvn21fPlyTZ06VVOmTFFoaKjWrFmjzp07mzUTJ05UUVGRRo0apfz8fPXv319paWny8PCQJDVp0kRvvfWWpk+frqKiIgUEBGjQoEGaOnWqeQoRAAD8flV5HiQ4Yh4kVAfvMqB2MQ9Sw1Nv5kECAAD4vSAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABYEJAAAAAsCEgAAgAUBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCiTgSkxYsXKzg4WB4eHrLb7dq6dWul9atWrVL79u3l4eGhLl26aN26dQ7LDcNQUlKSAgIC5OnpqaioKGVlZZnLDx8+rPj4eIWEhMjT01Nt27bV9OnTVVJSUiv7BwAA6henB6SVK1cqMTFR06dP186dO9WtWzdFR0crLy+vwvotW7Zo+PDhio+P165duxQTE6OYmBjt3bvXrJk9e7YWLFiglJQUZWZmysvLS9HR0Tp9+rQk6csvv1RZWZn+8pe/6PPPP9eLL76olJQUTZky5ZLsMwAAqNtshmEYzhyA3W5Xr169tGjRIklSWVmZgoKCNGbMGE2aNKlcfWxsrIqKirR27VqzrU+fPgoLC1NKSooMw1BgYKDGjRun8ePHS5IKCgrk5+en1NRUDRs2rMJxzJkzR6+88oq+/vrrKo27sLBQPj4+KigokLe3d3V3u1I2W412hzrAue8yoOGzzeSDs6ExptfOB2dV/3479QhSSUmJduzYoaioKLPNxcVFUVFRysjIqHCdjIwMh3pJio6ONusPHTqknJwchxofHx/Z7fbz9in9HKIuv/zy8y4vLi5WYWGhwwMAADRMTg1Ix48fV2lpqfz8/Bza/fz8lJOTU+E6OTk5ldaf+1mdPg8cOKCFCxfq4YcfPu9Yk5OT5ePjYz6CgoIq3zkAAFBvOf0aJGf77rvvNGjQIN1555166KGHzls3efJkFRQUmI/s7OxLOEoAAHApOTUg+fr6ytXVVbm5uQ7tubm58vf3r3Adf3//SuvP/axKn99//70GDhyovn37asmSJZWO1d3dXd7e3g4PAADQMDk1ILm5uSk8PFzp6elmW1lZmdLT0xUREVHhOhEREQ71krRhwwazPiQkRP7+/g41hYWFyszMdOjzu+++03XXXafw8HAtXbpULi6/+4NpAADg/2vk7AEkJiZqxIgR6tmzp3r37q358+erqKhII0eOlCTFxcWpVatWSk5OliSNHTtWkZGRmjdvnoYMGaIVK1Zo+/bt5hEgm82mhIQEzZo1S6GhoQoJCdG0adMUGBiomJgYSb+EozZt2mju3Lk6duyYOZ7zHbkCAAC/H04PSLGxsTp27JiSkpKUk5OjsLAwpaWlmRdZHzlyxOHoTt++fbV8+XJNnTpVU6ZMUWhoqNasWaPOnTubNRMnTlRRUZFGjRql/Px89e/fX2lpafLw8JD08xGnAwcO6MCBA7ryyisdxuPkWQ8AAEAd4PR5kOor5kFCdfAuA2oX8yA1PL/reZAAAADqIgISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABYEJAAAAAsCEgAAgAUBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACycHpAWL16s4OBgeXh4yG63a+vWrZXWr1q1Su3bt5eHh4e6dOmidevWOSw3DENJSUkKCAiQp6enoqKilJWV5VDz7LPPqm/fvmrSpImaNWtW07sEAADqOacGpJUrVyoxMVHTp0/Xzp071a1bN0VHRysvL6/C+i1btmj48OGKj4/Xrl27FBMTo5iYGO3du9esmT17thYsWKCUlBRlZmbKy8tL0dHROn36tFlTUlKiO++8U3/6059qfR8BAED9YzMMw3DWxu12u3r16qVFixZJksrKyhQUFKQxY8Zo0qRJ5epjY2NVVFSktWvXmm19+vRRWFiYUlJSZBiGAgMDNW7cOI0fP16SVFBQID8/P6WmpmrYsGEO/aWmpiohIUH5+fnVHnthYaF8fHxUUFAgb2/vaq9fGZutRrtDHeC8dxnw+2CbyQdnQ2NMr50Pzqr+/XbaEaSSkhLt2LFDUVFRvwzGxUVRUVHKyMiocJ2MjAyHekmKjo426w8dOqScnByHGh8fH9nt9vP2WVXFxcUqLCx0eAAAgIbJaQHp+PHjKi0tlZ+fn0O7n5+fcnJyKlwnJyen0vpzP6vTZ1UlJyfLx8fHfAQFBf2m/gAAQN3l9Iu064vJkyeroKDAfGRnZzt7SAAAoJY4LSD5+vrK1dVVubm5Du25ubny9/evcB1/f/9K68/9rE6fVeXu7i5vb2+HBwAAaJicFpDc3NwUHh6u9PR0s62srEzp6emKiIiocJ2IiAiHeknasGGDWR8SEiJ/f3+HmsLCQmVmZp63TwAAAKtGztx4YmKiRowYoZ49e6p3796aP3++ioqKNHLkSElSXFycWrVqpeTkZEnS2LFjFRkZqXnz5mnIkCFasWKFtm/friVLlkiSbDabEhISNGvWLIWGhiokJETTpk1TYGCgYmJizO0eOXJEJ06c0JEjR1RaWqrdu3dLkq6++mo1bdr0kr4GAACg7nFqQIqNjdWxY8eUlJSknJwchYWFKS0tzbzI+siRI3Jx+eUgV9++fbV8+XJNnTpVU6ZMUWhoqNasWaPOnTubNRMnTlRRUZFGjRql/Px89e/fX2lpafLw8DBrkpKStGzZMvN59+7dJUkbN27UddddV8t7DQAA6jqnzoNUnzEPEqqDdxlQu5gHqeH53c6DBAAAUFcRkAAAACwISAAAABYEJAAAAAsCEgAAgAUBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABYEJAAAAAsCEgAAgAUBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAok4EpMWLFys4OFgeHh6y2+3aunVrpfWrVq1S+/bt5eHhoS5dumjdunUOyw3DUFJSkgICAuTp6amoqChlZWU51Jw4cUL33HOPvL291axZM8XHx+vUqVM1vm8AAKD+cXpAWrlypRITEzV9+nTt3LlT3bp1U3R0tPLy8iqs37Jli4YPH674+Hjt2rVLMTExiomJ0d69e82a2bNna8GCBUpJSVFmZqa8vLwUHR2t06dPmzX33HOPPv/8c23YsEFr167VRx99pFGjRtX6/gIAgLrPZhiG4cwB2O129erVS4sWLZIklZWVKSgoSGPGjNGkSZPK1cfGxqqoqEhr16412/r06aOwsDClpKTIMAwFBgZq3LhxGj9+vCSpoKBAfn5+Sk1N1bBhw7Rv3z517NhR27ZtU8+ePSVJaWlpuummm/Ttt98qMDDwguMuLCyUj4+PCgoK5O3tXRMvhclmq9HuUAc4910GNHy2mXxwNjTG9Nr54Kzq32+nHkEqKSnRjh07FBUVZba5uLgoKipKGRkZFa6TkZHhUC9J0dHRZv2hQ4eUk5PjUOPj4yO73W7WZGRkqFmzZmY4kqSoqCi5uLgoMzOzxvYPAADUT42cufHjx4+rtLRUfn5+Du1+fn768ssvK1wnJyenwvqcnBxz+bm2ympatmzpsLxRo0a6/PLLzRqr4uJiFRcXm88LCgok/ZxEgQvhnwlQy05fuAT1S239fT3X74VOoDk1INUnycnJmjlzZrn2oKAgJ4wG9Y2Pj7NHAAD1i89ztfvBefLkSflU8uHs1IDk6+srV1dX5ebmOrTn5ubK39+/wnX8/f0rrT/3Mzc3VwEBAQ41YWFhZo31IvCzZ8/qxIkT593u5MmTlZiYaD4vKyvTiRMn1KJFC9m4aOiiFBYWKigoSNnZ2TV+HRcANER8bv52hmHo5MmTF7ze2KkByc3NTeHh4UpPT1dMTIykn4NHenq6Ro8eXeE6ERERSk9PV0JCgtm2YcMGRURESJJCQkLk7++v9PR0MxAVFhYqMzNTf/rTn8w+8vPztWPHDoWHh0uSPvjgA5WVlclut1e4XXd3d7m7uzu0NWvW7CL3HL/m7e3NGx0AqoHPzd+msiNH5zj9FFtiYqJGjBihnj17qnfv3po/f76Kioo0cuRISVJcXJxatWql5ORkSdLYsWMVGRmpefPmaciQIVqxYoW2b9+uJUuWSJJsNpsSEhI0a9YshYaGKiQkRNOmTVNgYKAZwjp06KBBgwbpoYceUkpKis6cOaPRo0dr2LBhVbqDDQAANGxOD0ixsbE6duyYkpKSlJOTo7CwMKWlpZkXWR85ckQuLr/cbNe3b18tX75cU6dO1ZQpUxQaGqo1a9aoc+fOZs3EiRNVVFSkUaNGKT8/X/3791daWpo8PDzMmtdff12jR4/W9ddfLxcXF91+++1asGDBpdtxAABQZzl9HiT8fhUXFys5OVmTJ08ud/oSAFAen5uXDgEJAADAwulfNQIAAFDXEJAAAAAsCEgAAAAWBKTfqcOHD8tms2n37t1VXic1NbXG5366mHHUpuDgYM2fP7/K9TNmzDDn2wKA2lYbn8MX62I+v6+77jqHeQzrMgJSPZadna0HHnhAgYGBcnNzU5s2bTR27Fj98MMPF1w3KChIR48edZge4UJiY2P11Vdf/ZYhA4BT3X///bLZbHrkkUfKLXvsscdks9l0//33X/qBoc4hINVTX3/9tXr27KmsrCz961//0oEDB5SSkqL09HRFREToxIkT5123pKRErq6u8vf3V6NGVZ8Ky9PTs9yX/AJAfRMUFKQVK1bop59+MttOnz6t5cuXq3Xr1r+pb8MwdPbs2d86RNQBBKR66rHHHpObm5vWr1+vyMhItW7dWoMHD9b777+v7777Tk899ZRZGxwcrGeeeUZxcXHy9vbWqFGjKjw0+vbbbys0NFQeHh4aOHCgli1bJpvNpvz8fEnlD+2eO7302muvKTg4WD4+Pho2bJhOnjxp1qSlpal///5q1qyZWrRooaFDh+rgwYPV2tfg4GDNmjVLcXFxatq0qdq0aaO3335bx44d06233qqmTZuqa9eu2r59u8N6q1evVqdOneTu7q7g4GDNmzfPYXleXp5uvvlmeXp6KiQkRK+//nq5befn5+vBBx/UFVdcIW9vb/3hD3/Qnj17qjV+AHVLjx49FBQUpLfeestse+utt9S6dWt1797dobasrEzJyckKCQmRp6enunXrpjfffNNc/uGHH8pms+ndd99VeHi43N3d9fHHH+vkyZO655575OXlpYCAAL344ovlTi8VFxdr/PjxatWqlby8vGS32/Xhhx86bD81NVWtW7dWkyZN9Mc//vGCZwjOfba/8cYbGjBggDw9PdWrVy999dVX2rZtm3r27KmmTZtq8ODBOnbsmMN+Pv3007ryyivl7u5uTtr8a1u3blX37t3l4eGhnj17ateuXeW2v3fvXg0ePFhNmzaVn5+f7rvvPh0/frzSMddVBKR66MSJE3rvvff06KOPytPT02GZv7+/7rnnHq1cuVK/nuJq7ty56tatm3bt2qVp06aV6/PQoUO64447FBMToz179ujhhx92CFnnc/DgQa1Zs0Zr167V2rVr9d///lfPPfecubyoqEiJiYnavn270tPT5eLioj/+8Y8qKyur1j6/+OKL6tevn3bt2qUhQ4bovvvuU1xcnO69917t3LlTbdu2VVxcnLnPO3bs0F133aVhw4bps88+04wZMzRt2jSlpqaafd5///3Kzs7Wxo0b9eabb+rll18u9yXGd955p/Ly8vTuu+9qx44d6tGjh66//vpKj9ABqPseeOABLV261Hz+97//3fyKq19LTk7WP/7xD6WkpOjzzz/XE088oXvvvVf//e9/HeomTZqk5557Tvv27VPXrl2VmJiozZs36+2339aGDRu0adMm7dy502Gd0aNHKyMjQytWrNCnn36qO++8U4MGDVJWVpYkKTMzU/Hx8Ro9erR2796tgQMHatasWVXav+nTp2vq1KnauXOnGjVqpLvvvlsTJ07USy+9pE2bNunAgQNKSkoy61966SXNmzdPc+fO1aeffqro6Gjdcsst5lhOnTqloUOHqmPHjtqxY4dmzJih8ePHO2wzPz9ff/jDH9S9e3dt375daWlpys3N1V133VWlMdc5BuqdTz75xJBk/Pvf/65w+QsvvGBIMnJzcw3DMIw2bdoYMTExDjWHDh0yJBm7du0yDMMwnnzySaNz584ONU899ZQhyfjf//5nGIZhLF261PDx8TGXT58+3WjSpIlRWFhotk2YMMGw2+3nHfuxY8cMScZnn31W4Tgq0qZNG+Pee+81nx89etSQZEybNs1sy8jIMCQZR48eNQzDMO6++27jhhtucOhnwoQJRseOHQ3DMIz9+/cbkoytW7eay/ft22dIMl588UXDMAxj06ZNhre3t3H69GmHftq2bWv85S9/MV+Dbt26nXfsAOqWESNGGLfeequRl5dnuLu7G4cPHzYOHz5seHh4GMeOHTNuvfVWY8SIEYZhGMbp06eNJk2aGFu2bHHoIz4+3hg+fLhhGIaxceNGQ5KxZs0ac3lhYaHRuHFjY9WqVWZbfn6+0aRJE2Ps2LGGYRjGN998Y7i6uhrfffedQ9/XX3+9MXnyZMMwDGP48OHGTTfd5LA8NjbW4XPY6txn6l//+lez7V//+pchyUhPTzfbkpOTjXbt2pnPAwMDjWeffdahr169ehmPPvqoYRiG8Ze//MVo0aKF8dNPP5nLX3nlFYfP72eeeca48cYbHfrIzs42JBn79+83DMMwIiMjzdegrnP6d7Hh4hnVmAS9Z8+elS7fv3+/evXq5dDWu3fvC/YbHBysyy67zHweEBDgcBQmKytLSUlJyszM1PHjx80jR0eOHKnWBeJdu3Y1//vc9/R16dKlXFteXp78/f21b98+3XrrrQ599OvXT/Pnz1dpaan27dunRo0aKTw83Fzevn17h1OIe/bs0alTp9SiRQuHfn766adqnyYEULdcccUVGjJkiFJTU2UYhoYMGSJfX1+HmgMHDujHH3/UDTfc4NBeUlJS7lTcrz9jv/76a505c8bhM9THx0ft2rUzn3/22WcqLS3VNddc49BPcXGx+Zmzb98+/fGPf3RYHhERUe7UV0Wq8pl57rO6sLBQ33//vfr16+fQR79+/cxLCs4dGfv1d5pGREQ41O/Zs0cbN25U06ZNy43n4MGD5fa1riMg1UNXX321bDZbhW8e6ed/yM2bN9cVV1xhtnl5edXKWBo3buzw3GazOZw+u/nmm9WmTRu9+uqrCgwMVFlZmTp37qySkpKL3o7NZjtvW3VP3VXm1KlTCggIKHdNgKQ6c5stgIv3wAMPaPTo0ZKkxYsXl1t+6tQpSdI777yjVq1aOSyzfg9adT9jT506JVdXV+3YsUOurq4OyyoKGNVVlc/Mmvy8lH7ep5tvvlnPP/98uWUBAQE1uq1LgYBUD7Vo0UI33HCDXn75ZT3xxBMO1yHl5OTo9ddfV1xcnPmmqIp27dpp3bp1Dm3btm37TeP84YcftH//fr366qsaMGCAJOnjjz/+TX1WVYcOHbR582aHts2bN+uaa66Rq6ur2rdvr7Nnz2rHjh3mkbP9+/ebF6RLP1/ImZOTo0aNGik4OPiSjBvApTNo0CCVlJTIZrMpOjq63PKOHTvK3d1dR44cUWRkZJX7veqqq9S4cWNt27bNvCuuoKBAX331la699lpJUvfu3VVaWqq8vDzz89GqQ4cOyszMdGj75JNPqjyOqvL29lZgYKA2b97ssJ+bN282j4J16NBBr732mk6fPm0eRbKOpUePHlq9erWCg4OrdYd0XcVF2vXUokWLVFxcrOjoaH300UfKzs5WWlqabrjhBrVq1UrPPvtstfp7+OGH9eWXX+rJJ5/UV199pTfeeMO8oLk6QevXmjdvrhYtWmjJkiU6cOCAPvjgAyUmJl5UX9U1btw4paen65lnntFXX32lZcuWadGiReZFhe3atdOgQYP08MMPKzMzUzt27NCDDz7oEDajoqIUERGhmJgYrV+/XocPH9aWLVv01FNPlbtjDkD94+rqqn379umLL74odxRHki677DKNHz9eTzzxhJYtW6aDBw9q586dWrhwoZYtW3befi+77DKNGDFCEyZM0MaNG/X5558rPj5eLi4u5ufpNddco3vuuUdxcXF66623dOjQIW3dulXJycl65513JEmPP/640tLSNHfuXGVlZWnRokVVOr12MSZMmKDnn39eK1eu1P79+zVp0iTt3r1bY8eOlSTdfffdstlseuihh/TFF19o3bp1mjt3rkMfjz32mE6cOKHhw4dr27ZtOnjwoN577z2NHDlSpaWltTLu2kRAqqdCQ0O1fft2XXXVVbrrrrvUtm1bjRo1SgMHDlRGRoYuv/zyavUXEhKiN998U2+99Za6du2qV155xbyLzXoouapcXFy0YsUK7dixQ507d9YTTzyhOXPmXFRf1dWjRw+98cYbWrFihTp37qykpCQ9/fTTDhPALV26VIGBgYqMjNRtt92mUaNGOczzZLPZtG7dOl177bUaOXKkrrnmGg0bNkzffPONeU4fQP3m7e0tb2/v8y5/5plnNG3aNCUnJ6tDhw4aNGiQ3nnnHYWEhFTa7wsvvKCIiAgNHTpUUVFR6tevnzp06OBwDc/SpUsVFxencePGqV27doqJiXE46tSnTx+9+uqreumll9StWzetX79eU6dOrZkdt3j88ceVmJiocePGqUuXLkpLSzOnfpF+Pu33f//3f/rss8/UvXt3PfXUU+VOpZ07ClVaWqobb7xRXbp0UUJCgpo1ayYXl/oXN2xGda70xe/Ks88+q5SUFGVnZzt7KABQrxUVFalVq1aaN2+e4uPjnT0cVEH9P0mIGvPyyy+rV69eatGihTZv3qw5c+aYFzACAKpu165d+vLLL9W7d28VFBTo6aeflqRyd9ei7iIgwZSVlaVZs2bpxIkTat26tcaNG6fJkyc7e1gAUC/NnTtX+/fvl5ubm8LDw7Vp06ZyUwmg7uIUGwAAgEX9u2oKAACglhGQAAAALAhIAAAAFgQkAAAACwISAFTBhx9+KJvN5vB1NBcSHBys+fPn19qYANQeAhKABuH++++XzWbTI488Um7ZY489JpvN5jCTOgBUhoAEoMEICgrSihUr9NNPP5ltp0+f1vLly82vbwCAqiAgAWgwevTooaCgIL311ltm21tvvaXWrVure/fuZltxcbEef/xxtWzZUh4eHurfv7+2bdvm0Ne6det0zTXXyNPTUwMHDtThw4fLbe/jjz/WgAED5OnpqaCgID3++OMqKiqqtf0DcOkQkAA0KA888ICWLl1qPv/73/+ukSNHOtRMnDhRq1ev1rJly7Rz505dffXVio6O1okTJyRJ2dnZuu2223TzzTdr9+7devDBBzVp0iSHPg4ePKhBgwbp9ttv16effqqVK1fq448/5ut5gAaCgASgQbn33nv18ccf65tvvtE333yjzZs369577zWXFxUV6ZVXXtGcOXM0ePBgdezYUa+++qo8PT31t7/9TZL0yiuvqG3btpo3b57atWune+65p9z1S8nJybrnnnuUkJCg0NBQ9e3bVwsWLNA//vEPnT59+lLuMoBawHexAWhQrrjiCg0ZMkSpqakyDENDhgxx+P6rgwcP6syZM+rXr5/Z1rhxY/Xu3Vv79u2TJO3bt092u92h34iICIfne/bs0aeffqrXX3/dbDMMQ2VlZTp06JA6dOhQG7sH4BIhIAFocB544AHzVNfixYtrZRunTp3Sww8/rMcff7zcMi4IB+o/AhKABmfQoEEqKSmRzWZTdHS0w7K2bdvKzc1NmzdvVps2bSRJZ86c0bZt25SQkCBJ6tChg95++22H9T755BOH5z169NAXX3yhq6++uvZ2BIDTcA0SgAbH1dVV+/bt0xdffCFXV1eHZV5eXvrTn/6kCRMmKC0tTV988YUeeugh/fjjj4qPj5ckPfLII8rKytKECRO0f/9+LV++XKmpqQ79PPnkk9qyZYtGjx6t3bt3KysrS//5z3+4SBtoIAhIABokb29veXt7V7jsueee0+2336777rtPPXr00IEDB/Tee++pefPmkn4+RbZ69WqtWbNG3bp1U0pKiv785z879NG1a1f997//1VdffaUBAwaoe/fuSkpKUmBgYK3vG4DaZzMMw3D2IAAAAOoSjiABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABYEJAAAAIv/B8eTIA2OSgPHAAAAAElFTkSuQmCC","text/plain":["
"]},"metadata":{},"output_type":"display_data"}],"source":["import matplotlib.pyplot as plt\n","# 创建数据列表\n","data = [BLEU_original_model, BLEU_merged_model]\n","\n","# 创建对应的类别标签(如果有类别的话,否则可以用任意标签或者索引)\n","labels = ['Original model', 'Merged model']\n","\n","# 设置柱状图宽度(可调整)\n","bar_width = 0.35\n","\n","# 创建柱状图\n","plt.bar(labels, data, width=bar_width, color=['b', 'g'])\n","\n","# 设置坐标轴标签和标题\n","plt.xlabel('Model')\n","plt.ylabel('BLEU score')\n","plt.title('BLEU score of two models')\n","\n","# 显示图形\n","plt.show()"]}],"metadata":{"accelerator":"GPU","colab":{"authorship_tag":"ABX9TyPsTsB87HPW6mAI1d2kkh7z","gpuType":"L4","machine_shape":"hm","provenance":[]},"kernelspec":{"display_name":"Python 3","name":"python3"},"language_info":{"name":"python"},"widgets":{"application/vnd.jupyter.widget-state+json":{"0c5a16d588c241dbbe937e9f92642756":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"1053231570414637af40ed12bb144f0f":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"184d757c20e24ce6910d0d5a0346cda7":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"PasswordModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"PasswordModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"PasswordView","continuous_update":true,"description":"Token:","description_tooltip":null,"disabled":false,"layout":"IPY_MODEL_e5789b44286e42f0be9e79f300b3bdfd","placeholder":"​","style":"IPY_MODEL_8a6564f4cc994b78841227fd185b4484","value":""}},"18a0a1b27c81498186d0e00c10c57347":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"1defa01a98a44a2b926ee2c0fec7a124":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"LabelModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"LabelModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"LabelView","description":"","description_tooltip":null,"layout":"IPY_MODEL_0c5a16d588c241dbbe937e9f92642756","placeholder":"​","style":"IPY_MODEL_9f13815e1de947a7b009c9624ffe4578","value":"Login successful"}},"2015e3cf84f64277b61bfd85059c45b8":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"22a0463895904046a486babe13f70d11":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"322ef0319bc6456bb1a5ecd3951e3065":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"34737b905b43495ab5823b100af3d1e1":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"VBoxModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"VBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"VBoxView","box_style":"","children":["IPY_MODEL_8ae347f3682c43f386b416cedd25de58","IPY_MODEL_43ef6a5bee3649819988ad934c79b66e","IPY_MODEL_a1ca9385cd4b414998874efc30ef952c","IPY_MODEL_1defa01a98a44a2b926ee2c0fec7a124"],"layout":"IPY_MODEL_af941b80c5324b6b86d4874865bef81f"}},"371fb6545f5245eab0ec74040e722e84":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"HTMLModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_1053231570414637af40ed12bb144f0f","placeholder":"​","style":"IPY_MODEL_b03e3d816ef74911aa7ca33b9e58214d","value":"\nPro Tip: If you don't already have one, you can create a dedicated\n'notebooks' token with 'write' access, that you can then easily reuse for all\nnotebooks.
"}},"3b9b66d4cd934d8d9f77031475e3bdf6":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"3cc2b24335e844c1808fb53051f6a01d":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"40768b1f67c845b58fe5b5a99c256058":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"438fc661c98f4bc9ad87b86f973580d1":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"HBoxModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HBoxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HBoxView","box_style":"","children":["IPY_MODEL_7943626432f44611b0e9826c7e74935f","IPY_MODEL_44bd34bf66384300afd7cb22874dae0d","IPY_MODEL_493dd78ec84c47febd8750558f3fafbd"],"layout":"IPY_MODEL_3cc2b24335e844c1808fb53051f6a01d"}},"43ef6a5bee3649819988ad934c79b66e":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"LabelModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"LabelModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"LabelView","description":"","description_tooltip":null,"layout":"IPY_MODEL_d54c6045a7754e24b78502c829625092","placeholder":"​","style":"IPY_MODEL_22a0463895904046a486babe13f70d11","value":"Your token has been saved in your configured git credential helpers (store)."}},"44bd34bf66384300afd7cb22874dae0d":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"FloatProgressModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"FloatProgressModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ProgressView","bar_style":"success","description":"","description_tooltip":null,"layout":"IPY_MODEL_2015e3cf84f64277b61bfd85059c45b8","max":2,"min":0,"orientation":"horizontal","style":"IPY_MODEL_6ade182740914cd88d9b501677d76b07","value":2}},"493dd78ec84c47febd8750558f3fafbd":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"HTMLModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_18a0a1b27c81498186d0e00c10c57347","placeholder":"​","style":"IPY_MODEL_bfe7774a13034cd98194da6c3b99429e","value":" 2/2 [00:04<00:00,  1.99s/it]"}},"60a0453796b1483ba7967aadd26f4dee":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"CheckboxModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"CheckboxModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"CheckboxView","description":"Add token as git credential?","description_tooltip":null,"disabled":false,"indent":true,"layout":"IPY_MODEL_9e7e5816993f4f2c89140527c1b93497","style":"IPY_MODEL_847788bb3bbd4ae2ad47ff6edc5db6a2","value":true}},"6ade182740914cd88d9b501677d76b07":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"ProgressStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ProgressStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","bar_color":null,"description_width":""}},"7943626432f44611b0e9826c7e74935f":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"HTMLModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_97084fb3a2dc41bdb7787bb754f92fea","placeholder":"​","style":"IPY_MODEL_967a596d812c4cb2ac524ee0c5b71b36","value":"Loading checkpoint shards: 100%"}},"847788bb3bbd4ae2ad47ff6edc5db6a2":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"8a6564f4cc994b78841227fd185b4484":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"8ae347f3682c43f386b416cedd25de58":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"LabelModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"LabelModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"LabelView","description":"","description_tooltip":null,"layout":"IPY_MODEL_3b9b66d4cd934d8d9f77031475e3bdf6","placeholder":"​","style":"IPY_MODEL_a945a92fba494170bb83783efb5aeadd","value":"Token is valid (permission: read)."}},"95718b8dfce445d0b373011c62572706":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"960df296aba9494bb86820eed9e78588":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"ButtonModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ButtonModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"ButtonView","button_style":"","description":"Login","disabled":false,"icon":"","layout":"IPY_MODEL_aaf0ba87cd6043b7a28f849c5e1ab1eb","style":"IPY_MODEL_99abb2aa1d1f4ee6a30aa1a774e675ca","tooltip":""}},"967a596d812c4cb2ac524ee0c5b71b36":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"97084fb3a2dc41bdb7787bb754f92fea":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"99abb2aa1d1f4ee6a30aa1a774e675ca":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"ButtonStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"ButtonStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","button_color":null,"font_weight":""}},"9e7e5816993f4f2c89140527c1b93497":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"9f13815e1de947a7b009c9624ffe4578":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"a1ca9385cd4b414998874efc30ef952c":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"LabelModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"LabelModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"LabelView","description":"","description_tooltip":null,"layout":"IPY_MODEL_95718b8dfce445d0b373011c62572706","placeholder":"​","style":"IPY_MODEL_ff148a3c6f5b48da8ce8d7bdcb538321","value":"Your token has been saved to /root/.cache/huggingface/token"}},"a945a92fba494170bb83783efb5aeadd":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"aaf0ba87cd6043b7a28f849c5e1ab1eb":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"af941b80c5324b6b86d4874865bef81f":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":"center","align_self":null,"border":null,"bottom":null,"display":"flex","flex":null,"flex_flow":"column","grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":"50%"}},"b03e3d816ef74911aa7ca33b9e58214d":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"bb7c5c97676b4149a73f5bb6d5c323cc":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"bfe7774a13034cd98194da6c3b99429e":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}},"c194e5ea285443f9a02082e2b56db710":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"cd30b9d1c27b463aa8c13fc46acfd3a7":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"HTMLModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"HTMLModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"HTMLView","description":"","description_tooltip":null,"layout":"IPY_MODEL_322ef0319bc6456bb1a5ecd3951e3065","placeholder":"​","style":"IPY_MODEL_bb7c5c97676b4149a73f5bb6d5c323cc","value":"

Copy a token from your Hugging Face\ntokens page and paste it below.
Immediately click login after copying\nyour token or it might be stored in plain text in this notebook file.
"}},"d54c6045a7754e24b78502c829625092":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"e5789b44286e42f0be9e79f300b3bdfd":{"model_module":"@jupyter-widgets/base","model_module_version":"1.2.0","model_name":"LayoutModel","state":{"_model_module":"@jupyter-widgets/base","_model_module_version":"1.2.0","_model_name":"LayoutModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"LayoutView","align_content":null,"align_items":null,"align_self":null,"border":null,"bottom":null,"display":null,"flex":null,"flex_flow":null,"grid_area":null,"grid_auto_columns":null,"grid_auto_flow":null,"grid_auto_rows":null,"grid_column":null,"grid_gap":null,"grid_row":null,"grid_template_areas":null,"grid_template_columns":null,"grid_template_rows":null,"height":null,"justify_content":null,"justify_items":null,"left":null,"margin":null,"max_height":null,"max_width":null,"min_height":null,"min_width":null,"object_fit":null,"object_position":null,"order":null,"overflow":null,"overflow_x":null,"overflow_y":null,"padding":null,"right":null,"top":null,"visibility":null,"width":null}},"ea211649b5c745a28df3a03a598f61e1":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"LabelModel","state":{"_dom_classes":[],"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"LabelModel","_view_count":null,"_view_module":"@jupyter-widgets/controls","_view_module_version":"1.5.0","_view_name":"LabelView","description":"","description_tooltip":null,"layout":"IPY_MODEL_c194e5ea285443f9a02082e2b56db710","placeholder":"​","style":"IPY_MODEL_40768b1f67c845b58fe5b5a99c256058","value":"Connecting..."}},"ff148a3c6f5b48da8ce8d7bdcb538321":{"model_module":"@jupyter-widgets/controls","model_module_version":"1.5.0","model_name":"DescriptionStyleModel","state":{"_model_module":"@jupyter-widgets/controls","_model_module_version":"1.5.0","_model_name":"DescriptionStyleModel","_view_count":null,"_view_module":"@jupyter-widgets/base","_view_module_version":"1.2.0","_view_name":"StyleView","description_width":""}}}}},"nbformat":4,"nbformat_minor":0}