+
+ From 3cc3908ec28134a62e16eb47a8cdf3c8fc67a794 Mon Sep 17 00:00:00 2001 From: no-one-really <58998511+no-one-really@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:25:40 +0530 Subject: [PATCH 01/13] Create README.md --- Quantumcoders/README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 Quantumcoders/README.md diff --git a/Quantumcoders/README.md b/Quantumcoders/README.md new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/Quantumcoders/README.md @@ -0,0 +1 @@ + From 6f51281b35221297cdadb908088cbc4d23bc7493 Mon Sep 17 00:00:00 2001 From: no-one-really <58998511+no-one-really@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:28:13 +0530 Subject: [PATCH 02/13] Update README.md --- Quantumcoders/README.md | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/Quantumcoders/README.md b/Quantumcoders/README.md index 8b137891..ca7803a6 100644 --- a/Quantumcoders/README.md +++ b/Quantumcoders/README.md @@ -1 +1,45 @@ +# CASAhackathon +**Team Name** - Quantum coders + +**Problem Statement** - AI enhanced retail shopping + +**Team Leader Email** - ravishankarvaradharajan@gmail.com + +**A Brief of the Prototype:** + +Chief AI Shopping Assistant (CASA) is a proactive shopping companion featuring learning adaptation, tailoring each user's experience by continuously adapting to evolving preferences. It also provides Instore analysis and helps with visual merchandising. +It will help us track deadzones in the store. The analysis will be displayed on a dashboard which contain Customer gaze analysis, Foot traffic, User Interaction with products. It will also helps in predicting the sales and keep up with the trends. +Our online assistant powered by LLM will provide suggestions based on items in the cart, user preferences and user profile. It also provides a chat interface to have a back and forth conversation to help the user figure out their fashion needs. + +**Instore flow:** + + + +**Online recommendation flow:** + + + + +**Tech Stack:** + + + + +**Step-by-Step Code Execution Instructions:** + +Step 1: Install requirements +```pip install - requirements.txt``` + +Step2: +Host the Django server by runnning python manage.py runserver + +Step3: +setup ngrok https://ngrok.com/docs/getting-started/ + +Step4: +delpoy the model by running start.js, serv.py and recieve.py + +**Future Scope:** + + To integrate Large Language-and-Vision Assistants to provide better shopping assistance and gain better insights on the customer needs From 80a0a1d9f553236e634fdc53df39671d962e609c Mon Sep 17 00:00:00 2001 From: no-one-really <58998511+no-one-really@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:38:34 +0530 Subject: [PATCH 03/13] Add files via upload --- spawn.py | 45 ++++ start.js | 58 +++++ train.ipynb | 605 ++++++++++++++++++++++++++++++++++++++++++++ trig.py | 37 +++ user_interaction.py | 111 ++++++++ 5 files changed, 856 insertions(+) create mode 100644 spawn.py create mode 100644 start.js create mode 100644 train.ipynb create mode 100644 trig.py create mode 100644 user_interaction.py diff --git a/spawn.py b/spawn.py new file mode 100644 index 00000000..fbc89ce7 --- /dev/null +++ b/spawn.py @@ -0,0 +1,45 @@ +from transformers import AutoModelForCausalLM, AutoTokenizer +import sys +statement = sys.argv[1] +prompt2 = sys.argv[2] +clr_st = statement.replace("#", " ") +clr_pmt = prompt2.replace("#", " ") +device = "cpu" + + +def find_nth_occurrence(text, target, n): + count = 0 + index = -1 + + while count < n: + index = text.find(target, index + 1) + + if index == -1: + break # Target not found + + count += 1 + + return index + + +target_string = "[/INST]" +nth_occurrence = 2 + +tokenizer = AutoTokenizer.from_pretrained("mistralai/Mistral-7B-Instruct-v0.1") +model = AutoModelForCausalLM.from_pretrained( + "mistralai/Mistral-7B-Instruct-v0.1") +messages = [ + {"role": "user", "content": "I need some assistance in IT"}, + {"role": "assistant", "content": clr_pmt}, + {"role": "user", "content": clr_st} + +] +encodeds = tokenizer.apply_chat_template(messages, return_tensors="pt") +# model.save_pretrained() +model_inputs = encodeds.to(device) +model.to(device) +generated_ids = model.generate( + model_inputs, max_new_tokens=1000, do_sample=True) +decoded = tokenizer.batch_decode(generated_ids) +result = find_nth_occurrence(decoded[0], target_string, nth_occurrence) +print(decoded[0][result+7:]) diff --git a/start.js b/start.js new file mode 100644 index 00000000..bea948f1 --- /dev/null +++ b/start.js @@ -0,0 +1,58 @@ +const express = require('express'); +const bodyParser = require('body-parser'); +const { promisify } = require('util'); +const { execFile } = require('child_process'); + +const app = express(); +const port = 3000; +const cors = require('cors'); +app.use(cors()); + +const script2Path = 'mistral.py'; + + +const execFilePromise = promisify(execFile); + +app.use(bodyParser.json()); +app.use(bodyParser.urlencoded({ extended: false })); + +app.get('/', (req, res) => { + res.send('Initiating the system'); +}); + +app.post('/', async (req, res) => { + let data = req.body.data; + let description = req.body.description; + let botprompt = req.body.botprompt; + description = description.replace(/ /g, "#"); + botprompt = botprompt.replace(/ /g, "#"); + if (data === "mistral") { + try { + const { stdout } = await execFilePromise('/usr/bin/python3', ['mistral.py', description, botprompt]); + console.log('Python process completed successfully'); + res.send({ outputData: stdout }); + } catch (error) { + console.error('Error executing Python process:', error.message); + res.status(500).send({ error: error.message }); + } + } + + if (data === "bert") { + try { + const { stdout } = await execFilePromise('/usr/bin/python3', ['bert1.py', description]); + console.log('Python process completed successfully'); + res.send({ outputData: stdout }); + } catch (error) { + console.error('Error executing Python process:', error.message); + res.status(500).send({ error: error.message }); + } + } + + + + +}); + +app.listen(port, () => { + console.log(`Server is listening on http://localhost:${port}`); +}); diff --git a/train.ipynb b/train.ipynb new file mode 100644 index 00000000..86e1c328 --- /dev/null +++ b/train.ipynb @@ -0,0 +1,605 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "7b1ff113-1d95-4f56-bca3-0b7e627f9b74", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collecting torch\n", + " Using cached torch-2.1.1-cp310-cp310-manylinux1_x86_64.whl (670.2 MB)\n", + "Requirement already satisfied: typing-extensions in ./jupyter_env/lib/python3.10/site-packages (from torch) (4.8.0)\n", + "Collecting filelock\n", + " Using cached filelock-3.13.1-py3-none-any.whl (11 kB)\n", + "Requirement already satisfied: sympy in ./jupyter_env/lib/python3.10/site-packages (from torch) (1.12)\n", + "Requirement already satisfied: nvidia-cuda-nvrtc-cu12==12.1.105 in ./jupyter_env/lib/python3.10/site-packages (from torch) (12.1.105)\n", + "Requirement already satisfied: nvidia-cuda-runtime-cu12==12.1.105 in ./jupyter_env/lib/python3.10/site-packages (from torch) (12.1.105)\n", + "Requirement already satisfied: nvidia-curand-cu12==10.3.2.106 in ./jupyter_env/lib/python3.10/site-packages (from torch) (10.3.2.106)\n", + "Collecting triton==2.1.0\n", + " Using cached triton-2.1.0-0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (89.2 MB)\n", + "Collecting fsspec\n", + " Using cached fsspec-2023.12.0-py3-none-any.whl (168 kB)\n", + "Collecting networkx\n", + " Using cached networkx-3.2.1-py3-none-any.whl (1.6 MB)\n", + "Requirement already satisfied: nvidia-nccl-cu12==2.18.1 in ./jupyter_env/lib/python3.10/site-packages (from torch) (2.18.1)\n", + "Collecting nvidia-cublas-cu12==12.1.3.1\n", + " Using cached nvidia_cublas_cu12-12.1.3.1-py3-none-manylinux1_x86_64.whl (410.6 MB)\n", + "Requirement already satisfied: nvidia-cufft-cu12==11.0.2.54 in ./jupyter_env/lib/python3.10/site-packages (from torch) (11.0.2.54)\n", + "Requirement already satisfied: nvidia-cuda-cupti-cu12==12.1.105 in ./jupyter_env/lib/python3.10/site-packages (from torch) (12.1.105)\n", + "Collecting nvidia-cusolver-cu12==11.4.5.107\n", + " Using cached nvidia_cusolver_cu12-11.4.5.107-py3-none-manylinux1_x86_64.whl (124.2 MB)\n", + "Collecting nvidia-cusparse-cu12==12.1.0.106\n", + " Using cached nvidia_cusparse_cu12-12.1.0.106-py3-none-manylinux1_x86_64.whl (196.0 MB)\n", + "Requirement already satisfied: jinja2 in ./jupyter_env/lib/python3.10/site-packages (from torch) (3.1.2)\n", + "Collecting nvidia-cudnn-cu12==8.9.2.26\n", + " Using cached nvidia_cudnn_cu12-8.9.2.26-py3-none-manylinux1_x86_64.whl (731.7 MB)\n", + "Requirement already satisfied: nvidia-nvtx-cu12==12.1.105 in ./jupyter_env/lib/python3.10/site-packages (from torch) (12.1.105)\n", + "Requirement already satisfied: nvidia-nvjitlink-cu12 in ./jupyter_env/lib/python3.10/site-packages (from nvidia-cusolver-cu12==11.4.5.107->torch) (12.3.101)\n", + "Requirement already satisfied: MarkupSafe>=2.0 in ./jupyter_env/lib/python3.10/site-packages (from jinja2->torch) (2.1.3)\n", + "Requirement already satisfied: mpmath>=0.19 in ./jupyter_env/lib/python3.10/site-packages (from sympy->torch) (1.3.0)\n", + "Installing collected packages: nvidia-cusparse-cu12, nvidia-cublas-cu12, networkx, fsspec, filelock, triton, nvidia-cusolver-cu12, nvidia-cudnn-cu12, torch\n", + "Successfully installed filelock-3.13.1 fsspec-2023.12.0 networkx-3.2.1 nvidia-cublas-cu12-12.1.3.1 nvidia-cudnn-cu12-8.9.2.26 nvidia-cusolver-cu12-11.4.5.107 nvidia-cusparse-cu12-12.1.0.106 torch-2.1.1 triton-2.1.0\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "pip install torch" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "6e0881cd-d5be-4226-ad15-b6b436a7ca86", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collecting intel_extension_for_pytorch\n", + " Downloading intel_extension_for_pytorch-2.1.0-cp310-cp310-manylinux2014_x86_64.whl (51.4 MB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m51.4/51.4 MB\u001b[0m \u001b[31m12.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n", + "\u001b[?25hRequirement already satisfied: packaging in ./jupyter_env/lib/python3.10/site-packages (from intel_extension_for_pytorch) (23.2)\n", + "Requirement already satisfied: psutil in ./jupyter_env/lib/python3.10/site-packages (from intel_extension_for_pytorch) (5.9.6)\n", + "Collecting numpy\n", + " Downloading numpy-1.26.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.2 MB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m18.2/18.2 MB\u001b[0m \u001b[31m16.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n", + "\u001b[?25hInstalling collected packages: numpy, intel_extension_for_pytorch\n", + "Successfully installed intel_extension_for_pytorch-2.1.0 numpy-1.26.2\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "pip install intel_extension_for_pytorch" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "37c71c49-45a6-4463-b577-61fd25ae156d", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "pip install transformers datasets evaluate rouge_score -q" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "187922a3-662c-4ca7-bdca-a28f9e5f615b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collecting modin\n", + " Downloading modin-0.25.1-py3-none-any.whl (1.1 MB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.1/1.1 MB\u001b[0m \u001b[31m6.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n", + "\u001b[?25hRequirement already satisfied: numpy>=1.22.4 in ./jupyter_env/lib/python3.10/site-packages (from modin) (1.26.2)\n", + "Requirement already satisfied: fsspec>=2022.05.0 in ./jupyter_env/lib/python3.10/site-packages (from modin) (2023.10.0)\n", + "Requirement already satisfied: packaging>=21.0 in ./jupyter_env/lib/python3.10/site-packages (from modin) (23.2)\n", + "Requirement already satisfied: psutil>=5.8.0 in ./jupyter_env/lib/python3.10/site-packages (from modin) (5.9.6)\n", + "Requirement already satisfied: pandas<2.2,>=2.1 in ./jupyter_env/lib/python3.10/site-packages (from modin) (2.1.3)\n", + "Requirement already satisfied: tzdata>=2022.1 in ./jupyter_env/lib/python3.10/site-packages (from pandas<2.2,>=2.1->modin) (2023.3)\n", + "Requirement already satisfied: pytz>=2020.1 in ./jupyter_env/lib/python3.10/site-packages (from pandas<2.2,>=2.1->modin) (2023.3.post1)\n", + "Requirement already satisfied: python-dateutil>=2.8.2 in ./jupyter_env/lib/python3.10/site-packages (from pandas<2.2,>=2.1->modin) (2.8.2)\n", + "Requirement already satisfied: six>=1.5 in ./jupyter_env/lib/python3.10/site-packages (from python-dateutil>=2.8.2->pandas<2.2,>=2.1->modin) (1.16.0)\n", + "Installing collected packages: modin\n", + "Successfully installed modin-0.25.1\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "pip install modin" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "8b3eaea8-c349-494b-87f4-47c49a6b03b4", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: modin[dask] in ./jupyter_env/lib/python3.10/site-packages (0.25.1)\n", + "Requirement already satisfied: packaging>=21.0 in ./jupyter_env/lib/python3.10/site-packages (from modin[dask]) (23.2)\n", + "Requirement already satisfied: pandas<2.2,>=2.1 in ./jupyter_env/lib/python3.10/site-packages (from modin[dask]) (2.1.3)\n", + "Requirement already satisfied: psutil>=5.8.0 in ./jupyter_env/lib/python3.10/site-packages (from modin[dask]) (5.9.6)\n", + "Requirement already satisfied: fsspec>=2022.05.0 in ./jupyter_env/lib/python3.10/site-packages (from modin[dask]) (2023.10.0)\n", + "Requirement already satisfied: numpy>=1.22.4 in ./jupyter_env/lib/python3.10/site-packages (from modin[dask]) (1.26.2)\n", + "Collecting distributed>=2.22.0\n", + " Downloading distributed-2023.12.0-py3-none-any.whl (997 kB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m997.8/997.8 KB\u001b[0m \u001b[31m6.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n", + "\u001b[?25hCollecting dask>=2.22.0\n", + " Downloading dask-2023.12.0-py3-none-any.whl (1.2 MB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.2/1.2 MB\u001b[0m \u001b[31m11.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n", + "\u001b[?25hRequirement already satisfied: pyyaml>=5.3.1 in ./jupyter_env/lib/python3.10/site-packages (from dask>=2.22.0->modin[dask]) (6.0.1)\n", + "Collecting partd>=1.2.0\n", + " Downloading partd-1.4.1-py3-none-any.whl (18 kB)\n", + "Collecting toolz>=0.10.0\n", + " Downloading toolz-0.12.0-py3-none-any.whl (55 kB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m55.8/55.8 KB\u001b[0m \u001b[31m2.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25hRequirement already satisfied: click>=8.1 in ./jupyter_env/lib/python3.10/site-packages (from dask>=2.22.0->modin[dask]) (8.1.7)\n", + "Collecting importlib-metadata>=4.13.0\n", + " Downloading importlib_metadata-7.0.0-py3-none-any.whl (23 kB)\n", + "Collecting cloudpickle>=1.5.0\n", + " Downloading cloudpickle-3.0.0-py3-none-any.whl (20 kB)\n", + "Collecting tblib>=1.6.0\n", + " Downloading tblib-3.0.0-py3-none-any.whl (12 kB)\n", + "Requirement already satisfied: jinja2>=2.10.3 in ./jupyter_env/lib/python3.10/site-packages (from distributed>=2.22.0->modin[dask]) (3.1.2)\n", + "Requirement already satisfied: urllib3>=1.24.3 in ./jupyter_env/lib/python3.10/site-packages (from distributed>=2.22.0->modin[dask]) (2.1.0)\n", + "Collecting msgpack>=1.0.0\n", + " Downloading msgpack-1.0.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (530 kB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m530.8/530.8 KB\u001b[0m \u001b[31m11.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m\n", + "\u001b[?25hCollecting locket>=1.0.0\n", + " Downloading locket-1.0.0-py2.py3-none-any.whl (4.4 kB)\n", + "Collecting zict>=3.0.0\n", + " Downloading zict-3.0.0-py2.py3-none-any.whl (43 kB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m43.3/43.3 KB\u001b[0m \u001b[31m1.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25hRequirement already satisfied: tornado>=6.0.4 in ./jupyter_env/lib/python3.10/site-packages (from distributed>=2.22.0->modin[dask]) (6.4)\n", + "Collecting sortedcontainers>=2.0.5\n", + " Downloading sortedcontainers-2.4.0-py2.py3-none-any.whl (29 kB)\n", + "Requirement already satisfied: tzdata>=2022.1 in ./jupyter_env/lib/python3.10/site-packages (from pandas<2.2,>=2.1->modin[dask]) (2023.3)\n", + "Requirement already satisfied: python-dateutil>=2.8.2 in ./jupyter_env/lib/python3.10/site-packages (from pandas<2.2,>=2.1->modin[dask]) (2.8.2)\n", + "Requirement already satisfied: pytz>=2020.1 in ./jupyter_env/lib/python3.10/site-packages (from pandas<2.2,>=2.1->modin[dask]) (2023.3.post1)\n", + "Collecting zipp>=0.5\n", + " Downloading zipp-3.17.0-py3-none-any.whl (7.4 kB)\n", + "Requirement already satisfied: MarkupSafe>=2.0 in ./jupyter_env/lib/python3.10/site-packages (from jinja2>=2.10.3->distributed>=2.22.0->modin[dask]) (2.1.3)\n", + "Requirement already satisfied: six>=1.5 in ./jupyter_env/lib/python3.10/site-packages (from python-dateutil>=2.8.2->pandas<2.2,>=2.1->modin[dask]) (1.16.0)\n", + "Installing collected packages: sortedcontainers, zipp, zict, toolz, tblib, msgpack, locket, cloudpickle, partd, importlib-metadata, dask, distributed\n", + "Successfully installed cloudpickle-3.0.0 dask-2023.12.0 distributed-2023.12.0 importlib-metadata-7.0.0 locket-1.0.0 msgpack-1.0.7 partd-1.4.1 sortedcontainers-2.4.0 tblib-3.0.0 toolz-0.12.0 zict-3.0.0 zipp-3.17.0\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "pip install modin[dask]" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "87026695-4087-42ba-87f3-e9f262e82b09", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collecting openpyxl\n", + " Downloading openpyxl-3.1.2-py2.py3-none-any.whl (249 kB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m250.0/250.0 KB\u001b[0m \u001b[31m3.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n", + "\u001b[?25hCollecting et-xmlfile\n", + " Downloading et_xmlfile-1.1.0-py3-none-any.whl (4.7 kB)\n", + "Installing collected packages: et-xmlfile, openpyxl\n", + "Successfully installed et-xmlfile-1.1.0 openpyxl-3.1.2\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "pip install openpyxl" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "73e4a60f-fbfc-40e6-af07-3eef6e0ec172", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "True\n" + ] + } + ], + "source": [ + "import torch\n", + "\n", + "print(torch.backends.mkl.is_available())" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "3a8ba182-b638-4554-9b24-6b7a0e423e7f", + "metadata": {}, + "outputs": [], + "source": [ + "from distributed import Client\n", + "client = Client()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "2823cb75-0dfa-4b42-ae33-292af17e2c88", + "metadata": {}, + "outputs": [], + "source": [ + "import modin.pandas as pd" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "38610962-f245-432a-8644-16b7fbe71dbc", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "UserWarning: Parallel `read_excel` is a new feature! If you run into any problems, please visit https://github.com/modin-project/modin/issues. If you find a new issue and can't file it on GitHub, please email bug_reports@modin.org.\n" + ] + } + ], + "source": [ + "df = pd.read_excel(\"suggestion_data.xlsx\")" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "6139b0e4-a982-4114-8184-ae1878563a35", + "metadata": {}, + "outputs": [], + "source": [ + "from datasets import load_dataset, Dataset" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "53c5e167-ebfc-46d1-bdf2-223dd21c0f7c", + "metadata": {}, + "outputs": [], + "source": [ + "data_dict = df.to_dict('list') # convert DataFrame to dictionary of lists\n", + "dataset = Dataset.from_dict(data_dict)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "8c670c16-9738-4434-8e13-023d5fbf04ae", + "metadata": {}, + "outputs": [], + "source": [ + "ds = dataset.train_test_split(test_size=0.01)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "ffa00726-80d0-469b-a352-a2b5922dc04c", + "metadata": {}, + "outputs": [], + "source": [ + "from transformers import AutoTokenizer\n", + "\n", + "checkpoint = \"google/flan-t5-large\"\n", + "tokenizer = AutoTokenizer.from_pretrained(checkpoint)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "0eb35036-f62f-43eb-84d6-0ceacd3231ce", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/ubuntu/jupyter_env/lib/python3.10/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", + " from .autonotebook import tqdm as notebook_tqdm\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Token will not been saved to git credential helper. Pass `add_to_git_credential=True` if you want to set the git credential as well.\n", + "Token is valid (permission: write).\n", + "Your token has been saved to /home/ubuntu/.cache/huggingface/token\n", + "Login successful\n" + ] + } + ], + "source": [ + "from huggingface_hub import login\n", + "login(\"###########\")" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "39cfb4fd-69a8-4e8a-a1bb-c62bffd9eb67", + "metadata": {}, + "outputs": [], + "source": [ + "finalDs= fin.train_test_split(test_size=0.01)" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "a9a316d4-0d1e-4585-855b-94c7de590eed", + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "def preprocess_function(examples):\n", + " inputs = [doc for doc in examples[\"title\"]]\n", + " model_inputs = tokenizer(inputs, max_length=1024, truncation=True)\n", + "\n", + " labels = tokenizer(text_target=examples[\"response\"], max_length=500, truncation=True)\n", + "\n", + " model_inputs[\"labels\"] = labels[\"input_ids\"]\n", + " return model_inputs" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "c84f2496-c688-4741-a7eb-ee1be1d9928c", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Map: 100%|█████████████████████████| 8373/8373 [00:01<00:00, 5401.60 examples/s]\n", + "Map: 100%|█████████████████████████████| 85/85 [00:00<00:00, 3219.80 examples/s]\n" + ] + } + ], + "source": [ + "tokenized_ds = finalDs.map(preprocess_function, batched=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "e2177f0e-f4ab-4ec2-b4b4-3663fff9289a", + "metadata": {}, + "outputs": [], + "source": [ + "from transformers import DataCollatorForSeq2Seq\n", + "\n", + "data_collator = DataCollatorForSeq2Seq(tokenizer=tokenizer, model=checkpoint)" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "4673126c-89d2-456d-a2ed-07e9e3d0f0c0", + "metadata": {}, + "outputs": [], + "source": [ + "import evaluate\n", + "\n", + "rouge = evaluate.load(\"rouge\")" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "id": "b02cad06-8087-4684-81e7-0e4d9d834daa", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "huggingface/tokenizers: The current process just got forked, after parallelism has already been used. Disabling parallelism to avoid deadlocks...\n", + "To disable this warning, you can either:\n", + "\t- Avoid using `tokenizers` before the fork if possible\n", + "\t- Explicitly set the environment variable TOKENIZERS_PARALLELISM=(true | false)\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: transformers in ./jupyter_env/lib/python3.10/site-packages (4.35.2)\n", + "Requirement already satisfied: safetensors>=0.3.1 in ./jupyter_env/lib/python3.10/site-packages (from transformers) (0.4.1)\n", + "Requirement already satisfied: tqdm>=4.27 in ./jupyter_env/lib/python3.10/site-packages (from transformers) (4.66.1)\n", + "Requirement already satisfied: pyyaml>=5.1 in ./jupyter_env/lib/python3.10/site-packages (from transformers) (6.0.1)\n", + "Requirement already satisfied: huggingface-hub<1.0,>=0.16.4 in ./jupyter_env/lib/python3.10/site-packages (from transformers) (0.19.4)\n", + "Requirement already satisfied: requests in ./jupyter_env/lib/python3.10/site-packages (from transformers) (2.31.0)\n", + "Requirement already satisfied: filelock in ./jupyter_env/lib/python3.10/site-packages (from transformers) (3.13.1)\n", + "Requirement already satisfied: regex!=2019.12.17 in ./jupyter_env/lib/python3.10/site-packages (from transformers) (2023.10.3)\n", + "Requirement already satisfied: tokenizers<0.19,>=0.14 in ./jupyter_env/lib/python3.10/site-packages (from transformers) (0.15.0)\n", + "Requirement already satisfied: numpy>=1.17 in ./jupyter_env/lib/python3.10/site-packages (from transformers) (1.26.2)\n", + "Requirement already satisfied: packaging>=20.0 in ./jupyter_env/lib/python3.10/site-packages (from transformers) (23.2)\n", + "Requirement already satisfied: typing-extensions>=3.7.4.3 in ./jupyter_env/lib/python3.10/site-packages (from huggingface-hub<1.0,>=0.16.4->transformers) (4.8.0)\n", + "Requirement already satisfied: fsspec>=2023.5.0 in ./jupyter_env/lib/python3.10/site-packages (from huggingface-hub<1.0,>=0.16.4->transformers) (2023.10.0)\n", + "Requirement already satisfied: certifi>=2017.4.17 in ./jupyter_env/lib/python3.10/site-packages (from requests->transformers) (2023.11.17)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in ./jupyter_env/lib/python3.10/site-packages (from requests->transformers) (3.3.2)\n", + "Requirement already satisfied: idna<4,>=2.5 in ./jupyter_env/lib/python3.10/site-packages (from requests->transformers) (3.6)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in ./jupyter_env/lib/python3.10/site-packages (from requests->transformers) (2.1.0)\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "pip install transformers --upgrade" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "906e1a7c-c44d-4f93-91a8-05d6877b0771", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "\n", + "\n", + "def compute_metrics(eval_pred):\n", + " predictions, labels = eval_pred\n", + " decoded_preds = tokenizer.batch_decode(predictions, skip_special_tokens=True)\n", + " labels = np.where(labels != -100, labels, tokenizer.pad_token_id)\n", + " decoded_labels = tokenizer.batch_decode(labels, skip_special_tokens=True)\n", + "\n", + " result = rouge.compute(predictions=decoded_preds, references=decoded_labels, use_stemmer=True)\n", + "\n", + " prediction_lens = [np.count_nonzero(pred != tokenizer.pad_token_id) for pred in predictions]\n", + " result[\"gen_len\"] = np.mean(prediction_lens)\n", + "\n", + " return {k: round(v, 4) for k, v in result.items()}" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "id": "b82afd97-b05c-4ae8-b731-2a847d503bc5", + "metadata": {}, + "outputs": [], + "source": [ + "from transformers import AutoModelForSeq2SeqLM, Seq2SeqTrainingArguments, Seq2SeqTrainer\n", + "\n", + "model = AutoModelForSeq2SeqLM.from_pretrained(checkpoint)" + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "id": "2ce5c181-a6ba-4229-9a81-48d5eb11e9c0", + "metadata": {}, + "outputs": [], + "source": [ + "training_args = Seq2SeqTrainingArguments(\n", + " output_dir=\"finalSuggest\",\n", + " evaluation_strategy=\"epoch\",\n", + " learning_rate=1e-4,\n", + " per_device_train_batch_size=16,\n", + " per_device_eval_batch_size=16,\n", + " weight_decay=0.01,\n", + " save_total_limit=1,\n", + " num_train_epochs=5,\n", + " predict_with_generate=True,\n", + " push_to_hub=True\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "2d5e5b7b-0913-4614-b88c-f55da8d767c3", + "metadata": {}, + "outputs": [], + "source": [ + "trainer = Seq2SeqTrainer(\n", + " model=model,\n", + " args=training_args,\n", + " train_dataset=tokenized_ds[\"train\"],\n", + " eval_dataset=tokenized_ds[\"test\"],\n", + " tokenizer=tokenizer,\n", + " data_collator=data_collator,\n", + " compute_metrics=compute_metrics,\n", + " \n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "id": "07b69533-1910-4fbf-96fe-b1a2e9902764", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "model.safetensors: 100%|███████████████████| 3.13G/3.13G [01:45<00:00, 29.6MB/s]\n" + ] + }, + { + "data": { + "text/plain": [ + "'https://huggingface.co/Bhuvanesh-Ch/finalIPC/tree/main/'" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "trainer.push_to_hub()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1acafe9e-69b5-45dc-99b3-a1d32d6e3c0c", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/trig.py b/trig.py new file mode 100644 index 00000000..5261d298 --- /dev/null +++ b/trig.py @@ -0,0 +1,37 @@ +import sys +import subprocess + +statement = [sys.argv[1],sys.argv[2]] + + + +def run_script_b(): + # Replace with the actual path to your Script B + script_b_path = 'recieve.py' + + # You can pass command-line arguments to Script B as a list + script_b_arguments = [statement2, statement] + + # Use subprocess to run Script B + process = subprocess.Popen(['/usr/bin/python3', script_b_path] + script_b_arguments, + stdout=subprocess.PIPE, stderr=subprocess.PIPE) + + # Wait for the process to finish and get the return code + return_code = process.wait() + + # Check if Script B was successful + if return_code == 0: + pass + + # print("Script B executed successfully.") + else: + print(f"Script B failed with return code: {return_code}") + + # Capture and print the output of Script B + output, error = process.communicate() + + print(output.decode('utf-8')) + + +if __name__ == "__main__": + run_script_b() diff --git a/user_interaction.py b/user_interaction.py new file mode 100644 index 00000000..d2c92124 --- /dev/null +++ b/user_interaction.py @@ -0,0 +1,111 @@ +import cv2 +import mediapipe as mp +import tensorflow as tf # Import Intel Optimized TensorFlow + +# Initialize MediaPipe Hand module +mp_hands = mp.solutions.hands +hands = mp_hands.Hands() + +# Use 0 for default camera, or specify the camera index +cap = cv2.VideoCapture(0) + +# Set the ROI coordinates (adjust these values based on your specific case) +roi_x, roi_y, roi_width, roi_height = 450, 250, 170, 200 + +while True: + ret, frame = cap.read() + + # Convert the BGR image to RGB + rgb_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB) + + # Process the frame and get hand landmarks + results = hands.process(rgb_frame) + + # Check if hands are detected + if results.multi_hand_landmarks: + for hand_landmarks in results.multi_hand_landmarks: + # Check if any landmark is within the ROI + hand_in_roi = all( + roi_x <= lm.x * frame.shape[1] <= roi_x + roi_width and + roi_y <= lm.y * frame.shape[0] <= roi_y + roi_height + for lm in hand_landmarks.landmark + ) + + if hand_in_roi: + # Draw landmarks on the frame + mp_drawing = mp.solutions.drawing_utils + mp_drawing.draw_landmarks( + frame, hand_landmarks, mp_hands.HAND_CONNECTIONS) + + cv2.putText(frame, f"Customer 102 is interacting with the shoe", ( + 10, 30), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2) + + cv2.imshow('Hand Detection', frame) + + if cv2.waitKey(30) & 0xFF == 27: # Press 'Esc' to exit + break + +cap.release() +cv2.destroyAllWindows() + + + + + + +# import cv2 +# import mediapipe as mp + +# # Initialize MediaPipe Hand module +# mp_hands = mp.solutions.hands +# hands = mp_hands.Hands() + +# # Use 0 for default camera, or specify the camera index +# cap = cv2.VideoCapture(0) + +# # Set the ROI coordinates (adjust these values based on your specific case) +# roi_x, roi_y, roi_width, roi_height = 450, 250, 170, 200 + +# while True: +# ret, frame = cap.read() + +# # Convert the BGR image to RGB +# rgb_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB) + +# # Process the frame and get hand landmarks +# results = hands.process(rgb_frame) + +# # Check if hands are detected +# if results.multi_hand_landmarks: +# for hand_landmarks in results.multi_hand_landmarks: +# # Check if any landmark is within the ROI +# hand_in_roi = all( +# roi_x <= lm.x * frame.shape[1] <= roi_x + roi_width and +# roi_y <= lm.y * frame.shape[0] <= roi_y + roi_height +# for lm in hand_landmarks.landmark +# ) + +# if hand_in_roi: +# # Draw landmarks on the frame +# mp_drawing = mp.solutions.drawing_utils +# mp_drawing.draw_landmarks( +# frame, hand_landmarks, mp_hands.HAND_CONNECTIONS) + +# cv2.putText(frame, f"Customer 102 is interacting with the shoe", ( +# 10, 30), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2) + +# # Draw the ROI rectangle on the frame +# # cv2.rectangle(frame, (roi_x, roi_y), (roi_x + roi_width, +# # roi_y + roi_height), (0, 255, 0), 2) +# # cv2.rectangle(frame, (roi_x-250, roi_y), (roi_x + roi_width, +# # roi_y + roi_height), (0, 255, 0), 2) +# # cv2.rectangle(frame, (roi_x-400, roi_y), (roi_x + roi_width, +# # roi_y + roi_height), (0, 255, 0), 2) + +# cv2.imshow('Hand Detection', frame) + +# if cv2.waitKey(30) & 0xFF == 27: # Press 'Esc' to exit +# break + +# cap.release() +# cv2.destroyAllWindows() From c90786183d4a5a0aabaec8a9b3e531fe28e822c0 Mon Sep 17 00:00:00 2001 From: no-one-really <58998511+no-one-really@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:40:17 +0530 Subject: [PATCH 04/13] Add files via upload --- gaze_detection.ipynb | 129 +++++++++++++++++++++++++++++++++++++++++ gaze_estimation.py | 134 +++++++++++++++++++++++++++++++++++++++++++ mistral.py | 45 +++++++++++++++ 3 files changed, 308 insertions(+) create mode 100644 gaze_detection.ipynb create mode 100644 gaze_estimation.py create mode 100644 mistral.py diff --git a/gaze_detection.ipynb b/gaze_detection.ipynb new file mode 100644 index 00000000..b0efc93d --- /dev/null +++ b/gaze_detection.ipynb @@ -0,0 +1,129 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 2, + "id": "0190278c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Error reading frame.\n" + ] + } + ], + "source": [ + "import cv2\n", + "import dlib\n", + " \n", + " \n", + "def detect_face_orientation(video_source=0):\n", + " # Open a connection to the video source (0 for default camera)\n", + " cap = cv2.VideoCapture(video_source)\n", + " \n", + " # Initialize the face detector from dlib\n", + " face_detector = dlib.get_frontal_face_detector()\n", + " landmarks_predictor = dlib.shape_predictor(\n", + " \"shape_predictor_68_face_landmarks.dat\") # You need to download this file\n", + " \n", + " while True:\n", + " # Capture frame-by-frame\n", + " ret, frame = cap.read()\n", + " if not ret:\n", + " print(\"Error reading frame.\")\n", + " break\n", + " \n", + " # Convert the frame to grayscale for face detection\n", + " gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)\n", + " \n", + " # Detect faces in the frame\n", + " faces = face_detector(gray)\n", + " \n", + " # Check if a face is detected\n", + " if len(faces) > 0:\n", + " # Assume only one face in the frame for simplicity\n", + " face = faces[0]\n", + " \n", + " # Detect facial landmarks\n", + " landmarks = landmarks_predictor(gray, face)\n", + " \n", + " # Extract relevant landmarks for orientation estimation\n", + " left_eye = (landmarks.part(36).x, landmarks.part(36).y)\n", + " right_eye = (landmarks.part(45).x, landmarks.part(45).y)\n", + " nose_tip = (landmarks.part(30).x, landmarks.part(30).y)\n", + " \n", + " # Calculate the midpoint of the eyes\n", + " eyes_midpoint = (\n", + " (left_eye[0] + right_eye[0]) // 2, (left_eye[1] + right_eye[1]) // 2)\n", + " \n", + " # Calculate the horizontal distance between the midpoint of the eyes and the nose tip\n", + " horizontal_distance = abs(nose_tip[0] - eyes_midpoint[0])\n", + " \n", + " # Set a threshold for the horizontal distance to classify the orientation\n", + " if horizontal_distance < 10: # Adjust the threshold as needed\n", + " orientation = \"Keyboard\"\n", + " elif nose_tip[0] > eyes_midpoint[0]:\n", + " orientation = \"phone\"\n", + " else:\n", + " orientation = \"laptop\"\n", + " \n", + " # Display the result on the frame\n", + " cv2.putText(frame, f\"Customer 102 is looking at {orientation}\", (\n", + " 10, 30), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)\n", + " \n", + " # Display the frame\n", + " cv2.imshow(\"Face Orientation Analysis\", frame)\n", + " \n", + " # Break the loop if 'q' is pressed\n", + " if cv2.waitKey(1) & 0xFF == ord('q'):\n", + " break\n", + " \n", + " # Release the camera and close all OpenCV windows\n", + " cap.release()\n", + " cv2.destroyAllWindows()\n", + " \n", + " \n", + "if __name__ == \"__main__\":\n", + " detect_face_orientation()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f6ac09db", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.3" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/gaze_estimation.py b/gaze_estimation.py new file mode 100644 index 00000000..732300e1 --- /dev/null +++ b/gaze_estimation.py @@ -0,0 +1,134 @@ +import cv2 +import dlib +import torch + +# Use Intel Optimized TensorFlow +import tensorflow as tf +print(tf.__version__) + +# Use Intel Optimized PyTorch +print(torch.__config__.show()) + + +def detect_face_orientation(video_source=0): + # Rest of your code remains unchanged... + # (Please note that you need to download the shape_predictor_68_face_landmarks.dat file) + + while True: + # Capture frame-by-frame + ret, frame = cap.read() + if not ret: + print("Error reading frame.") + break + + # Convert the frame to grayscale for face detection + gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) + + # Detect faces in the frame + faces = face_detector(gray) + + # Check if a face is detected + if len(faces) > 0: + # Assume only one face in the frame for simplicity + face = faces[0] + + # Detect facial landmarks + landmarks = landmarks_predictor(gray, face) + + # Extract relevant landmarks for orientation estimation + # Rest of your code remains unchanged... + + # Release the camera and close all OpenCV windows + cap.release() + cv2.destroyAllWindows() + + +if __name__ == "__main__": + # Initialize the face detector from dlib + face_detector = dlib.get_frontal_face_detector() + landmarks_predictor = dlib.shape_predictor( + "shape_predictor_68_face_landmarks.dat") # You need to download this file + + # Open a connection to the video source (0 for default camera) + cap = cv2.VideoCapture(0) + + detect_face_orientation() + + + + + + + +# import cv2 +# import dlib + + +# def detect_face_orientation(video_source=0): +# # Open a connection to the video source (0 for default camera) +# cap = cv2.VideoCapture(video_source) + +# # Initialize the face detector from dlib +# face_detector = dlib.get_frontal_face_detector() +# landmarks_predictor = dlib.shape_predictor( +# "shape_predictor_68_face_landmarks.dat") # You need to download this file + +# while True: +# # Capture frame-by-frame +# ret, frame = cap.read() +# if not ret: +# print("Error reading frame.") +# break + +# # Convert the frame to grayscale for face detection +# gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) + +# # Detect faces in the frame +# faces = face_detector(gray) + +# # Check if a face is detected +# if len(faces) > 0: +# # Assume only one face in the frame for simplicity +# face = faces[0] + +# # Detect facial landmarks +# landmarks = landmarks_predictor(gray, face) + +# # Extract relevant landmarks for orientation estimation +# left_eye = (landmarks.part(36).x, landmarks.part(36).y) +# right_eye = (landmarks.part(45).x, landmarks.part(45).y) +# nose_tip = (landmarks.part(30).x, landmarks.part(30).y) + +# # Calculate the midpoint of the eyes +# eyes_midpoint = ( +# (left_eye[0] + right_eye[0]) // 2, (left_eye[1] + right_eye[1]) // 2) + +# # Calculate the horizontal distance between the midpoint of the eyes and the nose tip +# horizontal_distance = abs(nose_tip[0] - eyes_midpoint[0]) + +# # Set a threshold for the horizontal distance to classify the orientation +# if horizontal_distance < 10: # Adjust the threshold as needed +# orientation = "Allen solly shirt" +# elif nose_tip[0] > eyes_midpoint[0]: +# orientation = "Bata shoe" +# else: +# orientation = "katespade" + +# # Display the result on the frame +# cv2.putText(frame, f"Customer 102 is looking at {orientation}", ( +# 10, 30), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2) + +# # Display the frame +# cv2.imshow("Face Orientation Analysis", frame) + +# # Break the loop if 'q' is pressed +# if cv2.waitKey(1) & 0xFF == ord('q'): +# break + +# # Release the camera and close all OpenCV windows +# cap.release() +# cv2.destroyAllWindows() + + +# if __name__ == "__main__": +# detect_face_orientation() \ No newline at end of file diff --git a/mistral.py b/mistral.py new file mode 100644 index 00000000..fbc89ce7 --- /dev/null +++ b/mistral.py @@ -0,0 +1,45 @@ +from transformers import AutoModelForCausalLM, AutoTokenizer +import sys +statement = sys.argv[1] +prompt2 = sys.argv[2] +clr_st = statement.replace("#", " ") +clr_pmt = prompt2.replace("#", " ") +device = "cpu" + + +def find_nth_occurrence(text, target, n): + count = 0 + index = -1 + + while count < n: + index = text.find(target, index + 1) + + if index == -1: + break # Target not found + + count += 1 + + return index + + +target_string = "[/INST]" +nth_occurrence = 2 + +tokenizer = AutoTokenizer.from_pretrained("mistralai/Mistral-7B-Instruct-v0.1") +model = AutoModelForCausalLM.from_pretrained( + "mistralai/Mistral-7B-Instruct-v0.1") +messages = [ + {"role": "user", "content": "I need some assistance in IT"}, + {"role": "assistant", "content": clr_pmt}, + {"role": "user", "content": clr_st} + +] +encodeds = tokenizer.apply_chat_template(messages, return_tensors="pt") +# model.save_pretrained() +model_inputs = encodeds.to(device) +model.to(device) +generated_ids = model.generate( + model_inputs, max_new_tokens=1000, do_sample=True) +decoded = tokenizer.batch_decode(generated_ids) +result = find_nth_occurrence(decoded[0], target_string, nth_occurrence) +print(decoded[0][result+7:]) From 40bc42b0ba16fc8b4aba9838e31a99ec476b0f03 Mon Sep 17 00:00:00 2001 From: no-one-really <58998511+no-one-really@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:42:46 +0530 Subject: [PATCH 05/13] Add files via upload --- RAG_PDFs_Model_Final(1).ipynb | 5506 +++++++++++++++++++++++++++++++++ recieve.py | 32 + requirements.txt | 455 +++ salesprediction.py | 97 + serv.py | 77 + 5 files changed, 6167 insertions(+) create mode 100644 RAG_PDFs_Model_Final(1).ipynb create mode 100644 recieve.py create mode 100644 requirements.txt create mode 100644 salesprediction.py create mode 100644 serv.py diff --git a/RAG_PDFs_Model_Final(1).ipynb b/RAG_PDFs_Model_Final(1).ipynb new file mode 100644 index 00000000..6abbe769 --- /dev/null +++ b/RAG_PDFs_Model_Final(1).ipynb @@ -0,0 +1,5506 @@ +{ + "nbformat": 4, + "nbformat_minor": 0, + "metadata": { + "colab": { + "provenance": [] + }, + "kernelspec": { + "name": "python3", + "display_name": "Python 3" + }, + "language_info": { + "name": "python" + }, + "widgets": { + "application/vnd.jupyter.widget-state+json": { + "23607968bc4d49b786b77b3ea34b074e": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_d891ab2e06974741856591110be2c4c8", + "IPY_MODEL_b0750223d8fc4a19b9cae4bea1999612", + "IPY_MODEL_6510989ec2714da9a503b5bfe75bf71a" + ], + "layout": "IPY_MODEL_641deb3c3fca4a8e9473a130d28d74d1" + } + }, + "d891ab2e06974741856591110be2c4c8": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_8648881bae5243e781bbf9c4233d60f4", + "placeholder": "", + "style": "IPY_MODEL_12f535cdd1b54f09bcdefdca742ba3ec", + "value": ".gitattributes: 100%" + } + }, + "b0750223d8fc4a19b9cae4bea1999612": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_9ea9d0ffa0254c8da0daae21be927697", + "max": 1175, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_54be88cb39ea463c8546c831a5a69a03", + "value": 1175 + } + }, + "6510989ec2714da9a503b5bfe75bf71a": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_ed7f25bb019f43d18e2af53ba6614ba2", + "placeholder": "", + "style": "IPY_MODEL_df4d7cc76cec4ff38cc27e577cac0953", + "value": " 1.18k/1.18k [00:00<00:00, 67.1kB/s]" + } + }, + "641deb3c3fca4a8e9473a130d28d74d1": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "8648881bae5243e781bbf9c4233d60f4": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "12f535cdd1b54f09bcdefdca742ba3ec": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "9ea9d0ffa0254c8da0daae21be927697": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "54be88cb39ea463c8546c831a5a69a03": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "ed7f25bb019f43d18e2af53ba6614ba2": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "df4d7cc76cec4ff38cc27e577cac0953": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "e93bf69730824138aaf354009fc8c1aa": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_3ef058f234fb443cbeba8c88d7f58d7f", + "IPY_MODEL_17d56749e05c4ec1a6134466a9433406", + "IPY_MODEL_5d03809a0f724cbba88aa088ace21cec" + ], + "layout": "IPY_MODEL_118a78f85d35465cb95d18f23dc4f218" + } + }, + "3ef058f234fb443cbeba8c88d7f58d7f": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_42983e2264114fed936c607e166a813a", + "placeholder": "", + "style": "IPY_MODEL_3f2bacd327da4ffba7379bd221290de2", + "value": "1_Pooling/config.json: 100%" + } + }, + "17d56749e05c4ec1a6134466a9433406": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_49f22e10d58d47ebb1bff6d10deb4d81", + "max": 190, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_0bd7a8cb90914d3da71c2e62079088d0", + "value": 190 + } + }, + "5d03809a0f724cbba88aa088ace21cec": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_b3c532a101bd4500a423c705cdd30097", + "placeholder": "", + "style": "IPY_MODEL_d56f7720850a4f70bdd5896212114aaf", + "value": " 190/190 [00:00<00:00, 9.16kB/s]" + } + }, + "118a78f85d35465cb95d18f23dc4f218": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "42983e2264114fed936c607e166a813a": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "3f2bacd327da4ffba7379bd221290de2": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "49f22e10d58d47ebb1bff6d10deb4d81": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "0bd7a8cb90914d3da71c2e62079088d0": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "b3c532a101bd4500a423c705cdd30097": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "d56f7720850a4f70bdd5896212114aaf": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "b17a8eb38bb34985b31d265f979d550c": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_f70561286400426a8893240ef4ac4f8f", + "IPY_MODEL_8ba4c1ba21824129a53e1e26a58c3a6f", + "IPY_MODEL_ef37464ea7ea49259ed6b3ce5c9672e5" + ], + "layout": "IPY_MODEL_734e31c6e88f47649128dc646dbca77a" + } + }, + "f70561286400426a8893240ef4ac4f8f": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_bfa540c77c884377b3d14433628b4024", + "placeholder": "", + "style": "IPY_MODEL_86bcd0067bd04ccfb706a14d937484fa", + "value": "README.md: 100%" + } + }, + "8ba4c1ba21824129a53e1e26a58c3a6f": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_2d34148cb5f847e3b365d50e8fde40f7", + "max": 10571, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_150d0df68328481a8041d2dcaf2bd973", + "value": 10571 + } + }, + "ef37464ea7ea49259ed6b3ce5c9672e5": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_8a55e8d69f03481d9a0812c1b2001025", + "placeholder": "", + "style": "IPY_MODEL_f90d5916a85643d4b8c172e38a8c418e", + "value": " 10.6k/10.6k [00:00<00:00, 598kB/s]" + } + }, + "734e31c6e88f47649128dc646dbca77a": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "bfa540c77c884377b3d14433628b4024": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "86bcd0067bd04ccfb706a14d937484fa": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "2d34148cb5f847e3b365d50e8fde40f7": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "150d0df68328481a8041d2dcaf2bd973": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "8a55e8d69f03481d9a0812c1b2001025": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "f90d5916a85643d4b8c172e38a8c418e": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "0ef42122570d4213b0a202a0886a7b35": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_5d8d4f1baad34069ba0d849bd51b406f", + "IPY_MODEL_25699261e58d49218ffa76e6bfe409a6", + "IPY_MODEL_1e03f71de1384a27b45a2d6d37f292b1" + ], + "layout": "IPY_MODEL_7f187660e02b4fc799b4da3a4ada17aa" + } + }, + "5d8d4f1baad34069ba0d849bd51b406f": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_747a7894cdfa4bce8cf76f0d82d84abb", + "placeholder": "", + "style": "IPY_MODEL_f687e06e06394120a5a09ec661e82aba", + "value": "config.json: 100%" + } + }, + "25699261e58d49218ffa76e6bfe409a6": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_729f3f28029a46a28b3714d171fca8b3", + "max": 571, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_2a03ec45696f4c41b37e14d6facd83f7", + "value": 571 + } + }, + "1e03f71de1384a27b45a2d6d37f292b1": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_870f3a72816d48f8ad27b8249e76f99f", + "placeholder": "", + "style": "IPY_MODEL_057c2cffb3004a4ba72dcfc67ab5ecf6", + "value": " 571/571 [00:00<00:00, 35.6kB/s]" + } + }, + "7f187660e02b4fc799b4da3a4ada17aa": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "747a7894cdfa4bce8cf76f0d82d84abb": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "f687e06e06394120a5a09ec661e82aba": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "729f3f28029a46a28b3714d171fca8b3": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "2a03ec45696f4c41b37e14d6facd83f7": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "870f3a72816d48f8ad27b8249e76f99f": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "057c2cffb3004a4ba72dcfc67ab5ecf6": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "3ca0a9887a6c4bbfb2aec2faeb74e376": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_19ed688a695845fba3004692d53443f8", + "IPY_MODEL_e0592982bf8a482993a4517e565ac32a", + "IPY_MODEL_b8c431ce76f3471899a967e58d3c48dc" + ], + "layout": "IPY_MODEL_99cf9230a40c407a8b5b80bb4f434603" + } + }, + "19ed688a695845fba3004692d53443f8": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_3e67d5df28214cc7b9fc1421fae60e81", + "placeholder": "", + "style": "IPY_MODEL_c6b84a35b19646efb960b68b4707ad2e", + "value": "config_sentence_transformers.json: 100%" + } + }, + "e0592982bf8a482993a4517e565ac32a": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_7f8af4a772b0490cb01a073be84bfeda", + "max": 116, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_655cb24751ac4f8484563e1113d2b1f2", + "value": 116 + } + }, + "b8c431ce76f3471899a967e58d3c48dc": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_14249f80105049fb802e87f3b5d98f1d", + "placeholder": "", + "style": "IPY_MODEL_18663e8bee7740a79155e633f528b3b0", + "value": " 116/116 [00:00<00:00, 6.78kB/s]" + } + }, + "99cf9230a40c407a8b5b80bb4f434603": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "3e67d5df28214cc7b9fc1421fae60e81": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "c6b84a35b19646efb960b68b4707ad2e": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "7f8af4a772b0490cb01a073be84bfeda": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "655cb24751ac4f8484563e1113d2b1f2": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "14249f80105049fb802e87f3b5d98f1d": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "18663e8bee7740a79155e633f528b3b0": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "ddb1d592f1f949c2bc3663eaa09a82e2": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_419baab7a4984bccbfd308503e4d0fe3", + "IPY_MODEL_49c5dabe560b40029998b706a2daf492", + "IPY_MODEL_3b81131e9d3943d8b057b8db30c5b535" + ], + "layout": "IPY_MODEL_cd60aaf3065c4b9cb41816ba47cea595" + } + }, + "419baab7a4984bccbfd308503e4d0fe3": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_9c5ea6f967ee468bbc004cf17a101f45", + "placeholder": "", + "style": "IPY_MODEL_68a64a5764f44fbaab8d7d7ff4ff27af", + "value": "data_config.json: 100%" + } + }, + "49c5dabe560b40029998b706a2daf492": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_3b4da69205c84d01a9ac64c9620d7c98", + "max": 39265, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_2790e175d5cd4ff09848b7f93b9c1f65", + "value": 39265 + } + }, + "3b81131e9d3943d8b057b8db30c5b535": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_0b84133a40034512acfd1fa386aff78d", + "placeholder": "", + "style": "IPY_MODEL_cabff2df46eb45579e32f769794f5e82", + "value": " 39.3k/39.3k [00:00<00:00, 203kB/s]" + } + }, + "cd60aaf3065c4b9cb41816ba47cea595": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "9c5ea6f967ee468bbc004cf17a101f45": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "68a64a5764f44fbaab8d7d7ff4ff27af": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "3b4da69205c84d01a9ac64c9620d7c98": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "2790e175d5cd4ff09848b7f93b9c1f65": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "0b84133a40034512acfd1fa386aff78d": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "cabff2df46eb45579e32f769794f5e82": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "a7b4da413e3f4c379242ba1d1df47c5a": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_6915b3ccb38c4fe7b03e4c023e6aaf8d", + "IPY_MODEL_f569950194684b2187522b33d6658cf6", + "IPY_MODEL_5d57674fd8214bafbf2b47d5860da60c" + ], + "layout": "IPY_MODEL_6dc92f33b5364b2b99bf7be448f3100a" + } + }, + "6915b3ccb38c4fe7b03e4c023e6aaf8d": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_fb833669c554404d8e3236d872d3a9c3", + "placeholder": "", + "style": "IPY_MODEL_4f29461501c54c4ea2274a356c790b3e", + "value": "pytorch_model.bin: 100%" + } + }, + "f569950194684b2187522b33d6658cf6": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_af32ae0b068a48c68f0d4ed42da930ff", + "max": 438011953, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_85e1219e5e3d4d3daa60c993e1f404df", + "value": 438011953 + } + }, + "5d57674fd8214bafbf2b47d5860da60c": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_b967cd59d2b04c6484af9915a5cc9c9a", + "placeholder": "", + "style": "IPY_MODEL_8e78527019194686b66456e091680243", + "value": " 438M/438M [00:09<00:00, 45.5MB/s]" + } + }, + "6dc92f33b5364b2b99bf7be448f3100a": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "fb833669c554404d8e3236d872d3a9c3": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "4f29461501c54c4ea2274a356c790b3e": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "af32ae0b068a48c68f0d4ed42da930ff": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "85e1219e5e3d4d3daa60c993e1f404df": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "b967cd59d2b04c6484af9915a5cc9c9a": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "8e78527019194686b66456e091680243": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "62793ff863234cc2804c568bb358a543": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_1eb2713fbede4ff3bc4cd86cfe67d29a", + "IPY_MODEL_d5002f91694d4829886f4b3006a85368", + "IPY_MODEL_20e0f9e393504d319090c8985ffefe4f" + ], + "layout": "IPY_MODEL_2af9270e8dcd4105a9e96c1f96858ba3" + } + }, + "1eb2713fbede4ff3bc4cd86cfe67d29a": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_49069554a008477f9c57016f5a8b9c20", + "placeholder": "", + "style": "IPY_MODEL_652bcab4e6c8400a86d95a7a2d7631f8", + "value": "sentence_bert_config.json: 100%" + } + }, + "d5002f91694d4829886f4b3006a85368": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_e39444c8727442519c8d0906f6f10a48", + "max": 53, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_c2605e1c2e3a4ff687da0626d33bb6d2", + "value": 53 + } + }, + "20e0f9e393504d319090c8985ffefe4f": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_253861912a524c638a9ec26c08f4cc9f", + "placeholder": "", + "style": "IPY_MODEL_7563929533f7428ca40b1de960b47175", + "value": " 53.0/53.0 [00:00<00:00, 2.50kB/s]" + } + }, + "2af9270e8dcd4105a9e96c1f96858ba3": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "49069554a008477f9c57016f5a8b9c20": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "652bcab4e6c8400a86d95a7a2d7631f8": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "e39444c8727442519c8d0906f6f10a48": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "c2605e1c2e3a4ff687da0626d33bb6d2": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "253861912a524c638a9ec26c08f4cc9f": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "7563929533f7428ca40b1de960b47175": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "97032c42809042f09283bff98cfd60c0": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_443d12a2b811483ab903715347c86f8c", + "IPY_MODEL_730d72f523f74f20949b8e4e68d77b8b", + "IPY_MODEL_705309b9171a45beba8fb118e0910790" + ], + "layout": "IPY_MODEL_28e19593652c4b2d9abcbee02c486ed8" + } + }, + "443d12a2b811483ab903715347c86f8c": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_b478df96fd7643bbaca9c419c42d5477", + "placeholder": "", + "style": "IPY_MODEL_e72deea57e9a4c06bcd38769b0d4fdd4", + "value": "special_tokens_map.json: 100%" + } + }, + "730d72f523f74f20949b8e4e68d77b8b": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_3b5fc31ac3384f5f988dbc3636abf01f", + "max": 239, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_24c0c9858aa14796952197164c579ec6", + "value": 239 + } + }, + "705309b9171a45beba8fb118e0910790": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_7f78f54d2b5945f09d43c3420d8dd27f", + "placeholder": "", + "style": "IPY_MODEL_e191506379f144d28f5da8c0d0927b60", + "value": " 239/239 [00:00<00:00, 12.9kB/s]" + } + }, + "28e19593652c4b2d9abcbee02c486ed8": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "b478df96fd7643bbaca9c419c42d5477": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "e72deea57e9a4c06bcd38769b0d4fdd4": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "3b5fc31ac3384f5f988dbc3636abf01f": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "24c0c9858aa14796952197164c579ec6": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "7f78f54d2b5945f09d43c3420d8dd27f": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "e191506379f144d28f5da8c0d0927b60": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "9edfc3996ea843ca8b3a2e67c3be2203": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_9f82f973a29b48d0b61a08900d899bce", + "IPY_MODEL_4ef4ce60ec68456e8b45b68f134d25c9", + "IPY_MODEL_4f3596fc374d41048fce054d2d3d867f" + ], + "layout": "IPY_MODEL_70e54b722a2c4e8fa0b3b50daa025014" + } + }, + "9f82f973a29b48d0b61a08900d899bce": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_ac9e69d031b74845b79d17b6f7abc3df", + "placeholder": "", + "style": "IPY_MODEL_0dad6d8443b0402ba2594b8de4d82fce", + "value": "tokenizer.json: 100%" + } + }, + "4ef4ce60ec68456e8b45b68f134d25c9": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_3a4b8e53978c4a74a2530010ab7269a3", + "max": 466021, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_5ffaf729cd0a44a8970f455e1d7d7f97", + "value": 466021 + } + }, + "4f3596fc374d41048fce054d2d3d867f": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_509f974a8d7848efaa37f74bec02288e", + "placeholder": "", + "style": "IPY_MODEL_4ac2e43bb41b4a7f9e06a7fd37be0e56", + "value": " 466k/466k [00:00<00:00, 1.19MB/s]" + } + }, + "70e54b722a2c4e8fa0b3b50daa025014": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "ac9e69d031b74845b79d17b6f7abc3df": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "0dad6d8443b0402ba2594b8de4d82fce": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "3a4b8e53978c4a74a2530010ab7269a3": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "5ffaf729cd0a44a8970f455e1d7d7f97": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "509f974a8d7848efaa37f74bec02288e": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "4ac2e43bb41b4a7f9e06a7fd37be0e56": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "400defce45e64c45afec9ce7a6418d29": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_1c4c6ff037fd434299889439b5a0e5aa", + "IPY_MODEL_b71454057a38419c94aaefdd879cf013", + "IPY_MODEL_5ade3b8a5bae485a84951216e2aa6133" + ], + "layout": "IPY_MODEL_10265027a2ee49d78af72162a048ae14" + } + }, + "1c4c6ff037fd434299889439b5a0e5aa": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_c9e0678085c14a6e8f842081c0f20cef", + "placeholder": "", + "style": "IPY_MODEL_4cffe665b9b4430bb355dd4cc57afb6a", + "value": "tokenizer_config.json: 100%" + } + }, + "b71454057a38419c94aaefdd879cf013": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_8e64f12d4422469dae6a786771fc3257", + "max": 363, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_b524ac66c568404d873be695dd9e2b46", + "value": 363 + } + }, + "5ade3b8a5bae485a84951216e2aa6133": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_70360cafd0b94631a64d12b00693b5f2", + "placeholder": "", + "style": "IPY_MODEL_15a4c0eb016949c48ca6fb24ef041636", + "value": " 363/363 [00:00<00:00, 20.6kB/s]" + } + }, + "10265027a2ee49d78af72162a048ae14": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "c9e0678085c14a6e8f842081c0f20cef": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "4cffe665b9b4430bb355dd4cc57afb6a": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "8e64f12d4422469dae6a786771fc3257": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "b524ac66c568404d873be695dd9e2b46": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "70360cafd0b94631a64d12b00693b5f2": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "15a4c0eb016949c48ca6fb24ef041636": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "e1f067311f14426a955633e9c98ed804": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_fb7e8f26d4174e9698c97b1393171be4", + "IPY_MODEL_4dd3a574d67b4ae5971cb8f4d521ece3", + "IPY_MODEL_e38f515d61d44017a38d4c06d07d5e5e" + ], + "layout": "IPY_MODEL_3ef4cea9699048169435224b2b5ed4ee" + } + }, + "fb7e8f26d4174e9698c97b1393171be4": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_ce12e1b2a3c64725b8f1d4a0bec6a94d", + "placeholder": "", + "style": "IPY_MODEL_6953d531ce624fa7bbfc5c1a1c079e2e", + "value": "train_script.py: 100%" + } + }, + "4dd3a574d67b4ae5971cb8f4d521ece3": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_6602cf060a0c4a21b8f12078b1bce6ea", + "max": 13123, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_8b665819df2a4634bc4a618ec4f8a811", + "value": 13123 + } + }, + "e38f515d61d44017a38d4c06d07d5e5e": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_4bd8b9f65d1c4bbfa4ad8f11ac63b713", + "placeholder": "", + "style": "IPY_MODEL_e252594e398044ec8154d6ceebe641c9", + "value": " 13.1k/13.1k [00:00<00:00, 598kB/s]" + } + }, + "3ef4cea9699048169435224b2b5ed4ee": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "ce12e1b2a3c64725b8f1d4a0bec6a94d": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "6953d531ce624fa7bbfc5c1a1c079e2e": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "6602cf060a0c4a21b8f12078b1bce6ea": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "8b665819df2a4634bc4a618ec4f8a811": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "4bd8b9f65d1c4bbfa4ad8f11ac63b713": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "e252594e398044ec8154d6ceebe641c9": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "4615ca319aac4829ac47809797c41203": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_da6981966557475bb4c62bf665535603", + "IPY_MODEL_bf0ec5d376624576af6dfa2d8728e931", + "IPY_MODEL_a3dca0840f994e64bb85d2de9cd4d3e7" + ], + "layout": "IPY_MODEL_14d490ff47b2438d90a5f3c79c38c74e" + } + }, + "da6981966557475bb4c62bf665535603": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_60ee682da3d9494181a816a35b349241", + "placeholder": "", + "style": "IPY_MODEL_8fbb0eeec05e4a93a8029c6beef41744", + "value": "vocab.txt: 100%" + } + }, + "bf0ec5d376624576af6dfa2d8728e931": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_7d93031883c94279a94f32a209dbc687", + "max": 231536, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_8c369c9ddd1d4da1b04ad5d1c277d4c7", + "value": 231536 + } + }, + "a3dca0840f994e64bb85d2de9cd4d3e7": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_89408d151d2e4ec2a836d6982b8f4c04", + "placeholder": "", + "style": "IPY_MODEL_5a56b0fc8263477395766e0e592e30b1", + "value": " 232k/232k [00:00<00:00, 11.7MB/s]" + } + }, + "14d490ff47b2438d90a5f3c79c38c74e": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "60ee682da3d9494181a816a35b349241": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "8fbb0eeec05e4a93a8029c6beef41744": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "7d93031883c94279a94f32a209dbc687": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "8c369c9ddd1d4da1b04ad5d1c277d4c7": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "89408d151d2e4ec2a836d6982b8f4c04": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "5a56b0fc8263477395766e0e592e30b1": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "d10172c7a0fe40aa8ca4f6339c427876": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HBoxModel", + "model_module_version": "1.5.0", + "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_5d3223254cbf438286a0822dc7a32681", + "IPY_MODEL_e4e404d30c6446e99f1c409a1d00f290", + "IPY_MODEL_2c1ddea915b74bf494d0b0cebf6923bd" + ], + "layout": "IPY_MODEL_3985d6150656429fabaee74e82187c52" + } + }, + "5d3223254cbf438286a0822dc7a32681": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_a2f9a01cf98a4e1fac6db25049995cd2", + "placeholder": "", + "style": "IPY_MODEL_6e71329ba9ed4e948fa281596f8c8a3e", + "value": "modules.json: 100%" + } + }, + "e4e404d30c6446e99f1c409a1d00f290": { + "model_module": "@jupyter-widgets/controls", + "model_name": "FloatProgressModel", + "model_module_version": "1.5.0", + "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_be47963d578846e2a0b5848122c867dd", + "max": 349, + "min": 0, + "orientation": "horizontal", + "style": "IPY_MODEL_45d4fcd9772e43fe81479dbb7630c87d", + "value": 349 + } + }, + "2c1ddea915b74bf494d0b0cebf6923bd": { + "model_module": "@jupyter-widgets/controls", + "model_name": "HTMLModel", + "model_module_version": "1.5.0", + "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_97d08e7b2fad4055a45032f1325504c3", + "placeholder": "", + "style": "IPY_MODEL_8b6fb0cc6aab4555b1ddbad71ca5dbb0", + "value": " 349/349 [00:00<00:00, 20.9kB/s]" + } + }, + "3985d6150656429fabaee74e82187c52": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "a2f9a01cf98a4e1fac6db25049995cd2": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "6e71329ba9ed4e948fa281596f8c8a3e": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "be47963d578846e2a0b5848122c867dd": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "45d4fcd9772e43fe81479dbb7630c87d": { + "model_module": "@jupyter-widgets/controls", + "model_name": "ProgressStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + }, + "97d08e7b2fad4055a45032f1325504c3": { + "model_module": "@jupyter-widgets/base", + "model_name": "LayoutModel", + "model_module_version": "1.2.0", + "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 + } + }, + "8b6fb0cc6aab4555b1ddbad71ca5dbb0": { + "model_module": "@jupyter-widgets/controls", + "model_name": "DescriptionStyleModel", + "model_module_version": "1.5.0", + "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": "" + } + } + } + } + }, + "cells": [ + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "id": "hndzQ4tqRLL9", + "colab": { + "base_uri": "https://localhost:8080/" + }, + "outputId": "9bd155d6-f936-4f67-a7a9-8b6f4ba57ae7" + }, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Collecting langchain\n", + " Downloading langchain-0.0.346-py3-none-any.whl (2.0 MB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.0/2.0 MB\u001b[0m \u001b[31m8.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25hRequirement already satisfied: PyYAML>=5.3 in /usr/local/lib/python3.10/dist-packages (from langchain) (6.0.1)\n", + "Requirement already satisfied: SQLAlchemy<3,>=1.4 in /usr/local/lib/python3.10/dist-packages (from langchain) (2.0.23)\n", + "Requirement already satisfied: aiohttp<4.0.0,>=3.8.3 in /usr/local/lib/python3.10/dist-packages (from langchain) (3.9.1)\n", + "Requirement already satisfied: anyio<4.0 in /usr/local/lib/python3.10/dist-packages (from langchain) (3.7.1)\n", + "Requirement already satisfied: async-timeout<5.0.0,>=4.0.0 in /usr/local/lib/python3.10/dist-packages (from langchain) (4.0.3)\n", + "Collecting dataclasses-json<0.7,>=0.5.7 (from langchain)\n", + " Downloading dataclasses_json-0.6.3-py3-none-any.whl (28 kB)\n", + "Collecting jsonpatch<2.0,>=1.33 (from langchain)\n", + " Downloading jsonpatch-1.33-py2.py3-none-any.whl (12 kB)\n", + "Collecting langchain-core<0.1,>=0.0.10 (from langchain)\n", + " Downloading langchain_core-0.0.10-py3-none-any.whl (178 kB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m178.2/178.2 kB\u001b[0m \u001b[31m11.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25hCollecting langsmith<0.1.0,>=0.0.63 (from langchain)\n", + " Downloading langsmith-0.0.69-py3-none-any.whl (48 kB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m48.2/48.2 kB\u001b[0m \u001b[31m5.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25hRequirement already satisfied: numpy<2,>=1 in /usr/local/lib/python3.10/dist-packages (from langchain) (1.23.5)\n", + "Requirement already satisfied: pydantic<3,>=1 in /usr/local/lib/python3.10/dist-packages (from langchain) (1.10.13)\n", + "Requirement already satisfied: requests<3,>=2 in /usr/local/lib/python3.10/dist-packages (from langchain) (2.31.0)\n", + "Requirement already satisfied: tenacity<9.0.0,>=8.1.0 in /usr/local/lib/python3.10/dist-packages (from langchain) (8.2.3)\n", + "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (23.1.0)\n", + "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (6.0.4)\n", + "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (1.9.3)\n", + "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (1.4.0)\n", + "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (1.3.1)\n", + "Requirement already satisfied: idna>=2.8 in /usr/local/lib/python3.10/dist-packages (from anyio<4.0->langchain) (3.6)\n", + "Requirement already satisfied: sniffio>=1.1 in /usr/local/lib/python3.10/dist-packages (from anyio<4.0->langchain) (1.3.0)\n", + "Requirement already satisfied: exceptiongroup in /usr/local/lib/python3.10/dist-packages (from anyio<4.0->langchain) (1.2.0)\n", + "Collecting marshmallow<4.0.0,>=3.18.0 (from dataclasses-json<0.7,>=0.5.7->langchain)\n", + " Downloading marshmallow-3.20.1-py3-none-any.whl (49 kB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m49.4/49.4 kB\u001b[0m \u001b[31m5.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25hCollecting typing-inspect<1,>=0.4.0 (from dataclasses-json<0.7,>=0.5.7->langchain)\n", + " Downloading typing_inspect-0.9.0-py3-none-any.whl (8.8 kB)\n", + "Collecting jsonpointer>=1.9 (from jsonpatch<2.0,>=1.33->langchain)\n", + " Downloading jsonpointer-2.4-py2.py3-none-any.whl (7.8 kB)\n", + "Requirement already satisfied: typing-extensions>=4.2.0 in /usr/local/lib/python3.10/dist-packages (from pydantic<3,>=1->langchain) (4.5.0)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2->langchain) (3.3.2)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2->langchain) (2.0.7)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2->langchain) (2023.11.17)\n", + "Requirement already satisfied: greenlet!=0.4.17 in /usr/local/lib/python3.10/dist-packages (from SQLAlchemy<3,>=1.4->langchain) (3.0.1)\n", + "Requirement already satisfied: packaging>=17.0 in /usr/local/lib/python3.10/dist-packages (from marshmallow<4.0.0,>=3.18.0->dataclasses-json<0.7,>=0.5.7->langchain) (23.2)\n", + "Collecting mypy-extensions>=0.3.0 (from typing-inspect<1,>=0.4.0->dataclasses-json<0.7,>=0.5.7->langchain)\n", + " Downloading mypy_extensions-1.0.0-py3-none-any.whl (4.7 kB)\n", + "Installing collected packages: mypy-extensions, marshmallow, jsonpointer, typing-inspect, langsmith, jsonpatch, langchain-core, dataclasses-json, langchain\n", + "Successfully installed dataclasses-json-0.6.3 jsonpatch-1.33 jsonpointer-2.4 langchain-0.0.346 langchain-core-0.0.10 langsmith-0.0.69 marshmallow-3.20.1 mypy-extensions-1.0.0 typing-inspect-0.9.0\n", + "Requirement already satisfied: huggingface_hub in /usr/local/lib/python3.10/dist-packages (0.19.4)\n", + "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from huggingface_hub) (3.13.1)\n", + "Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface_hub) (2023.6.0)\n", + "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from huggingface_hub) (2.31.0)\n", + "Requirement already satisfied: tqdm>=4.42.1 in /usr/local/lib/python3.10/dist-packages (from huggingface_hub) (4.66.1)\n", + "Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from huggingface_hub) (6.0.1)\n", + "Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface_hub) (4.5.0)\n", + "Requirement already satisfied: packaging>=20.9 in /usr/local/lib/python3.10/dist-packages (from huggingface_hub) (23.2)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface_hub) (3.3.2)\n", + "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface_hub) (3.6)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface_hub) (2.0.7)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface_hub) (2023.11.17)\n", + "Collecting sentence_transformers\n", + " Downloading sentence-transformers-2.2.2.tar.gz (85 kB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m86.0/86.0 kB\u001b[0m \u001b[31m2.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25h Preparing metadata (setup.py) ... \u001b[?25l\u001b[?25hdone\n", + "Requirement already satisfied: transformers<5.0.0,>=4.6.0 in /usr/local/lib/python3.10/dist-packages (from sentence_transformers) (4.35.2)\n", + "Requirement already satisfied: tqdm in /usr/local/lib/python3.10/dist-packages (from sentence_transformers) (4.66.1)\n", + "Requirement already satisfied: torch>=1.6.0 in /usr/local/lib/python3.10/dist-packages (from sentence_transformers) (2.1.0+cu118)\n", + "Requirement already satisfied: torchvision in /usr/local/lib/python3.10/dist-packages (from sentence_transformers) (0.16.0+cu118)\n", + "Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from sentence_transformers) (1.23.5)\n", + "Requirement already satisfied: scikit-learn in /usr/local/lib/python3.10/dist-packages (from sentence_transformers) (1.2.2)\n", + "Requirement already satisfied: scipy in /usr/local/lib/python3.10/dist-packages (from sentence_transformers) (1.11.4)\n", + "Requirement already satisfied: nltk in /usr/local/lib/python3.10/dist-packages (from sentence_transformers) (3.8.1)\n", + "Collecting sentencepiece (from sentence_transformers)\n", + " Downloading sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.3/1.3 MB\u001b[0m \u001b[31m26.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25hRequirement already satisfied: huggingface-hub>=0.4.0 in /usr/local/lib/python3.10/dist-packages (from sentence_transformers) (0.19.4)\n", + "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.4.0->sentence_transformers) (3.13.1)\n", + "Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.4.0->sentence_transformers) (2023.6.0)\n", + "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.4.0->sentence_transformers) (2.31.0)\n", + "Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.4.0->sentence_transformers) (6.0.1)\n", + "Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.4.0->sentence_transformers) (4.5.0)\n", + "Requirement already satisfied: packaging>=20.9 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.4.0->sentence_transformers) (23.2)\n", + "Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=1.6.0->sentence_transformers) (1.12)\n", + "Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=1.6.0->sentence_transformers) (3.2.1)\n", + "Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.6.0->sentence_transformers) (3.1.2)\n", + "Requirement already satisfied: triton==2.1.0 in /usr/local/lib/python3.10/dist-packages (from torch>=1.6.0->sentence_transformers) (2.1.0)\n", + "Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.10/dist-packages (from transformers<5.0.0,>=4.6.0->sentence_transformers) (2023.6.3)\n", + "Requirement already satisfied: tokenizers<0.19,>=0.14 in /usr/local/lib/python3.10/dist-packages (from transformers<5.0.0,>=4.6.0->sentence_transformers) (0.15.0)\n", + "Requirement already satisfied: safetensors>=0.3.1 in /usr/local/lib/python3.10/dist-packages (from transformers<5.0.0,>=4.6.0->sentence_transformers) (0.4.1)\n", + "Requirement already satisfied: click in /usr/local/lib/python3.10/dist-packages (from nltk->sentence_transformers) (8.1.7)\n", + "Requirement already satisfied: joblib in /usr/local/lib/python3.10/dist-packages (from nltk->sentence_transformers) (1.3.2)\n", + "Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from scikit-learn->sentence_transformers) (3.2.0)\n", + "Requirement already satisfied: pillow!=8.3.*,>=5.3.0 in /usr/local/lib/python3.10/dist-packages (from torchvision->sentence_transformers) (9.4.0)\n", + "Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.6.0->sentence_transformers) (2.1.3)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.4.0->sentence_transformers) (3.3.2)\n", + "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.4.0->sentence_transformers) (3.6)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.4.0->sentence_transformers) (2.0.7)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.4.0->sentence_transformers) (2023.11.17)\n", + "Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=1.6.0->sentence_transformers) (1.3.0)\n", + "Building wheels for collected packages: sentence_transformers\n", + " Building wheel for sentence_transformers (setup.py) ... \u001b[?25l\u001b[?25hdone\n", + " Created wheel for sentence_transformers: filename=sentence_transformers-2.2.2-py3-none-any.whl size=125923 sha256=bae66a222ddc60a104a9ac1501bbe5b63786537d897bbe19c663a14a5b52166f\n", + " Stored in directory: /root/.cache/pip/wheels/62/f2/10/1e606fd5f02395388f74e7462910fe851042f97238cbbd902f\n", + "Successfully built sentence_transformers\n", + "Installing collected packages: sentencepiece, sentence_transformers\n", + "Successfully installed sentence_transformers-2.2.2 sentencepiece-0.1.99\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.7/1.7 MB\u001b[0m \u001b[31m15.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m397.5/397.5 kB\u001b[0m \u001b[31m26.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m275.1/275.1 kB\u001b[0m \u001b[31m19.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m981.5/981.5 kB\u001b[0m \u001b[31m39.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25h Preparing metadata (setup.py) ... \u001b[?25l\u001b[?25hdone\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.3/3.3 MB\u001b[0m \u001b[31m84.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m239.6/239.6 kB\u001b[0m \u001b[31m21.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m15.7/15.7 MB\u001b[0m \u001b[31m76.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m277.6/277.6 kB\u001b[0m \u001b[31m26.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m101.8/101.8 kB\u001b[0m \u001b[31m10.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m5.6/5.6 MB\u001b[0m \u001b[31m97.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m62.7/62.7 kB\u001b[0m \u001b[31m5.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.3/2.3 MB\u001b[0m \u001b[31m70.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m471.6/471.6 kB\u001b[0m \u001b[31m39.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m19.2/19.2 MB\u001b[0m \u001b[31m71.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m45.7/45.7 kB\u001b[0m \u001b[31m4.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m5.9/5.9 MB\u001b[0m \u001b[31m97.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m154.8/154.8 kB\u001b[0m \u001b[31m16.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m114.6/114.6 kB\u001b[0m \u001b[31m12.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.6/3.6 MB\u001b[0m \u001b[31m79.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m46.0/46.0 kB\u001b[0m \u001b[31m4.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m42.2/42.2 kB\u001b[0m \u001b[31m1.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25h Preparing metadata (setup.py) ... \u001b[?25l\u001b[?25hdone\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m49.0/49.0 kB\u001b[0m \u001b[31m4.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m112.5/112.5 kB\u001b[0m \u001b[31m9.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m86.8/86.8 kB\u001b[0m \u001b[31m9.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.2/2.2 MB\u001b[0m \u001b[31m60.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m79.5/79.5 kB\u001b[0m \u001b[31m8.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.0/3.0 MB\u001b[0m \u001b[31m94.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m117.0/117.0 kB\u001b[0m \u001b[31m13.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25h Preparing metadata (setup.py) ... \u001b[?25l\u001b[?25hdone\n", + " Building wheel for langdetect (setup.py) ... \u001b[?25l\u001b[?25hdone\n", + " Building wheel for iopath (setup.py) ... \u001b[?25l\u001b[?25hdone\n", + " Building wheel for antlr4-python3-runtime (setup.py) ... \u001b[?25l\u001b[?25hdone\n", + "\u001b[31mERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.\n", + "lida 0.0.10 requires fastapi, which is not installed.\n", + "lida 0.0.10 requires kaleido, which is not installed.\n", + "lida 0.0.10 requires uvicorn, which is not installed.\n", + "imageio 2.31.6 requires pillow<10.1.0,>=8.3.2, but you have pillow 10.1.0 which is incompatible.\u001b[0m\u001b[31m\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m17.6/17.6 MB\u001b[0m \u001b[31m14.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", + "\u001b[?25h" + ] + } + ], + "source": [ + "# Need some pre-requisites\n", + "\n", + "!pip install langchain\n", + "!pip install huggingface_hub\n", + "!pip install sentence_transformers\n", + "!pip install unstructured[local-inference] -q\n", + "!pip install -q faiss-cpu" + ] + }, + { + "cell_type": "code", + "source": [ + "# FAISS needed to store the vector representations of PDF text data from UnstructuredPDFLoader\n", + "# QA will provide me with answer based data from PDF provided, to the prompt given\n", + "\n", + "from langchain.document_loaders import UnstructuredPDFLoader\n", + "from langchain.vectorstores import FAISS\n", + "from langchain.chains.question_answering import load_qa_chain\n" + ], + "metadata": { + "id": "c61wykhqRPUw" + }, + "execution_count": 6, + "outputs": [] + }, + { + "cell_type": "code", + "source": [ + "# PLEASE PROVIDE HUGGINGFACE TOKEN, SO THAT WE ARE ABLE TO USE HUGGINGFACE MODELS\n", + "\n", + "import os\n", + "os.environ[\"HUGGINGFACEHUB_API_TOKEN\"] = \"PUT_YOUR_HUGGING_FACE_TOKEN_HERE\"" + ], + "metadata": { + "id": "7whTyEnWRs6Q" + }, + "execution_count": 7, + "outputs": [] + }, + { + "cell_type": "code", + "source": [ + "# Load the document of where the data is.. In my case., Clothes Catalogue\n", + "\n", + "loader = UnstructuredPDFLoader(\"/content/doc2.pdf\")\n", + "document = loader.load()" + ], + "metadata": { + "id": "Wm1hwY_LRWng", + "colab": { + "base_uri": "https://localhost:8080/" + }, + "outputId": "c79a78ad-134e-4e72-d1a7-912776bdbe59" + }, + "execution_count": 8, + "outputs": [ + { + "output_type": "stream", + "name": "stderr", + "text": [ + "[nltk_data] Downloading package punkt to /root/nltk_data...\n", + "[nltk_data] Unzipping tokenizers/punkt.zip.\n" + ] + } + ] + }, + { + "cell_type": "code", + "source": [ + "# Take a document and split it into chunks of a specified size while considering overlap and using defined separators.\n", + "# Useful for processing large text documents in smaller, more manageable pieces.\n", + "\n", + "from langchain.text_splitter import RecursiveCharacterTextSplitter\n", + "\n", + "text_splitter = RecursiveCharacterTextSplitter(chunk_size = 500, chunk_overlap=0, separators=[\" \", \",\", \"\\n\"])\n", + "docs = text_splitter.split_documents(document)" + ], + "metadata": { + "id": "uXlo_SH7RWiH" + }, + "execution_count": 9, + "outputs": [] + }, + { + "cell_type": "code", + "source": [ + "# Numerical representations of words, sentences, or documents that capture semantic information are done with HuggingFaceEmbeddings\n", + "# Creating a FAISS index from the embedded documents, which allows for efficient similarity search based on the learned embeddings.\n", + "\n", + "from langchain.embeddings import HuggingFaceEmbeddings\n", + "\n", + "embedding = HuggingFaceEmbeddings()\n", + "db = FAISS.from_documents(docs, embedding)" + ], + "metadata": { + "id": "N7NpRjWbRWfl", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 465, + "referenced_widgets": [ + "23607968bc4d49b786b77b3ea34b074e", + "d891ab2e06974741856591110be2c4c8", + "b0750223d8fc4a19b9cae4bea1999612", + "6510989ec2714da9a503b5bfe75bf71a", + "641deb3c3fca4a8e9473a130d28d74d1", + "8648881bae5243e781bbf9c4233d60f4", + "12f535cdd1b54f09bcdefdca742ba3ec", + "9ea9d0ffa0254c8da0daae21be927697", + "54be88cb39ea463c8546c831a5a69a03", + "ed7f25bb019f43d18e2af53ba6614ba2", + "df4d7cc76cec4ff38cc27e577cac0953", + "e93bf69730824138aaf354009fc8c1aa", + "3ef058f234fb443cbeba8c88d7f58d7f", + "17d56749e05c4ec1a6134466a9433406", + "5d03809a0f724cbba88aa088ace21cec", + "118a78f85d35465cb95d18f23dc4f218", + "42983e2264114fed936c607e166a813a", + "3f2bacd327da4ffba7379bd221290de2", + "49f22e10d58d47ebb1bff6d10deb4d81", + "0bd7a8cb90914d3da71c2e62079088d0", + "b3c532a101bd4500a423c705cdd30097", + "d56f7720850a4f70bdd5896212114aaf", + "b17a8eb38bb34985b31d265f979d550c", + "f70561286400426a8893240ef4ac4f8f", + "8ba4c1ba21824129a53e1e26a58c3a6f", + "ef37464ea7ea49259ed6b3ce5c9672e5", + "734e31c6e88f47649128dc646dbca77a", + "bfa540c77c884377b3d14433628b4024", + "86bcd0067bd04ccfb706a14d937484fa", + "2d34148cb5f847e3b365d50e8fde40f7", + "150d0df68328481a8041d2dcaf2bd973", + "8a55e8d69f03481d9a0812c1b2001025", + "f90d5916a85643d4b8c172e38a8c418e", + "0ef42122570d4213b0a202a0886a7b35", + "5d8d4f1baad34069ba0d849bd51b406f", + "25699261e58d49218ffa76e6bfe409a6", + "1e03f71de1384a27b45a2d6d37f292b1", + "7f187660e02b4fc799b4da3a4ada17aa", + "747a7894cdfa4bce8cf76f0d82d84abb", + "f687e06e06394120a5a09ec661e82aba", + "729f3f28029a46a28b3714d171fca8b3", + "2a03ec45696f4c41b37e14d6facd83f7", + "870f3a72816d48f8ad27b8249e76f99f", + "057c2cffb3004a4ba72dcfc67ab5ecf6", + "3ca0a9887a6c4bbfb2aec2faeb74e376", + "19ed688a695845fba3004692d53443f8", + "e0592982bf8a482993a4517e565ac32a", + "b8c431ce76f3471899a967e58d3c48dc", + "99cf9230a40c407a8b5b80bb4f434603", + "3e67d5df28214cc7b9fc1421fae60e81", + "c6b84a35b19646efb960b68b4707ad2e", + "7f8af4a772b0490cb01a073be84bfeda", + "655cb24751ac4f8484563e1113d2b1f2", + "14249f80105049fb802e87f3b5d98f1d", + "18663e8bee7740a79155e633f528b3b0", + "ddb1d592f1f949c2bc3663eaa09a82e2", + "419baab7a4984bccbfd308503e4d0fe3", + "49c5dabe560b40029998b706a2daf492", + "3b81131e9d3943d8b057b8db30c5b535", + "cd60aaf3065c4b9cb41816ba47cea595", + "9c5ea6f967ee468bbc004cf17a101f45", + "68a64a5764f44fbaab8d7d7ff4ff27af", + "3b4da69205c84d01a9ac64c9620d7c98", + "2790e175d5cd4ff09848b7f93b9c1f65", + "0b84133a40034512acfd1fa386aff78d", + "cabff2df46eb45579e32f769794f5e82", + "a7b4da413e3f4c379242ba1d1df47c5a", + "6915b3ccb38c4fe7b03e4c023e6aaf8d", + "f569950194684b2187522b33d6658cf6", + "5d57674fd8214bafbf2b47d5860da60c", + "6dc92f33b5364b2b99bf7be448f3100a", + "fb833669c554404d8e3236d872d3a9c3", + "4f29461501c54c4ea2274a356c790b3e", + "af32ae0b068a48c68f0d4ed42da930ff", + "85e1219e5e3d4d3daa60c993e1f404df", + "b967cd59d2b04c6484af9915a5cc9c9a", + "8e78527019194686b66456e091680243", + "62793ff863234cc2804c568bb358a543", + "1eb2713fbede4ff3bc4cd86cfe67d29a", + "d5002f91694d4829886f4b3006a85368", + "20e0f9e393504d319090c8985ffefe4f", + "2af9270e8dcd4105a9e96c1f96858ba3", + "49069554a008477f9c57016f5a8b9c20", + "652bcab4e6c8400a86d95a7a2d7631f8", + "e39444c8727442519c8d0906f6f10a48", + "c2605e1c2e3a4ff687da0626d33bb6d2", + "253861912a524c638a9ec26c08f4cc9f", + "7563929533f7428ca40b1de960b47175", + "97032c42809042f09283bff98cfd60c0", + "443d12a2b811483ab903715347c86f8c", + "730d72f523f74f20949b8e4e68d77b8b", + "705309b9171a45beba8fb118e0910790", + "28e19593652c4b2d9abcbee02c486ed8", + "b478df96fd7643bbaca9c419c42d5477", + "e72deea57e9a4c06bcd38769b0d4fdd4", + "3b5fc31ac3384f5f988dbc3636abf01f", + "24c0c9858aa14796952197164c579ec6", + "7f78f54d2b5945f09d43c3420d8dd27f", + "e191506379f144d28f5da8c0d0927b60", + "9edfc3996ea843ca8b3a2e67c3be2203", + "9f82f973a29b48d0b61a08900d899bce", + "4ef4ce60ec68456e8b45b68f134d25c9", + "4f3596fc374d41048fce054d2d3d867f", + "70e54b722a2c4e8fa0b3b50daa025014", + "ac9e69d031b74845b79d17b6f7abc3df", + "0dad6d8443b0402ba2594b8de4d82fce", + "3a4b8e53978c4a74a2530010ab7269a3", + "5ffaf729cd0a44a8970f455e1d7d7f97", + "509f974a8d7848efaa37f74bec02288e", + "4ac2e43bb41b4a7f9e06a7fd37be0e56", + "400defce45e64c45afec9ce7a6418d29", + "1c4c6ff037fd434299889439b5a0e5aa", + "b71454057a38419c94aaefdd879cf013", + "5ade3b8a5bae485a84951216e2aa6133", + "10265027a2ee49d78af72162a048ae14", + "c9e0678085c14a6e8f842081c0f20cef", + "4cffe665b9b4430bb355dd4cc57afb6a", + "8e64f12d4422469dae6a786771fc3257", + "b524ac66c568404d873be695dd9e2b46", + "70360cafd0b94631a64d12b00693b5f2", + "15a4c0eb016949c48ca6fb24ef041636", + "e1f067311f14426a955633e9c98ed804", + "fb7e8f26d4174e9698c97b1393171be4", + "4dd3a574d67b4ae5971cb8f4d521ece3", + "e38f515d61d44017a38d4c06d07d5e5e", + "3ef4cea9699048169435224b2b5ed4ee", + "ce12e1b2a3c64725b8f1d4a0bec6a94d", + "6953d531ce624fa7bbfc5c1a1c079e2e", + "6602cf060a0c4a21b8f12078b1bce6ea", + "8b665819df2a4634bc4a618ec4f8a811", + "4bd8b9f65d1c4bbfa4ad8f11ac63b713", + "e252594e398044ec8154d6ceebe641c9", + "4615ca319aac4829ac47809797c41203", + "da6981966557475bb4c62bf665535603", + "bf0ec5d376624576af6dfa2d8728e931", + "a3dca0840f994e64bb85d2de9cd4d3e7", + "14d490ff47b2438d90a5f3c79c38c74e", + "60ee682da3d9494181a816a35b349241", + "8fbb0eeec05e4a93a8029c6beef41744", + "7d93031883c94279a94f32a209dbc687", + "8c369c9ddd1d4da1b04ad5d1c277d4c7", + "89408d151d2e4ec2a836d6982b8f4c04", + "5a56b0fc8263477395766e0e592e30b1", + "d10172c7a0fe40aa8ca4f6339c427876", + "5d3223254cbf438286a0822dc7a32681", + "e4e404d30c6446e99f1c409a1d00f290", + "2c1ddea915b74bf494d0b0cebf6923bd", + "3985d6150656429fabaee74e82187c52", + "a2f9a01cf98a4e1fac6db25049995cd2", + "6e71329ba9ed4e948fa281596f8c8a3e", + "be47963d578846e2a0b5848122c867dd", + "45d4fcd9772e43fe81479dbb7630c87d", + "97d08e7b2fad4055a45032f1325504c3", + "8b6fb0cc6aab4555b1ddbad71ca5dbb0" + ] + }, + "outputId": "38221f0a-381a-4ec9-f3b0-ced9157e0ef4" + }, + "execution_count": null, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + ".gitattributes: 0%| | 0.00/1.18k [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "23607968bc4d49b786b77b3ea34b074e" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "1_Pooling/config.json: 0%| | 0.00/190 [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "e93bf69730824138aaf354009fc8c1aa" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "README.md: 0%| | 0.00/10.6k [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "b17a8eb38bb34985b31d265f979d550c" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "config.json: 0%| | 0.00/571 [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "0ef42122570d4213b0a202a0886a7b35" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "config_sentence_transformers.json: 0%| | 0.00/116 [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "3ca0a9887a6c4bbfb2aec2faeb74e376" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "data_config.json: 0%| | 0.00/39.3k [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "ddb1d592f1f949c2bc3663eaa09a82e2" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "pytorch_model.bin: 0%| | 0.00/438M [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "a7b4da413e3f4c379242ba1d1df47c5a" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "sentence_bert_config.json: 0%| | 0.00/53.0 [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "62793ff863234cc2804c568bb358a543" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "special_tokens_map.json: 0%| | 0.00/239 [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "97032c42809042f09283bff98cfd60c0" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "tokenizer.json: 0%| | 0.00/466k [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "9edfc3996ea843ca8b3a2e67c3be2203" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "tokenizer_config.json: 0%| | 0.00/363 [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "400defce45e64c45afec9ce7a6418d29" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "train_script.py: 0%| | 0.00/13.1k [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "e1f067311f14426a955633e9c98ed804" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "vocab.txt: 0%| | 0.00/232k [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "4615ca319aac4829ac47809797c41203" + } + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "modules.json: 0%| | 0.00/349 [00:00, ?B/s]" + ], + "application/vnd.jupyter.widget-view+json": { + "version_major": 2, + "version_minor": 0, + "model_id": "d10172c7a0fe40aa8ca4f6339c427876" + } + }, + "metadata": {} + } + ] + }, + { + "cell_type": "code", + "source": [ + "# Previously, By fetching Hugging Face Token, We use a HuggingFace LLM powered to fetch response to the qa_chain\n", + "\n", + "from langchain import HuggingFaceHub\n", + "\n", + "llm=HuggingFaceHub(repo_id=\"HuggingFaceH4/zephyr-7b-alpha\", model_kwargs={\"temperature\":0.2, \"max_length\":256})\n", + "chain = load_qa_chain(llm, chain_type=\"stuff\")\n" + ], + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "LZDSmJPaRWc2", + "outputId": "1bd62796-0a67-4598-dd9c-0e907b834e6d" + }, + "execution_count": null, + "outputs": [ + { + "output_type": "stream", + "name": "stderr", + "text": [ + "/usr/local/lib/python3.10/dist-packages/huggingface_hub/utils/_deprecation.py:127: FutureWarning: '__init__' (from 'huggingface_hub.inference_api') is deprecated and will be removed from version '1.0'. `InferenceApi` client is deprecated in favor of the more feature-complete `InferenceClient`. Check out this guide to learn how to convert your script to use it: https://huggingface.co/docs/huggingface_hub/guides/inference#legacy-inferenceapi-client.\n", + " warnings.warn(warning_message, FutureWarning)\n" + ] + } + ] + }, + { + "cell_type": "code", + "source": [ + "# I provide a query, and based on the query and PDF's vector values, similarities are matched to fetch a response\n", + "\n", + "query = \"I am a Man, looking for white shirt in summer. Give me type, brand and colors. Suggest one more. Do not say anything other than that\"\n", + "docs = db.similarity_search(query)\n", + "\n", + "chain.run(input_documents=docs, question=query)" + ], + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 35 + }, + "id": "whVgqMkHXuIf", + "outputId": "85627515-1486-4b02-9d15-801dc145744c" + }, + "execution_count": null, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "'\\nType: Short-Sleeve Linen Tee\\nBrand: Uniqlo\\nColors: White\\n\\nAnother suggestion:\\nType: Linen Button-Down Shirt\\nBrand: J.Crew\\nColors: White, Light Blue, Striped Patterns.'" + ], + "application/vnd.google.colaboratory.intrinsic+json": { + "type": "string" + } + }, + "metadata": {}, + "execution_count": 21 + } + ] + }, + { + "cell_type": "code", + "source": [], + "metadata": { + "id": "zE3o4Ohzq6tq" + }, + "execution_count": null, + "outputs": [] + } + ] +} \ No newline at end of file diff --git a/recieve.py b/recieve.py new file mode 100644 index 00000000..790fe407 --- /dev/null +++ b/recieve.py @@ -0,0 +1,32 @@ +# Script B + +import socket +import sys +import json # Import the JSON module for serialization + +statement = sys.argv[1] +prompt2 = sys.argv[2] + + +def send_request(): + request = [statement, prompt2] + + client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + client.connect(('localhost', 8888)) + + # Serialize the list to a JSON string + request_json = json.dumps(request) + + # Send the request to the server + client.send(request_json.encode('utf-8')) + + # Receive the response from the server + response = client.recv(1024).decode('utf-8') + print(f"{response}") + + # Close the connection + client.close() + + +if __name__ == "__main__": + send_request() diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 00000000..08468ed9 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,455 @@ +about-time==4.2.1 +absl-py==2.0.0 +accelerate==0.23.0 +aiobotocore @ file:///C:/b/abs_74o47svlua/croot/aiobotocore_1680004300264/work +aiofiles @ file:///C:/b/abs_9ex6mi6b56/croot/aiofiles_1683773603390/work +aiohttp @ file:///C:/ci_311/aiohttp_1676432932774/work +aioitertools @ file:///tmp/build/80754af9/aioitertools_1607109665762/work +aiosignal @ file:///tmp/build/80754af9/aiosignal_1637843061372/work +aiosqlite @ file:///C:/b/abs_9djc_0pyi3/croot/aiosqlite_1683773915844/work +alabaster @ file:///home/ktietz/src/ci/alabaster_1611921544520/work +alive-progress==3.1.4 +altair==5.1.2 +anaconda-catalogs @ file:///C:/b/abs_8btyy0o8s8/croot/anaconda-catalogs_1685727315626/work +anaconda-client==1.11.3 +anaconda-navigator==2.4.2 +anaconda-project @ file:///C:/ci_311/anaconda-project_1676458365912/work +annotated-types==0.6.0 +anyio==3.7.1 +appdirs==1.4.4 +argon2-cffi @ file:///opt/conda/conda-bld/argon2-cffi_1645000214183/work +argon2-cffi-bindings @ file:///C:/ci_311/argon2-cffi-bindings_1676424443321/work +arrow @ file:///C:/ci_311/arrow_1678249767083/work +asgiref==3.7.2 +astroid @ file:///C:/ci_311/astroid_1678740610167/work +astropy @ file:///C:/ci_311_rebuilds/astropy_1678996071858/work +asttokens @ file:///opt/conda/conda-bld/asttokens_1646925590279/work +astunparse==1.6.3 +async-timeout @ file:///C:/ci_311/async-timeout_1676431518331/work +atomicwrites==1.4.0 +attrs @ file:///C:/ci_311/attrs_1676422272484/work +autograd==1.6.2 +Automat @ file:///tmp/build/80754af9/automat_1600298431173/work +autopep8 @ file:///opt/conda/conda-bld/autopep8_1650463822033/work +Babel @ file:///C:/ci_311/babel_1676427169844/work +backcall @ file:///home/ktietz/src/ci/backcall_1611930011877/work +backports.functools-lru-cache @ file:///tmp/build/80754af9/backports.functools_lru_cache_1618170165463/work +backports.tempfile @ file:///home/linux1/recipes/ci/backports.tempfile_1610991236607/work +backports.weakref==1.0.post1 +bcrypt @ file:///C:/ci_311/bcrypt_1676435170049/work +beautifulsoup4 @ file:///C:/b/abs_0agyz1wsr4/croot/beautifulsoup4-split_1681493048687/work +binaryornot @ file:///tmp/build/80754af9/binaryornot_1617751525010/work +black @ file:///C:/b/abs_620t6ndje8/croot/black_1680737261963/work +bleach @ file:///opt/conda/conda-bld/bleach_1641577558959/work +bokeh @ file:///C:/b/abs_d01xodyb9e/croot/bokeh_1684534031183/work +boltons @ file:///C:/ci_311/boltons_1677729932371/work +boto3 @ file:///C:/ci_311_rebuilds/boto3_1678997157581/work +botocore @ file:///C:/ci_311/botocore_1676431559339/work +Bottleneck @ file:///C:/ci_311/bottleneck_1676500016583/work +brotlipy==0.7.0 +cachetools==5.3.2 +certifi @ file:///C:/b/abs_4a0polqwty/croot/certifi_1683875377622/work/certifi +cffi @ file:///C:/ci_311/cffi_1676423759166/work +chardet @ file:///C:/ci_311/chardet_1676436134885/work +charset-normalizer @ file:///tmp/build/80754af9/charset-normalizer_1630003229654/work +click @ file:///C:/ci_311/click_1676433091657/work +cloudpickle @ file:///C:/b/abs_3796yxesic/croot/cloudpickle_1683040098851/work +clyent==1.2.2 +cma==3.2.2 +cmake==3.22.5 +colorama @ file:///C:/ci_311/colorama_1676422310965/work +colorcet @ file:///C:/ci_311/colorcet_1676440389947/work +coloredlogs==15.0.1 +comm @ file:///C:/ci_311/comm_1678376562840/work +conda @ file:///C:/b/abs_a1khk4epoo/croot/conda_1685025197412/work +conda-build @ file:///C:/b/abs_1f8uy1sady/croot/conda-build_1685026157582/work +conda-content-trust @ file:///C:/ci_311/conda-content-trust_1676467587370/work +conda-libmamba-solver @ file:///C:/b/abs_5a9xvt2a3k/croot/conda-libmamba-solver_1685032355900/work/src +conda-pack @ file:///tmp/build/80754af9/conda-pack_1611163042455/work +conda-package-handling @ file:///C:/b/abs_ce4_vcfd0y/croot/conda-package-handling_1685024800103/work +conda-repo-cli==1.0.41 +conda-token @ file:///Users/paulyim/miniconda3/envs/c3i/conda-bld/conda-token_1662660369760/work +conda-verify==3.4.2 +conda_index @ file:///C:/ci_311/conda-index_1678297406811/work +conda_package_streaming @ file:///C:/b/abs_88a7k_wmm1/croot/conda-package-streaming_1685019697115/work +config==0.5.1 +constantly==15.1.0 +contextlib2==21.6.0 +contourpy @ file:///C:/ci_311/contourpy_1676431756017/work +cookiecutter @ file:///opt/conda/conda-bld/cookiecutter_1649151442564/work +cryptography @ file:///C:/ci_311/cryptography_1679419210767/work +cssselect==1.1.0 +cycler @ file:///tmp/build/80754af9/cycler_1637851556182/work +Cython==3.0.6 +cytoolz @ file:///C:/ci_311/cytoolz_1676436342770/work +daal4py==2023.1.1 +dask @ file:///C:/b/abs_23lvfodys3/croot/dask-core_1686782960052/work +datasets==2.14.5 +datashader @ file:///C:/b/abs_d7hw5cd3cy/croot/datashader_1685542983224/work +datashape==0.5.4 +debugpy @ file:///C:/ci_311/debugpy_1676426137692/work +decorator @ file:///opt/conda/conda-bld/decorator_1643638310831/work +defusedxml @ file:///tmp/build/80754af9/defusedxml_1615228127516/work +Deprecated==1.2.14 +diff-match-patch @ file:///Users/ktietz/demo/mc3/conda-bld/diff-match-patch_1630511840874/work +dill==0.3.7 +distributed @ file:///C:/b/abs_7509xfv227/croot/distributed_1686866088894/work +Django==4.2.7 +dlib==19.24.1 +docstring-to-markdown @ file:///C:/ci_311/docstring-to-markdown_1677742566583/work +docutils @ file:///C:/ci_311/docutils_1676428078664/work +einops==0.7.0 +entrypoints @ file:///C:/ci_311/entrypoints_1676423328987/work +et-xmlfile==1.1.0 +executing @ file:///opt/conda/conda-bld/executing_1646925071911/work +fastapi==0.103.2 +fastjsonschema @ file:///C:/ci_311/python-fastjsonschema_1679500568724/work +ffmpy==0.3.1 +filelock @ file:///C:/ci_311/filelock_1676427284139/work +flake8 @ file:///C:/ci_311/flake8_1678376624746/work +Flask @ file:///C:/ci_311/flask_1676436667658/work +flatbuffers==23.5.26 +fonttools==4.25.0 +fqdn==1.5.1 +frozenlist @ file:///C:/ci_311/frozenlist_1676428131576/work +fsspec @ file:///C:/b/abs_07xig1rkra/croot/fsspec_1679418812895/work +future @ file:///C:/ci_311_rebuilds/future_1678998246262/work +gast==0.5.4 +gensim @ file:///C:/ci_311/gensim_1677743037820/work +glob2 @ file:///home/linux1/recipes/ci/glob2_1610991677669/work +google-auth==2.25.1 +google-auth-oauthlib==1.1.0 +google-pasta==0.2.0 +gradio==3.47.1 +gradio_client==0.6.0 +grapheme==0.6.0 +greenlet @ file:///C:/ci_311/greenlet_1676436788118/work +grpcio==1.59.3 +h11==0.14.0 +h5py @ file:///C:/ci_311/h5py_1676504676103/work +HeapDict @ file:///Users/ktietz/demo/mc3/conda-bld/heapdict_1630598515714/work +holoviews @ file:///C:/b/abs_e72ye14qkb/croot/holoviews_1686339359504/work +httpcore==0.18.0 +httpx==0.25.0 +huggingface-hub==0.17.3 +humanfriendly==10.0 +hvplot @ file:///C:/b/abs_2b13wifauw/croot/hvplot_1685998632349/work +hyperlink @ file:///tmp/build/80754af9/hyperlink_1610130746837/work +idna @ file:///C:/ci_311/idna_1676424932545/work +imagecodecs @ file:///C:/ci_311_rebuilds/imagecodecs_1678999255423/work +imageio @ file:///C:/ci_311/imageio_1678373794394/work +imagesize @ file:///C:/ci_311/imagesize_1676431905616/work +imbalanced-learn @ file:///C:/b/abs_275a0acaq2/croot/imbalanced-learn_1685025644593/work +importlib-metadata @ file:///C:/b/abs_20ndzb2j6v/croot/importlib-metadata_1678997085534/work +importlib-resources==6.1.0 +imutils==0.5.4 +incremental @ file:///tmp/build/80754af9/incremental_1636629750599/work +inflection==0.5.1 +iniconfig @ file:///home/linux1/recipes/ci/iniconfig_1610983019677/work +intake @ file:///C:/ci_311_rebuilds/intake_1678999914269/work +intervaltree @ file:///Users/ktietz/demo/mc3/conda-bld/intervaltree_1630511889664/work +ipykernel @ file:///C:/ci_311/ipykernel_1678734799670/work +ipython @ file:///C:/b/abs_d1yx5tjhli/croot/ipython_1680701887259/work +ipython-genutils @ file:///tmp/build/80754af9/ipython_genutils_1606773439826/work +ipywidgets @ file:///C:/b/abs_5awapknmz_/croot/ipywidgets_1679394824767/work +isoduration==20.11.0 +isort @ file:///tmp/build/80754af9/isort_1628603791788/work +itemadapter @ file:///tmp/build/80754af9/itemadapter_1626442940632/work +itemloaders @ file:///opt/conda/conda-bld/itemloaders_1646805235997/work +itsdangerous @ file:///tmp/build/80754af9/itsdangerous_1621432558163/work +jaraco.classes @ file:///tmp/build/80754af9/jaraco.classes_1620983179379/work +jedi @ file:///C:/ci_311/jedi_1679427407646/work +jellyfish @ file:///C:/ci_311/jellyfish_1676450868911/work +Jinja2 @ file:///C:/ci_311/jinja2_1676424968965/work +jinja2-time @ file:///opt/conda/conda-bld/jinja2-time_1649251842261/work +jmespath @ file:///Users/ktietz/demo/mc3/conda-bld/jmespath_1630583964805/work +joblib @ file:///C:/b/abs_1anqjntpan/croot/joblib_1685113317150/work +json5 @ file:///tmp/build/80754af9/json5_1624432770122/work +jsonpatch @ file:///tmp/build/80754af9/jsonpatch_1615747632069/work +jsonpointer==2.1 +jsonschema @ file:///C:/b/abs_d40z05b6r1/croot/jsonschema_1678983446576/work +jstyleson==0.0.2 +jupyter @ file:///C:/ci_311/jupyter_1678249952587/work +jupyter-console @ file:///C:/b/abs_82xaa6i2y4/croot/jupyter_console_1680000189372/work +jupyter-events @ file:///C:/b/abs_4cak_28ewz/croot/jupyter_events_1684268050893/work +jupyter-ydoc @ file:///C:/b/abs_e7m6nh5lao/croot/jupyter_ydoc_1683747253535/work +jupyter_client @ file:///C:/b/abs_059idvdagk/croot/jupyter_client_1680171872444/work +jupyter_core @ file:///C:/b/abs_9d0ttho3bs/croot/jupyter_core_1679906581955/work +jupyter_server @ file:///C:/b/abs_3eh8sm27tx/croot/jupyter_server_1686059851383/work +jupyter_server_fileid @ file:///C:/b/abs_f1yjnmiq_6/croot/jupyter_server_fileid_1684273602142/work +jupyter_server_terminals @ file:///C:/b/abs_ec0dq4b50j/croot/jupyter_server_terminals_1686870763512/work +jupyter_server_ydoc @ file:///C:/b/abs_8ai39bligw/croot/jupyter_server_ydoc_1686767445888/work +jupyterlab @ file:///C:/b/abs_c1msr8zz3y/croot/jupyterlab_1686179674844/work +jupyterlab-pygments @ file:///tmp/build/80754af9/jupyterlab_pygments_1601490720602/work +jupyterlab-widgets @ file:///C:/b/abs_38ad427jkz/croot/jupyterlab_widgets_1679055289211/work +jupyterlab_server @ file:///C:/b/abs_e0qqsihjvl/croot/jupyterlab_server_1680792526136/work +keras==2.15.0 +keyring @ file:///C:/b/abs_dbjc7g0dh2/croot/keyring_1678999228878/work +kiwisolver @ file:///C:/ci_311/kiwisolver_1676431979301/work +lazy-object-proxy @ file:///C:/ci_311/lazy-object-proxy_1676432050939/work +lazy_loader @ file:///C:/b/abs_c9jlw06oq1/croot/lazy_loader_1687266162676/work +libarchive-c @ file:///tmp/build/80754af9/python-libarchive-c_1617780486945/work +libclang==16.0.6 +libmambapy @ file:///C:/b/abs_1dshymu5qt/croot/mamba-split_1680096516212/work/libmambapy +linkify-it-py @ file:///C:/ci_311/linkify-it-py_1676474436187/work +llvmlite @ file:///C:/b/abs_a8i9keuf6p/croot/llvmlite_1683555140340/work +lmdb @ file:///C:/b/abs_556ronuvb2/croot/python-lmdb_1682522366268/work +locket @ file:///C:/ci_311/locket_1676428325082/work +lxml @ file:///C:/b/abs_c2bg6ck92l/croot/lxml_1679646459966/work +lz4 @ file:///C:/b/abs_064u6aszy3/croot/lz4_1686057967376/work +Markdown @ file:///C:/ci_311/markdown_1676437912393/work +markdown-it-py @ file:///C:/b/abs_a5bfngz6fu/croot/markdown-it-py_1684279915556/work +MarkupSafe @ file:///C:/ci_311/markupsafe_1676424152318/work +matplotlib @ file:///C:/b/abs_49b2acwxd4/croot/matplotlib-suite_1679593486357/work +matplotlib-inline @ file:///C:/ci_311/matplotlib-inline_1676425798036/work +mccabe @ file:///opt/conda/conda-bld/mccabe_1644221741721/work +mdit-py-plugins @ file:///C:/ci_311/mdit-py-plugins_1676481827414/work +mdurl @ file:///C:/ci_311/mdurl_1676442676678/work +mediapipe==0.10.8 +menuinst @ file:///C:/ci_311/menuinst_1678730372782/work +mistune @ file:///C:/ci_311/mistune_1676425149302/work +mkl-fft==1.3.6 +mkl-random @ file:///C:/Users/dev-admin/mkl/mkl_random_1682977971003/work +mkl-service==2.4.0 +ml-dtypes==0.2.0 +more-itertools @ file:///tmp/build/80754af9/more-itertools_1637733554872/work +mpmath==1.2.1 +msgpack @ file:///C:/ci_311/msgpack-python_1676427482892/work +multidict @ file:///C:/ci_311/multidict_1676428396308/work +multipledispatch @ file:///C:/ci_311/multipledispatch_1676442767760/work +multiprocess==0.70.15 +munkres==1.1.4 +mypy-extensions==0.4.3 +natsort==8.4.0 +navigator-updater==0.4.0 +nbclassic @ file:///C:/b/abs_c8_rs7b3zw/croot/nbclassic_1681756186106/work +nbclient @ file:///C:/ci_311/nbclient_1676425195918/work +nbconvert @ file:///C:/ci_311/nbconvert_1676425836196/work +nbformat @ file:///C:/ci_311/nbformat_1676424215945/work +nest-asyncio @ file:///C:/ci_311/nest-asyncio_1676423519896/work +networkx==2.8.2 +ninja==1.10.2.4 +nltk @ file:///opt/conda/conda-bld/nltk_1645628263994/work +nncf==2.6.0 +notebook @ file:///C:/b/abs_49d8mc_lpe/croot/notebook_1681756182078/work +notebook_shim @ file:///C:/ci_311/notebook-shim_1678144850856/work +numba @ file:///C:/b/abs_b3bxhjeez4/croot/numba_1684245497898/work +numexpr @ file:///C:/b/abs_afm0oewmmt/croot/numexpr_1683221839116/work +numpy @ file:///C:/Users/dev-admin/mkl/numpy_and_numpy_base_1682982345978/work +numpydoc @ file:///C:/ci_311/numpydoc_1676453412027/work +oauthlib==3.2.2 +object-detection==0.0.3 +onnx==1.14.1 +onnxruntime==1.16.1 +intel-extension-for-pytorch==2.1.0 +opencv-contrib-python==4.8.1.78 +opencv-python==4.8.1.78 +openpyxl==3.0.10 +openvino==2023.1.0 +openvino-telemetry==2023.1.1 +opt-einsum==3.3.0 +optimum==1.13.2 +optimum-intel @ git+https://github.com/huggingface/optimum-intel.git@f52d7c8801ce23299096bb7626b3ef8e226a887f +orjson==3.9.9 +packaging @ file:///C:/b/abs_ed_kb9w6g4/croot/packaging_1678965418855/work +pandas @ file:///C:/ci_311_rebuilds/pandas_1679004481142/work +pandocfilters @ file:///opt/conda/conda-bld/pandocfilters_1643405455980/work +panel @ file:///C:/b/abs_c2hb2y3wgb/croot/panel_1686058461687/work +param @ file:///C:/b/abs_f5xzp6ism6/croot/param_1684915326009/work +paramiko @ file:///opt/conda/conda-bld/paramiko_1640109032755/work +parsel @ file:///C:/ci_311/parsel_1676443327188/work +parso @ file:///opt/conda/conda-bld/parso_1641458642106/work +partd @ file:///opt/conda/conda-bld/partd_1647245470509/work +pathlib @ file:///Users/ktietz/demo/mc3/conda-bld/pathlib_1629713961906/work +pathspec @ file:///C:/ci_311/pathspec_1679427644142/work +patsy==0.5.3 +pep8==1.7.1 +pexpect @ file:///tmp/build/80754af9/pexpect_1605563209008/work +pickleshare @ file:///tmp/build/80754af9/pickleshare_1606932040724/work +Pillow==9.4.0 +pkginfo @ file:///C:/b/abs_d18srtr68x/croot/pkginfo_1679431192239/work +platformdirs @ file:///C:/ci_311/platformdirs_1676422658103/work +plotly @ file:///C:/ci_311/plotly_1676443558683/work +pluggy @ file:///C:/ci_311/pluggy_1676422178143/work +ply==3.11 +pooch @ file:///tmp/build/80754af9/pooch_1623324770023/work +poyo @ file:///tmp/build/80754af9/poyo_1617751526755/work +prometheus-client @ file:///C:/ci_311/prometheus_client_1679591942558/work +prompt-toolkit @ file:///C:/ci_311/prompt-toolkit_1676425940920/work +Protego @ file:///tmp/build/80754af9/protego_1598657180827/work +protobuf==3.20.3 +psutil @ file:///C:/ci_311_rebuilds/psutil_1679005906571/work +ptyprocess @ file:///tmp/build/80754af9/ptyprocess_1609355006118/work/dist/ptyprocess-0.7.0-py2.py3-none-any.whl +pure-eval @ file:///opt/conda/conda-bld/pure_eval_1646925070566/work +py-cpuinfo @ file:///Users/ktietz/demo/mc3/conda-bld/py-cpuinfo_1629480366017/work +pyarrow==11.0.0 +pyasn1 @ file:///Users/ktietz/demo/mc3/conda-bld/pyasn1_1629708007385/work +pyasn1-modules==0.2.8 +pycodestyle @ file:///C:/ci_311/pycodestyle_1678376707834/work +pycosat @ file:///C:/ci_311/pycosat_1676438455539/work +pycparser @ file:///tmp/build/80754af9/pycparser_1636541352034/work +pyct @ file:///C:/ci_311/pyct_1676438538057/work +pycurl==7.45.2 +pydantic==2.4.2 +pydantic_core==2.10.1 +PyDispatcher==2.0.5 +pydocstyle @ file:///C:/ci_311/pydocstyle_1678402028085/work +pydot==1.4.2 +pydub==0.25.1 +pyerfa @ file:///C:/ci_311/pyerfa_1676503994641/work +pyflakes @ file:///C:/ci_311/pyflakes_1678402101687/work +Pygments @ file:///C:/b/abs_fay9dpq4n_/croot/pygments_1684279990574/work +PyJWT @ file:///C:/ci_311/pyjwt_1676438890509/work +pylint @ file:///C:/ci_311/pylint_1678740302984/work +pylint-venv @ file:///C:/ci_311/pylint-venv_1678402170638/work +pyls-spyder==0.4.0 +pymoo==0.6.0.1 +PyNaCl @ file:///C:/ci_311/pynacl_1676445861112/work +pyodbc @ file:///C:/ci_311/pyodbc_1676489976744/work +pyOpenSSL @ file:///C:/b/abs_de215ipd18/croot/pyopenssl_1678965319166/work +pyparsing==2.4.7 +PyQt5==5.15.7 +PyQt5-sip @ file:///C:/ci_311/pyqt-split_1676428895938/work/pyqt_sip +PyQtWebEngine==5.15.4 +pyreadline3==3.4.1 +pyrsistent @ file:///C:/ci_311/pyrsistent_1676422695500/work +PySocks @ file:///C:/ci_311/pysocks_1676425991111/work +pytest @ file:///C:/b/abs_7di9kcrru2/croot/pytest_1684171622030/work +python-dateutil @ file:///tmp/build/80754af9/python-dateutil_1626374649649/work +python-json-logger @ file:///C:/b/abs_cblnsm6puj/croot/python-json-logger_1683824130469/work +python-lsp-black @ file:///C:/ci_311/python-lsp-black_1678721855627/work +python-lsp-jsonrpc==1.0.0 +python-lsp-server @ file:///C:/b/abs_catecj7fv1/croot/python-lsp-server_1681930405912/work +python-multipart==0.0.6 +python-slugify @ file:///tmp/build/80754af9/python-slugify_1620405669636/work +python-snappy @ file:///C:/ci_311/python-snappy_1676446060182/work +pytoolconfig @ file:///C:/ci_311/pytoolconfig_1678402262175/work +pytz @ file:///C:/ci_311/pytz_1676427070848/work +pyviz-comms @ file:///C:/b/abs_6cq38vhwa5/croot/pyviz_comms_1685030740344/work +PyWavelets @ file:///C:/ci_311/pywavelets_1676504105729/work +pywin32==305.1 +pywin32-ctypes @ file:///C:/ci_311/pywin32-ctypes_1676427747089/work +pywinpty @ file:///C:/ci_311/pywinpty_1677707791185/work/target/wheels/pywinpty-2.0.10-cp311-none-win_amd64.whl +PyYAML @ file:///C:/ci_311/pyyaml_1676432488822/work +pyzmq @ file:///C:/b/abs_655zk4a3s8/croot/pyzmq_1686601465034/work +QDarkStyle @ file:///tmp/build/80754af9/qdarkstyle_1617386714626/work +qstylizer @ file:///C:/ci_311/qstylizer_1678502012152/work/dist/qstylizer-0.2.2-py2.py3-none-any.whl +QtAwesome @ file:///C:/ci_311/qtawesome_1678402331535/work +qtconsole @ file:///C:/b/abs_eb4u9jg07y/croot/qtconsole_1681402843494/work +QtPy @ file:///C:/ci_311/qtpy_1676432558504/work +queuelib==1.5.0 +regex @ file:///C:/ci_311_rebuilds/regex_1679006156792/work +requests @ file:///C:/b/abs_41owkd5ymz/croot/requests_1682607524657/work +requests-file @ file:///Users/ktietz/demo/mc3/conda-bld/requests-file_1629455781986/work +requests-oauthlib==1.3.1 +requests-toolbelt @ file:///Users/ktietz/demo/mc3/conda-bld/requests-toolbelt_1629456163440/work +rfc3339-validator @ file:///C:/b/abs_ddfmseb_vm/croot/rfc3339-validator_1683077054906/work +rfc3986-validator @ file:///C:/b/abs_6e9azihr8o/croot/rfc3986-validator_1683059049737/work +rope @ file:///C:/ci_311/rope_1678402524346/work +rsa==4.9 +Rtree @ file:///C:/ci_311/rtree_1676455758391/work +ruamel-yaml-conda @ file:///C:/ci_311/ruamel_yaml_1676455799258/work +ruamel.yaml @ file:///C:/ci_311/ruamel.yaml_1676439214109/work +s3fs @ file:///C:/b/abs_9ctwhzh1il/croot/s3fs_1680018487962/work +s3transfer @ file:///C:/ci_311/s3transfer_1676434371175/work +sacremoses @ file:///tmp/build/80754af9/sacremoses_1633107328213/work +safetensors==0.4.0 +schedule==1.1.0 +scikit-image @ file:///C:/b/abs_2075zg1pia/croot/scikit-image_1682528361447/work +scikit-learn @ file:///C:/b/abs_38k7ridbgr/croot/scikit-learn_1684954723009/work +scikit-learn-intelex==20230426.121932 +scipy==1.10.1 +Scrapy @ file:///C:/ci_311/scrapy_1678502587780/work +seaborn @ file:///C:/ci_311/seaborn_1676446547861/work +semantic-version==2.10.0 +Send2Trash @ file:///tmp/build/80754af9/send2trash_1632406701022/work +sentencepiece==0.1.99 +service-identity @ file:///Users/ktietz/demo/mc3/conda-bld/service_identity_1629460757137/work +sip @ file:///C:/ci_311/sip_1676427825172/work +six @ file:///tmp/build/80754af9/six_1644875935023/work +smart-open @ file:///C:/ci_311/smart_open_1676439339434/work +sniffio @ file:///C:/ci_311/sniffio_1676425339093/work +snowballstemmer @ file:///tmp/build/80754af9/snowballstemmer_1637937080595/work +sortedcontainers @ file:///tmp/build/80754af9/sortedcontainers_1623949099177/work +sounddevice==0.4.6 +soupsieve @ file:///C:/b/abs_a989exj3q6/croot/soupsieve_1680518492466/work +Sphinx @ file:///C:/ci_311/sphinx_1676434546244/work +sphinxcontrib-applehelp @ file:///home/ktietz/src/ci/sphinxcontrib-applehelp_1611920841464/work +sphinxcontrib-devhelp @ file:///home/ktietz/src/ci/sphinxcontrib-devhelp_1611920923094/work +sphinxcontrib-htmlhelp @ file:///tmp/build/80754af9/sphinxcontrib-htmlhelp_1623945626792/work +sphinxcontrib-jsmath @ file:///home/ktietz/src/ci/sphinxcontrib-jsmath_1611920942228/work +sphinxcontrib-qthelp @ file:///home/ktietz/src/ci/sphinxcontrib-qthelp_1611921055322/work +sphinxcontrib-serializinghtml @ file:///tmp/build/80754af9/sphinxcontrib-serializinghtml_1624451540180/work +spyder @ file:///C:/b/abs_e99kl7d8t0/croot/spyder_1681934304813/work +spyder-kernels @ file:///C:/b/abs_862e4aayi8/croot/spyder-kernels_1681307297029/work +SQLAlchemy @ file:///C:/ci_311/sqlalchemy_1676446707912/work +sqlparse==0.4.4 +stack-data @ file:///opt/conda/conda-bld/stack_data_1646927590127/work +starlette==0.27.0 +statsmodels @ file:///C:/ci_311/statsmodels_1677728225600/work +sympy @ file:///C:/ci_311_rebuilds/sympy_1679009400182/work +tables @ file:///C:/b/abs_52tcd9b9dp/croot/pytables_1685123233455/work +tabulate @ file:///C:/ci_311/tabulate_1676494503192/work +TBB==0.2 +tblib @ file:///Users/ktietz/demo/mc3/conda-bld/tblib_1629402031467/work +tenacity @ file:///C:/b/abs_ddkoa9nju6/croot/tenacity_1682972298929/work +tensorboard==2.15.1 +tensorboard-data-server==0.7.2 +tensorflow==2.15.0 +tensorflow-estimator==2.15.0 +tensorflow-intel==2.15.0 +tensorflow-io-gcs-filesystem==0.31.0 +termcolor==2.4.0 +terminado @ file:///C:/ci_311/terminado_1678228513830/work +text-unidecode @ file:///Users/ktietz/demo/mc3/conda-bld/text-unidecode_1629401354553/work +textdistance @ file:///tmp/build/80754af9/textdistance_1612461398012/work +texttable==1.7.0 +threadpoolctl @ file:///Users/ktietz/demo/mc3/conda-bld/threadpoolctl_1629802263681/work +three-merge @ file:///tmp/build/80754af9/three-merge_1607553261110/work +tifffile @ file:///tmp/build/80754af9/tifffile_1627275862826/work +tinycss2 @ file:///C:/ci_311/tinycss2_1676425376744/work +tldextract @ file:///opt/conda/conda-bld/tldextract_1646638314385/work +tokenizers==0.14.1 +toml @ file:///tmp/build/80754af9/toml_1616166611790/work +tomli @ file:///C:/ci_311/tomli_1676422027483/work +tomlkit @ file:///C:/ci_311/tomlkit_1676425418821/work +toolz @ file:///C:/ci_311/toolz_1676431406517/work +torch==2.1.0+cpu +tornado @ file:///C:/ci_311/tornado_1676423689414/work +tqdm @ file:///C:/b/abs_f76j9hg7pv/croot/tqdm_1679561871187/work +traitlets @ file:///C:/ci_311/traitlets_1676423290727/work +transformers==4.34.0 +Twisted @ file:///C:/b/abs_f1pc_rieoy/croot/twisted_1683796899561/work +twisted-iocpsupport @ file:///C:/ci_311/twisted-iocpsupport_1676447612160/work +typing_extensions @ file:///C:/b/abs_5em9ekwz24/croot/typing_extensions_1686602003259/work +tzdata==2023.3 +uc-micro-py @ file:///C:/ci_311/uc-micro-py_1676457695423/work +ujson @ file:///C:/ci_311/ujson_1676434714224/work +Unidecode @ file:///tmp/build/80754af9/unidecode_1614712377438/work +uri-template==1.3.0 +urllib3 @ file:///C:/b/abs_889_loyqv4/croot/urllib3_1686163174463/work +uvicorn==0.23.2 +w3lib @ file:///Users/ktietz/demo/mc3/conda-bld/w3lib_1629359764703/work +watchdog @ file:///C:/ci_311/watchdog_1676457923624/work +wcwidth @ file:///Users/ktietz/demo/mc3/conda-bld/wcwidth_1629357192024/work +webcolors==1.13 +webencodings==0.5.1 +websocket-client @ file:///C:/ci_311/websocket-client_1676426063281/work +websockets==11.0.3 +Werkzeug @ file:///C:/b/abs_8578rs2ra_/croot/werkzeug_1679489759009/work +whatthepatch @ file:///C:/ci_311/whatthepatch_1678402578113/work +widgetsnbextension @ file:///C:/b/abs_882k4_4kdf/croot/widgetsnbextension_1679313880295/work +win-inet-pton @ file:///C:/ci_311/win_inet_pton_1676425458225/work +wrapt @ file:///C:/ci_311/wrapt_1676432805090/work +xarray @ file:///C:/ci_311/xarray_1676447809111/work +xlwings @ file:///C:/ci_311_rebuilds/xlwings_1679013429160/work +xxhash==3.4.1 +xyzservices @ file:///C:/ci_311/xyzservices_1676434829315/work +y-py @ file:///C:/b/abs_b7f5go6r0j/croot/y-py_1683662173571/work +yapf @ file:///tmp/build/80754af9/yapf_1615749224965/work +yarl @ file:///C:/ci_311/yarl_1676432870023/work +ypy-websocket @ file:///C:/b/abs_4e65ywlnv8/croot/ypy-websocket_1684172103529/work +zict @ file:///C:/b/abs_fc7elavmem/croot/zict_1682698759288/work +zipp @ file:///C:/ci_311/zipp_1676426100491/work +zope.interface @ file:///C:/ci_311/zope.interface_1676439868776/work +zstandard==0.19.0 diff --git a/salesprediction.py b/salesprediction.py new file mode 100644 index 00000000..c47138ee --- /dev/null +++ b/salesprediction.py @@ -0,0 +1,97 @@ +import modin.pandas as pd +from sklearn.preprocessing import StandardScaler, LabelEncoder +from sklearn.metrics import accuracy_score +from sklearn.model_selection import train_test_split +from sklearn.ensemble import RandomForestClassifier +import pickle + +# Load the dataset as an example +df = pd.read_excel('encoded_sample.xlsx') + +X = df.iloc[:, :-1] +y = df.purchase_decision + +# Scale numerical features using StandardScaler +scaler = StandardScaler() +X = scaler.fit_transform(X) + +X_train, X_test, y_train, y_test = train_test_split( + X, y, test_size=0.2, random_state=42) + +# Create a Random Forest Classifier using Intel optimized scikit-learn +clf = RandomForestClassifier(n_estimators=100) +# Fit the model on the training data +clf.fit(X_train, y_train) +# Make predictions on the scaled test data +y_pred = clf.predict(X_test) + +# Decode the predictions back to original labels +label_encoder = LabelEncoder() +label_encoder.fit(y) +y_pred_decoded = label_encoder.inverse_transform(y_pred) + +# Evaluate the model +accuracy = accuracy_score(y_test, y_pred_decoded) +print(f"Accuracy: {accuracy}") + +# Save the model to disk +filename = 'finalized_model.sav' +pickle.dump(clf, open(filename, 'wb')) + +# Load the model and make predictions +loaded_model = pickle.load(open(filename, 'rb')) +result = loaded_model.predict(X_test) +accuracy = accuracy_score(y_test, result) +print(f"Accuracy: {accuracy}") + + + + + + + + +# from sklearn.preprocessing import StandardScaler, LabelEncoder +# from sklearn.metrics import accuracy_score +# from sklearn.model_selection import train_test_split +# from sklearn.ensemble import RandomForestClassifier +# import pickle +# import pandas as pd +# from sklearnex import patch_sklearn +# patch_sklearn() + +# # Load the dataset as an example +# df = pd.read_excel('encoded_sample.xlsx') +# X = df.iloc[:, :-1] +# y = df.purchase_decision +# # Scale numerical features using StandardScaler +# scaler = StandardScaler() +# X = scaler.fit_transform(X) +# # y = scaler.transform(y) + + +# X_train, X_test, y_train, y_test = train_test_split( +# X, y, test_size=0.2, random_state=42) + + +# # Create a Random Forest Classifier using Intel optimized scikit-learn +# clf = RandomForestClassifier(n_estimators=100) +# # Fit the model on the training data +# clf.fit(X_train, y_train) +# # Make predictions on the scaled test data +# y_pred = clf.predict(X_test) + +# # Decode the predictions back to original labels +# y_pred_decoded = label_encoder.inverse_transform(y_pred) +# # Evaluate the model +# accuracy = accuracy_score(y_test, y_pred_decoded) +# print(f"Accuracy: {accuracy}") + +# # save the model to disk +# filename = 'finalized_model.sav' +# pickle.dump(clf, open(filename, 'wb')) + +# loaded_model = pickle.load(open(filename, 'rb')) +# result = loaded_model.predict(X_test) +# accuracy = accuracy_score(y_test, y_pred_decoded) +# print(f"Accuracy: {accuracy}") diff --git a/serv.py b/serv.py new file mode 100644 index 00000000..47dcb3d4 --- /dev/null +++ b/serv.py @@ -0,0 +1,77 @@ +# Script A + +import socket +import threading +from transformers import AutoModelForCausalLM, AutoTokenizer +import sys + +def handle_client(client_socket, data_queue): + request = client_socket.recv(1024).decode('utf-8') + print(f"Received request: {request}") + + # Process the request (You can replace this with your actual logic) + response = "ok" + device = "cpu" + + + def find_nth_occurrence(text, target, n): + count = 0 + index = -1 + + while count < n: + index = text.find(target, index + 1) + + if index == -1: + break # Target not found + + count += 1 + + return index + + + target_string = "[/INST]" + nth_occurrence = 2 + + + messages = [ + {"role": "user", "content": "I need some assistance in IT"}, + {"role": "assistant", "content": request[0]}, + {"role": "user", "content": request[1]} + + ] + encodeds = tokenizer.apply_chat_template(messages, return_tensors="pt") + # model.save_pretrained() + model_inputs = encodeds.to(device) + model.to(device) + generated_ids = model.generate( + model_inputs, max_new_tokens=1000, do_sample=True) + decoded = tokenizer.batch_decode(generated_ids) + result = find_nth_occurrence(decoded[0], target_string, nth_occurrence) + print(decoded[0][result+7:]) + + # Send the response back to the client + client_socket.send(response.encode('utf-8')) + + # Close the connection + client_socket.close() + + +def start_server(data_queue): + server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + server.bind(('localhost', 8888)) + server.listen(5) + tokenizer = AutoTokenizer.from_pretrained("mistralai/Mistral-7B-Instruct-v0.1") + model = AutoModelForCausalLM.from_pretrained("mistralai/Mistral-7B-Instruct-v0.1") + print("Server listening on port 8888...") + + while True: + client, addr = server.accept() + print(f"Accepted connection from {addr[0]}:{addr[1]}") + client_handler = threading.Thread( + target=handle_client, args=(client, data_queue)) + client_handler.start() + + +if __name__ == "__main__": + data_queue = [] + start_server(data_queue) From fd33ef1a156e4a622817edf20e2770dd8305e1a9 Mon Sep 17 00:00:00 2001 From: no-one-really <58998511+no-one-really@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:44:28 +0530 Subject: [PATCH 06/13] Add files via upload --- Quantumcoders/__init__.py | 0 Quantumcoders/admin.py | 3 + Quantumcoders/apps.py | 6 ++ Quantumcoders/asgi.py | 16 +++++ Quantumcoders/db.sqlite3 | 0 Quantumcoders/manage.py | 22 +++++++ Quantumcoders/models.py | 3 + Quantumcoders/settings.py | 126 ++++++++++++++++++++++++++++++++++++++ Quantumcoders/tests.py | 3 + Quantumcoders/urls.py | 10 +++ Quantumcoders/views.py | 43 +++++++++++++ Quantumcoders/wsgi.py | 16 +++++ 12 files changed, 248 insertions(+) create mode 100644 Quantumcoders/__init__.py create mode 100644 Quantumcoders/admin.py create mode 100644 Quantumcoders/apps.py create mode 100644 Quantumcoders/asgi.py create mode 100644 Quantumcoders/db.sqlite3 create mode 100644 Quantumcoders/manage.py create mode 100644 Quantumcoders/models.py create mode 100644 Quantumcoders/settings.py create mode 100644 Quantumcoders/tests.py create mode 100644 Quantumcoders/urls.py create mode 100644 Quantumcoders/views.py create mode 100644 Quantumcoders/wsgi.py diff --git a/Quantumcoders/__init__.py b/Quantumcoders/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/Quantumcoders/admin.py b/Quantumcoders/admin.py new file mode 100644 index 00000000..ea5d68b7 --- /dev/null +++ b/Quantumcoders/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/Quantumcoders/apps.py b/Quantumcoders/apps.py new file mode 100644 index 00000000..446b8169 --- /dev/null +++ b/Quantumcoders/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class ShopConfig(AppConfig): + default_auto_field = "django.db.models.BigAutoField" + name = "shop" diff --git a/Quantumcoders/asgi.py b/Quantumcoders/asgi.py new file mode 100644 index 00000000..d0a93e3b --- /dev/null +++ b/Quantumcoders/asgi.py @@ -0,0 +1,16 @@ +""" +ASGI config for mysite project. + +It exposes the ASGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/4.2/howto/deployment/asgi/ +""" + +import os + +from django.core.asgi import get_asgi_application + +os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") + +application = get_asgi_application() diff --git a/Quantumcoders/db.sqlite3 b/Quantumcoders/db.sqlite3 new file mode 100644 index 00000000..e69de29b diff --git a/Quantumcoders/manage.py b/Quantumcoders/manage.py new file mode 100644 index 00000000..71efd103 --- /dev/null +++ b/Quantumcoders/manage.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python +"""Django's command-line utility for administrative tasks.""" +import os +import sys + + +def main(): + """Run administrative tasks.""" + os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") + try: + from django.core.management import execute_from_command_line + except ImportError as exc: + raise ImportError( + "Couldn't import Django. Are you sure it's installed and " + "available on your PYTHONPATH environment variable? Did you " + "forget to activate a virtual environment?" + ) from exc + execute_from_command_line(sys.argv) + + +if __name__ == "__main__": + main() diff --git a/Quantumcoders/models.py b/Quantumcoders/models.py new file mode 100644 index 00000000..fd18c6ea --- /dev/null +++ b/Quantumcoders/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/Quantumcoders/settings.py b/Quantumcoders/settings.py new file mode 100644 index 00000000..a4fab38d --- /dev/null +++ b/Quantumcoders/settings.py @@ -0,0 +1,126 @@ +""" +Django settings for mysite project. + +Generated by 'django-admin startproject' using Django 4.2.7. + +For more information on this file, see +https://docs.djangoproject.com/en/4.2/topics/settings/ + +For the full list of settings and their values, see +https://docs.djangoproject.com/en/4.2/ref/settings/ +""" + +from pathlib import Path +import os + +# Build paths inside the project like this: BASE_DIR / 'subdir'. +BASE_DIR = Path(__file__).resolve().parent.parent + + +# Quick-start development settings - unsuitable for production +# See https://docs.djangoproject.com/en/4.2/howto/deployment/checklist/ + +# SECURITY WARNING: keep the secret key used in production secret! +SECRET_KEY = "django-insecure-4z=&32ebvzt6&%&%#fx_%g)n-@@qj)strt-m^!vnr39!bzv^yt" + +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = True + +ALLOWED_HOSTS = [] + + +# Application definition + +INSTALLED_APPS = [ + "django.contrib.admin", + "django.contrib.auth", + "django.contrib.contenttypes", + "django.contrib.sessions", + "django.contrib.messages", + "django.contrib.staticfiles", +] + +MIDDLEWARE = [ + "django.middleware.security.SecurityMiddleware", + "django.contrib.sessions.middleware.SessionMiddleware", + "django.middleware.common.CommonMiddleware", + "django.middleware.csrf.CsrfViewMiddleware", + "django.contrib.auth.middleware.AuthenticationMiddleware", + "django.contrib.messages.middleware.MessageMiddleware", + "django.middleware.clickjacking.XFrameOptionsMiddleware", +] + +ROOT_URLCONF = "mysite.urls" + +TEMPLATES = [ + { + "BACKEND": "django.template.backends.django.DjangoTemplates", + "DIRS": [os.path.join(BASE_DIR,'templates')], + "APP_DIRS": True, + "OPTIONS": { + "context_processors": [ + "django.template.context_processors.debug", + "django.template.context_processors.request", + "django.contrib.auth.context_processors.auth", + "django.contrib.messages.context_processors.messages", + ], + }, + }, +] + +WSGI_APPLICATION = "mysite.wsgi.application" + + +# Database +# https://docs.djangoproject.com/en/4.2/ref/settings/#databases + +DATABASES = { + "default": { + "ENGINE": "django.db.backends.sqlite3", + "NAME": BASE_DIR / "db.sqlite3", + } +} + + +# Password validation +# https://docs.djangoproject.com/en/4.2/ref/settings/#auth-password-validators + +AUTH_PASSWORD_VALIDATORS = [ + { + "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator", + }, + { + "NAME": "django.contrib.auth.password_validation.MinimumLengthValidator", + }, + { + "NAME": "django.contrib.auth.password_validation.CommonPasswordValidator", + }, + { + "NAME": "django.contrib.auth.password_validation.NumericPasswordValidator", + }, +] + + +# Internationalization +# https://docs.djangoproject.com/en/4.2/topics/i18n/ + +LANGUAGE_CODE = "en-us" + +TIME_ZONE = "UTC" + +USE_I18N = True + +USE_TZ = True + + +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/4.2/howto/static-files/ + +STATIC_URL = "static/" +STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')] +STATIC_ROOT = os.path.join(BASE_DIR,"assets") + +# Default primary key field type +# https://docs.djangoproject.com/en/4.2/ref/settings/#default-auto-field + +DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField" diff --git a/Quantumcoders/tests.py b/Quantumcoders/tests.py new file mode 100644 index 00000000..de8bdc00 --- /dev/null +++ b/Quantumcoders/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/Quantumcoders/urls.py b/Quantumcoders/urls.py new file mode 100644 index 00000000..93c072cc --- /dev/null +++ b/Quantumcoders/urls.py @@ -0,0 +1,10 @@ +from django.urls import path + +from . import views + +urlpatterns =[ +path("", views.home, name="home"), +path("casa", views.casa, name="casa"), +path("cart", views.cart, name="cart"), +path("test12", views.test12, name="test12"), +] diff --git a/Quantumcoders/views.py b/Quantumcoders/views.py new file mode 100644 index 00000000..539ffccf --- /dev/null +++ b/Quantumcoders/views.py @@ -0,0 +1,43 @@ +from django.shortcuts import render +from django.http import HttpResponse + +shplist=["T-shirt Contrast Pocket","Basic Flowing Scarf"] +rcmdlist=["black shoe","Basic Flowing Scarf"] + +itemDescription={"T-shirt Contrast Pocket":['$30','static/img/shopping-cart/cart-1.jpg'],"Basic Flowing Scarf":["$47.00","static/img/shopping-cart/cart-3.jpg"], +"black shoe":["$32.50","static/img/shopping-cart/cart-2.jpg"]} +fullDetail=[] +for it in shplist: + currlst=[] + currlst.append(it) + for jk in itemDescription[it]: + currlst.append(jk) + fullDetail.append(currlst) +rcdflist=[] +for it in rcmdlist: + currlst=[] + currlst.append(it) + for jk in itemDescription[it]: + currlst.append(jk) + rcdflist.append(currlst) + +# Create your views here. +def home(request): + return render(request,'index.html') + +def casa(request): + return render(request,'tgg.html') + +def cart(request): + return render(request,'shopping-cart.html',{"lst":fullDetail,"rlst":rcdflist}) + + + + + +# @register.filter +# def get_index(lst, i): +# return lst[i] + +def test12(request): + return render(request,"test12.html",{"lst":shplist,"rlst":rcdflist}) diff --git a/Quantumcoders/wsgi.py b/Quantumcoders/wsgi.py new file mode 100644 index 00000000..78134f21 --- /dev/null +++ b/Quantumcoders/wsgi.py @@ -0,0 +1,16 @@ +""" +WSGI config for mysite project. + +It exposes the WSGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/4.2/howto/deployment/wsgi/ +""" + +import os + +from django.core.wsgi import get_wsgi_application + +os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") + +application = get_wsgi_application() From 2941f181823df63b1ed93f6d80e72abd5d2bb2b7 Mon Sep 17 00:00:00 2001 From: no-one-really <58998511+no-one-really@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:46:17 +0530 Subject: [PATCH 07/13] Add files via upload --- __init__.py | 0 admin.py | 3 + apps.py | 6 + home.html | 1 + index.html | 1889 ++++++++++++++++++++++++++++++++++++++++++++ models.py | 3 + shopping-cart.html | 291 +++++++ test12.html | 48 ++ tests.py | 3 + tgg.html | 66 ++ urls.py | 10 + views.py | 43 + 12 files changed, 2363 insertions(+) create mode 100644 __init__.py create mode 100644 admin.py create mode 100644 apps.py create mode 100644 home.html create mode 100644 index.html create mode 100644 models.py create mode 100644 shopping-cart.html create mode 100644 test12.html create mode 100644 tests.py create mode 100644 tgg.html create mode 100644 urls.py create mode 100644 views.py diff --git a/__init__.py b/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/admin.py b/admin.py new file mode 100644 index 00000000..ea5d68b7 --- /dev/null +++ b/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/apps.py b/apps.py new file mode 100644 index 00000000..446b8169 --- /dev/null +++ b/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class ShopConfig(AppConfig): + default_auto_field = "django.db.models.BigAutoField" + name = "shop" diff --git a/home.html b/home.html new file mode 100644 index 00000000..3b2634d5 --- /dev/null +++ b/home.html @@ -0,0 +1 @@ +
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Dignissim massa diam elementum.
+ +
+
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Dictumst amet, metus, sit massa posuere maecenas. At tellus ut nunc amet vel egestas.
+++It's true, I don't like the whole cutoff-shorts-and-T-shirt look, but I think you can look fantastic in casual clothes.+ +
+
+
+
+
+ Our official Instagram account @GenAI or #GenAI_clothing +
+
+
+
+
+
+
+
+
+
+
+
+
+ | Product | +Quantity | +Total | ++ |
|---|---|---|---|
|
+
+
+
+
+ {{i.0}}+{{i.1}}+ |
+
+
+
+
+
+
+ |
+ $ 30.00 | ++ |
| Recommendation | ++ | + | + |
|---|---|---|---|
|
+
+
+
+
+ {{i.0}}+{{i.1}}+ |
+
+
+
+
+ |
+ $ 32.50 | ++ |
+ 9$xymJ2`g2G-_9jGn>qO#IBkAe<<_pEc^_HRs$7M-WB(01_q#DkUbKJEkiqW@fkp zuR4Angy9OWPia!c_D9)I`iRn35NkN989>igR1A8IPk^^Xf>u>fNs6JiV|tFw$)g2- zr^cEphoNE9DQx?DFP zJZ+i<_WU!7DuVM^k%HajRW36joBp1JCzcAa58;vz`O|nC6B?K#SOnJM?LiLXP^hV4 z777Dcy`dz|<1Bg-l=KL9z;x`kWD?zoSuEpfEMAl5-ndbKn8 ?tKS*1!b~Nk_CG1S2{T zZiuB d|Lzr ?#I*GbsQYY9dN0;a;)(glll8zG??h91;Iag)&8l#%RF$}c}eVd@cB2hiE! zzPQ!h{-h*-^u%*2(^sgDF%@ZKy2r+SW0oc#Fy6$Z)lK|Nd(HD>Izu*=>OGLYsBC2J z*2z{!k>1LB+V<2;l4fPO_!|tGJrR|)S0fRXRZngLe8NQZ9Rn;P$eydu(-#9s_D8fn zDnL+H0VSx5_zzH0p1`D57SaA?E^W?dJserWDtAq;HpfPfMvs?94zVYdqOkoZ_cL4! z!|nOY*Tk!#Lj0Wb?Z^DXJ*HWOX0Ha=*ToQg{gdrJ0Xw+JrD#u1Dw-~cg_}=*nZ)lf zN1R^S?d2nGY5FjW|7{X(&gPbX2WGZPLe`&zP< 4UUYZk3mPNyAoV z j-8ITfm2PA;vpIb|uE^t{ @) zgh)wwPNMDL-h18pS&~nR4;#w$WE+$q>|iDz +?y6vLA5Xy%xk=k|Z3I=c zSJI>GGSDNyO2voXGWFR#S6Z~PMwRp)H!LEyaj_fL%Xp}q1O!rKKjQV*VN^T{LeC(^ zHjv0}v}qjAd<|g8Du?vmvuuTRzj{)#Nd_{+sMv9ubjd&S}+0j|Q)ENuae;b1kI| z714`1SFXOg6060|7%F{5>tYhjxN)YuuG}$!HdF-vxHaYbVC^y9Gxee-@C%FvRsOL# z!(E01ipe5vt$)~ PRty^fn}PL6jCphxxg zbSbEGEUkoep`$a9I(hpN?huJYKU *#lov_R#Xi1@LNl0O>Se{8Krzt@g~hwT?3>mEk9kn?~S$W0YU zJvfun9|$3?L?+gVr{fW+lo3(3SUO|#eqAlAd0_$c!V2qN2}r~f>d*CoDY`X~2UPxi z5@S&OlgK*sSF{t<5HEMAOdxSk3-D&qPpnYXfgm!gLmQnxpy6ey4@L&5qVQN_uGS9J z>&O>aF}7rw3;gp|Pb?Wo(xN2r@)sadk&v%#Oz$qGhGUmB0TR0qPq6a|$pg<)N{ZhtAS%i zGrBt8QtB{%_1?9$TPrK?cCDW*K_rH 5*cgmwv}B%<0PHZ0&>7UqIvE1P{1_A7ZW z-+@%7GsBEWr6mm@WEH!hPzSR~z{~{#Te0~XJosSQj5GD+I3yiLTr!bfzCEvj#zI_p ztxC|12G%%aia5>$^%Fgk-bpoDQTz%STvZU~z)R{VQ%BkIbkTZ740s{*Fi2hG5N ZU^e&FjgA)_w2-r`ogUs;*Nf%F_d3x9>qadN&BK; z*O--qpe2-uW)4LiQB0m`Vd^*1lXk%kX?8^sb}c_Qi=%~`{kJkY7iX{d^PEkrbnY%t z^^CKq1RQXgX*aw;cYp(di(MIqS0% ZVq&%sN(|v6kAfn>Bf8 zb$MWS ~9Gaw>(;I4z5QAom{JMe2~oN=>;(EDvgCxGBu5mKJ>_?;;+( z&^VCT;=kmRUd=DadAuL8r*a94U0&3CJ<9n`wQf(nl+`XGlkzowj-{y3dbV{-rU0@% zvQ$m2mO!u_nlt4b(VE`t^xjc*xN>iagI5Ga^y *pnr5q4|1m^~i5 zs~RRl-|rIQ%a|kE-%`E?3|1v_jP=X8)Jb(eqM5~KF-oGU%H4FWC_ywPCO>f(^M@xK zF|eG+2r%j1ucY6--uDlJP;kzGrfaQj$&;%=yx uHafzplv zd0&{v #@O(B-d?1DT4}| zS`3^QCrfC_y7N bp zJ3sz;f7y+6`NtuVjStFI=DlxWd@z#B?dgd5!Bp<4SuD5KjYB`w8RDWTp{O^rPlAh@ zhJgfVoO4#7{E( 5qOlKUdBrRL@a)|cvV>LylCp11T9FxHz<)(}B0 z5a+?851|}l4_YcA@qV_oGPG#HI^ncN>1FDUj9gB#t}d;Fj{`Qou{6u+bJ*(nq_IwA zero2>1r4-hWoj5CUJK{1TlNFq1t~uyYR6sj%RloG7z?_^fS`<6q?>rcI`bXc_2Vt0 zWe-CiKaRl1m^Y(m&VA``wQ2`(;=8c?8D)G#S7C#?U1FviU$f1hprq1RN~eZ6{*)TY zr#kL_H;&;N2Go4vvq?)T48RG>Ll(J2wp~7DBa@G?8%loULtT|otC6a-K6!{Q(g+qf zI{G&y{)QN|bo`FU|4)eV2R!|MK#U;Q;@=SC7n9>BGRHbPlgh)Va|{lg8^%eogF`O` z6ycr41-oyd8M>7`7F7P7qJLlv>)#k-9`50k${6enx#R<5aASg@2?Z4InO>}I_(MRT z-MH)|^+8lfd)Nc2G!rW;XfD~XlmsX3ZW Z!W6pS_j-Iol{DgEh++)=wgGY 28{j>h@N6$YK&;Kjujrkvg{#(YI?IQ-! z(1&*k{^ cjM|z`F-VLeN3@bt?3?2Zyx3JV(Dh(O!Vb_i)4@BOuOY$ed%Q7Os&a=6`Y`y z=mfdxsahxmH5!VKQ9a}w0>!KpbJgK!RwhgWUmm(g2L~SlfW=XnK>Pj_GZfIl$9_{% zaS`VKu~cP0qAJ?|F{A&MX7KqkAp;_WI C^o5S(%w~;UvhwVzxO^c+YZyi-;7*HIS3Wm*lye~EbwD6o=S!kl z+$nM(kJH8}ibvo^ag6rP$CTyZ-1OS=<8m4n5lTvdk!NL?L6P`n `imZ%FT))^Gq7^@%nY3@D4Im6n3MZ#w{jBC|wwWIUr*ZFXJT@7);-!Eo8M%#b zvu V$#R_O(spHV{N?mlE(Z>A>Qw~LR5ra?NOGT-Q%XLLTSQSsEPD3QN)k~*r$94G` zk3vpTjZ`o?$M5>{UT60D^M!Y+WG_-Qg9hCby!e6J%_J1w805MPlury4aY96evQR=W zeWsHd6=fa`Sn4hadA=b+JYz(XSwRA&VYG$+<+C)Au6PJkU(`X6w-7j=bm4mcBv()c zkHb1>d2 1r$Njn3nT+JHgCOT|k_z0beF4Pd)={V{!4GBFg z_F7NqyI~5t3|yf(9zBgsG1^=WC8@vqjcitF4|T9gji*AH`Tf2z?OmX7++Y=I=LG02 zLoCy#U10$)F0Pd5*#!^e`Z2lP*7aXY^j|x-V&GfzQbd=cqK95+iu%Lk5tu_j+%PI{ zxH&*a D9kRGa6|EwfeX^V(rd~(d@UO_%f?+L-FL0xyD zbdIb^tWct @q@r=lKfZfltwsM^Jf)1415+J+GbSIr7kffJLyZ z<{^?`xh!*!c$ci_My(_fe#YU!gNbQ8RIrm$UVO??_RQgIU@TY7ZO`^gQ`6Fvx?aaq zZdj?~LFQts9hPXM*QIDyBwp|r@%>ry6&I79+7{w*(Fo7Ep|{#smA=jnu<7{}o~8Pz z)F8ntl~-SaMcTPxb%g2R7X5wsd+t+ra(yTAHU-mqX)t&J@NDf6i1~CQ=bnl> zAxC JdcR^PSaM?gggt?Fku_N-%{{DFPGQwE& zjqk)#31R&!Gh6wN_l+lF46P;%tw$qc;TSUQA~SZZ%c}P!=BusuEBkA1r#jD2Y( zX*P!>i!y;zftl`Tb_ag81i-8+UfKm%*T%2Ul%#rac^<1#6qz#k^JjbKJ37v`S!WxK zQ8W5ZH*200k8tjxIS3mpiz+GxWC99JnmTxAWj%I;`0{U&kbXacs+@2P4mM!z2=!I1 zEA(vySD3N8yByVC&W5v-=aq5d02kpngT9&x^g$YkhL2w-V}Vkv6BOf^=%nl+o;)yB zPZa(Y-~Yp*MtIgE34iP$zuWKE4F27r8kyQ!+I=KQK0Ddl5}H~W*_qqZo7md{oGgtA zEo~j_odAS?bb*I~han+UHZ!+$2ADY!df2--5!%|Dn%OuLT9`SR(Zj?1izn0{PMpvz z P4$dDeWoU*c)Fg+bM`b1!WN0ZV)dxrE1{tW89B3&W#wTP(WcPPL ze(YrRZW)JcM0=N&LFnqwM5f9BLn$lIpvX8&Z+()Hx!Rs#R&iEFwLweDBQGUA+}$fJ z+Cx3&GArQ$QELf6r4$0}k?oZP&Z2|LLBjl1AO25F@^_?RYiaIe1hBNXbN+K*{!e&9 z{I{9?+n_%o!(T|{ACj5jeRk&h7{~k3{w-hi2fX=*ME@=uDdm4kW^hbFYK&@ccWYN! z-GN?Oj#f&oY?Og6Fp|c!2)+2|(&?`W{)1PkaP=tP2Ooit_IJ$#%$xy#R|Aa{9lg>& znLz>9XMc)P@o05#O+w3xQvM{Pj7EJe6NM^R5sAjE9Ho5g-ugH2vDKyR HiFM J^z9m9ybV;51n8U$kxZeth?&hCZ7}BOvQI z>|-n`|I&?WR@ (TjN8K1~fq#R9;vP9n& Tobadg) zcn;|#S>#F>o2%s#N}2IU9 -;{&uibc4AUvA5bX=>_3I`52xzj(V3|9 zQF%ccSciW@5T@b;ACO9n5h7%qXTIZX>cnDUeYByeqdN!ab4YhRlP)hMu&rLP;zWD5 zy|1316@j?)Ty !$9|Eii;eK|j>Q%v= zD!*A8QJeAExyVq$)!l33`@4^>Llu&G=^T5_rJNL^YF^O7DY8Eny(+_c7@|YuxFLdy zO|AsQmvJk%t@80^I%kS&WU8S`go07Es>-!CPPLDV>;Cd@1myO~)t?Vj^5i;YUR7e$ zB+LyHzw(Xthiq!$LJWj(zJAW`cxm?KJ0h@Mcy9X+ic+yw+_WQ1qSC86Qo?TE F${=;nlr~Ef_ zWrgb`7P!wR=t4-f1Z@&`az8qa& u0 yR_I=N0;2>i =Vkb~ z`WI6uAgd2}PSF>iVu B#Txb$z_c{qE_oy{qdHA%r=W+(GD799e!3 z12h3{14ekC=tsaCST0#Ia(V~h(5}o*ekpPyk=))vm1$O1+*Lcdr7WqqZ+I)=mGPIM z^m}*3HVo->&m9r*8U~2>-PhA;ui-7!Bleg v~@d<%bKPV~6@SG7`jw zTN;%aEC_p|{B>1w-JeE8L_bke#qw@$hwI`Z#${Y(FyWgVf{UUUD5q$8NTbBFnnJfq zY9><3&xE@(Why^>BUC}8cjuRPY$f6lWtBE(HeHckNIHmIp~Xb(%`gQ<<}bA@ej7)30$B9 %aR{d>Zh}*h~}Wz+e! ?6N;!wbZ1?#D?;yaTIAk$5{3p>yKRidU2kV&sH5#f&iM+Porq=*Mg2Afv1>#5{U2 zMQRDU3;S*N+<)GgknlLdoh&5FpD3km2~Z#(@z*C2_$ho4uXaPRqT|nA6pRsLA@zAR z)UlPG+LC|a8UxH(;6^#+v!(OAD~!Sq=owOmQc3tjv`}R8Zp%ddLrx&(7R=G)$fRrK za!4p^!x~QW`U0s8sX`Soeb%x;^{YZs7zilwH437rJREw6b3)MIL?EFBsDSVc2~a>x zA>0)n=0#wA>~OIH3ze2KYOb7#c4cQPH`l;tW *t@vcbP&$y+t41Gu*&K%^Brv|dgi#^C2!AYqI{J7)g+s9$iS|ggG)k(9 zP+Ng5vFV|r2ZleFT2#~z1F1lLqxVQj!m3*_wmMbRgSYP^zOiCu(L24~Em6$5#_^j_ zuONlc@J(H-VuxM+MnQK+25w4gJP0X>x;;ON9sn4{Zy|O5Kj9|)*2N;;rGC(4mc1_| zx$+Me$d?>VMD7Gz%kL7<(CV#D;x^NG<`_nO1BwN@#!=AA3Ot4aF?1)ZY#f6CL<|i+ znNxrO^13s{b~M1=Hh8CA$#@0!jm2s+{C4^R+#+Q`0UqDK!Ukw^KSt ?u^ zb~Qwk*amh1ZKoPof59ofrPh44*0Zg^tR<8)s_?Xg= QRmF28UM4RC=&2f<3} z#{Fp_WEQR(lN*{eiUcNOZ?sqTb*dPNT8h~3{pRX)m%vWT +R8omo2tl`Bekoln`cdf zu%FUKbYq$;Di}=;s2 oiuMx1i#C?RQF6Ec3EV+2mQYqbR znyj-=@lT6A$dqg7=UwW3t2}qT!Ct;~=|szO#lQ-eaw?LesA`4O@6w*9O-`-gko2TF zl1S4AU|Ma9*^Fm|*>Fv=LJ!ttv)pI(Uu&O$;;~W~vr<5p4D_(3A0I$wkTF2u6|*C_ z!K!iy)7=bRDos%hNE~~DivuEQ;^oMS>$lsk2~VY=Nh63y=YkLXS;1C}3a4h%Yd8^O z^_y;1bkMAd2e~`v^=iGTIW09rtW8ssH4^aUU%oiv#p@+L(bAF=!PNHRr;mj*B+sB* zr_zzj9i4{lV1Mnzs1>V^4B)nEIs!&B6e?_6iZ66aoKM3(dXO GoZM;5NQ#Uv3r72s>3hwdu24 zJ95{mgSSVfk$WK&PuhV2fe&GK;=H;d9aQre1Lmh}m~z#9;y$T($>*c~3Iy^4FZNQT zqYBhS_|S_lY979i+k0q_WzLo`pKs?YUcs2LWM|(Ae8gRv24)@knC$r|?>eT1?7gyw z^&T6; Eb4fL3_`+Zz%{gsn z^wz5SQ4jPX>mthzw-AJQJc4cnd)9CsuP41|^m~OLcE5RsbZPdA`~<}o8+NX8>L&2e zv!NrCl9*)p2rr%XXt9oZ!!fv^VPat*pPpwmxS6uo->l~-tM9$}R1K@E4N_<&3>B*# z82WTHT&PaLgR4Ppi9Wyn*%6N9AxTV$zu9OyZkbt%Vx0xSy`+557_}A(2zE8dL3T&v zn^)yc&>$S{q<@L(!|?Q%@L?iP84yusR+7c6En(sUm7nQDv81TR7f8;;TzQbsJtZOJ zDxcbC%#?LBzZTiug9u@k!x6Jx-co!MsKj2tjwOyL<>u_b#NAyZ45XJN47Q!79W{F4 z9c~NsnZ-V9j;}r*=U;5`TgByB{aS20BiFFG1!$O*d!^E#Dy?)8=zr6{Gl^bjwgi}d z&a=g$$WzDyPiN?J0viQaC~Ht2LF 9UYSdyJCF#AO|Z+gm$YiEryXM-lS>!w z{@OLb@m8UE=H9`<`-b2=IW$v1FNc#n*SMtZ{-_j+-sJkVeTj^2Rj}dZDY&lkX=Oez zCfRC6%j>%d{ao)2wEZGTSus1m=ZIB#`U(zRP$r1<0Q;z&s0%lVUL$|-ER&v4SG+0r z>A1HI=b=*Ds+x`q=d{XfYP48Fi7l9T2{N8~vE@wP{$#@%t;#Z5wm$=1)Q;L^QEY+l zXqjJ#D&N@F;2Tf=FIE-2Iz3R1Uo6LE^RDC-T3w(ZH};DRT!;!4L-6@J)a|77zp}zn z`-e^jdBc=MiHUbIc6{@fpe7dhGI20+Sl4R@v}-JjvYtMF@@d7sYo96HoKiaevfdx* zr!R@eQ^fs2+QP3wM-#NehSMO@?}3F_8RA-}tV_&=I$Jk8bv@ n2>eWd0 @+iiz8|rP4`sbqxL*fy3Fb= z+?D1BeAJs)GY%PYzu?Hec)w3J-y!O#dKFh_(?sXMKm#RP0H o;JCj)1Nh&6{6_yH5F=goO+zy?pS2;nWy9&7V?G^RJs0Y zQsk-~KGZwbcL}JIyT4I^e4gd2a^kUG`b3*2r{Jd6sEb>Ik6ab$s<7{K4>y*J*l{eS zt=IIZOHS1SbU@dl2=l}KO1CMi4Avo*NE5maa1Fqju!Gf*GgY}Q2&U2kulC|}n>s9( zBiS=J^fy2B0i;J iq6JSysXF| z;bxhx A+}v|BANIb6Y|VKLf0b*YjO zSaK1WS)BFo&@U@M{q|jp&z$g56~G5qh2Jnaa6?4&B6!^G;8VUXZ0f|Q(Ea1}#}0EO z_ByZPgb)uMXeIhnTDGUafcTa&L$o@xd#b?-BkVU6#i5Ouw#Iz-v@XAVQiF~tqe3{% z5(Vs~tD3oD_`dbb`-miF&F>nfg|xNjpI)^Kk0f=g?Esxi`Mf@A^D&pL@ L+hmSw5zzQ1bO6i;a2fCzZ1dkPuINN@CzTFDBJ&YoM-v;KL1f*y zM}cR6XV8z387%=JzR*T*1 M;IpP0Tj+nIRhc6gt-AAZp9FH@fgr?M}u-fV7h+hZIdWg%rhrq=B}R=0Gl zbx?Ila4?sD=QVzYNWVJY(o@`1OgBrQ`<6r&;b|z#=j=kL%-<$Z1kl<3{b)@ekM 1>~|E zx%r=~^Z&j*?1z#r#U#(b;(R=8I>F-%czC%#2>W9{yKL~P8BmwWvwWi{I2!^vs55E& zO&{zER|&|LJ`t||P=J(#9271S@CTenbg^OUd7n=nOlm^iLdN9kdB2x~IGq3;evoDG z6X@WyL9KUCq5^K54xJym-`02g<6NAMvfj?9HKJvrW%MJ&`my*@5%FiQf?ElSVjU ;!f6t3_-)kN E`??3rd+VPT;O(JTS?+G?F*V` ~|C){S3>$>w#M3|*MFUL7Jxbm-sJXuF&r)9PuD|0DC fNb9pIUF)NkQO7Meow>G}+EVnd(tGH4lz#Rk zslq`GobjOSM8rxg(xPL>`P#q4e^y b<=(^z6y3XDYtYcdC{!P4WO%1EO&gwdsn_dt|R%)1fQ1TQ@v zYW&{TA1Q6^JLW7o6N$F1pDSsT1pVO173?MrF1_WUpCann8! f+%3|hwK?41Qkn5|u$xplLo!BNbP+$#N> zXml0~Sxg!@CJZ555cvW~l;b?WWW55V?S2}j%XsK6w1Jn%?)uFCY`S*PmHX`deZRt0 zask1+(a}06lN?K%o#fr>TjNk$3Uy |ZGb~VYQ4vc=kgrC7m{9@cGWl?F)Kz% z eA$IoiE!$6Va??6qRprL_Bh*HD#GhGHv?dJyo>J7GT@*n$+X|lL&6_MMSDq^ z2g2+G#4{KB6aoeZn)Q?bl51+GcnR0b2tx$mLvF6VYn$${xCA`7ziGkFuJA0EEcSdS ze5Q$#zd_O4bzPCymGU=Ludax%3do?YkI`f{nO>InZ6*5FwSafW**m7K*STrDx}J>L z^W6EO-W_oW>`z3LKt9Wm=fZm8RL?49ZE?xfE`_UJQ)6gGBsJ7_xtx4M2M?x|Lwk&j z8K;t$ZZ9Eos9sj3BM+M>pq#LuTw?u(r+ %BXXpR z8vC#y^;Tthr1eqg5!wKu4ed*wdMn%BEH16Ds(@z43UVmDMMi^JA=wbGU#RI-G%0J- z(^s>%sw8#mh^b$0M8Gq|%(z6g{T>iK;(9y^6aqnQq?0TQHyIAG$eNY3Kf}S3i26T` z3Y{|NC )%q)nj!$Qzn4R#7o%=7T zg}GK3mn=pKNu}40IuDlPFlt#~b}KZ@j98^6ywnf7z1@r?n9~yP{Ve%&2lhhl_N159 z_$`_LLeuUgY)Ix&kT4B&hsZMmB!%}2BV 2atT FuUTlf571O777K=P zE!0g^z@44S3ur^QD}5I=v;6{_3Pvb}Q*lG}vpX#n4{o*f<__%m=s4_Ng|?luG{)J9 z47uc$hDDtl)s$6_Jy36OOzI>)vtWinfU4Zi5PEGFu?c?dsolGc+@Gt0cky8}yB3YP z)Xn~KJX$ecbwRKMf~-Rb0l5HMtBWI-5zK)W=fu0#n?3)NNtFgymcF5tgCCo~{)~W~ zweHYAL(0lym)a~$W{qhQWpw#c30P20+@D?31WE{0K3GtzqI+lx4PHA()539%hgDVY z(k6G03&Mg% XbE7#9z3vtTt$II^AzoK8UdmZ z0p_v=nL*{#JZiv{3x^3)#fkjK)7$z-3EGJ>+&c~K5IKA~M;@h}&L+7V%-UrGv4|y- z44>kaV|Uk1r^l66k}81)wDq-Izd=J9qbNe9l_Fstln(A?X~M$lh(UgHFl1Tp5+QIo zjSI6>R_^~oX37T9765 b80LVoc3do!Z2+M3j9jgAK=#>Z>e1l{kdl!D#(&*Q02 z<9^nHbF}szV^(^kE%_PAZ7K|mu~XB8&7G|q-s1aM2G|#NG%HL~fcw3MGVIGais0my zkAM5so2_&X7cgCnFDn|^#I)r~zpK8wF9__ul|Oy1_8We6K6)x`@Eg~C2i#2*7Wnah z<6m0bMIw?@*)^I36ZXeUZN}1&IhYgDyw3?I*Xg*1aW{J~npIemSe5?D<2IZT*dMC& zh4;Efdkq;m2mSDtUDONLm7dgm$onemQ()wH2-9Fq!NQSL^?J-P&(?-^_B_OQ{MWBD z(V#A4?;37CW0pOPFO>&oURwFJKU|uRr vk zQ{gDMNZCLyzDd=a=6jgBI8ZLWh~jXELSN&<{8-_JxgZ_f34)EZPM=9YJ~N!*OA7zK zi0LVahWG@y6-ZR>x{e(^o JUrJXFb~>Z}Ze1;C{fSeKyV)E67y7Q!-1hdHyrKu+iFS8Y=*;k= z&P@YHE|{9_a0#~y1jcKHJi7wRFc}bi_GrOYv>8_v=_y5@c2`@k^u67lUp+Ma+|7!O zq;0JZwam~_V`C>};XY467JPHbCMRo@GtYio>C_I1uhB}GE 29MTQ-91`)M^k(FG*|@&(6&%;x30QP9M%!Xf%aL_fBy z2tG@0{|Oa#i6OrMq8M2FuYCy~Owq}x`f^1l@Pp*!*#Y+!D`Pf_7-znq!z9J{U|~2k zC0So%x0Sw&ds=J_TogK#VxtJGj^)r=x3IV@^Wy5#q_Q^|${^Uxg%+|Hn(SYX7U?8g ziN`+EmtwmlNp19cyQD4MB^h8eRZvf>T_8K~gX7}lhl1mG1>$7!sXlafn f}(cq}~d)r#X#iNZzuxs2y*WkL+SPU1Z;2CgI8K z1}D{E9J3yk+S77Qc>(U(`{|fC7g;s)rG;gxc(&Ax%A!`lF&my6OaPHYq4EgW~u? z=^jCqTb*U^5?Xi_mP5d5!yNXh6Riii?S34Z8`&3`n3!j?O0oXIG%e=>+(>JLS9>J@ z(!5=nPpxpi`k|?&J)3Ze@V?2C0;Brw7-n^zyp!Ffa-lrbF~_G}4&-=M7+nQlK-jHO zaTn*)reRhG5Vb7eFqL_>s_w^4 O=`IOAtM)m6f_OHU+No|M*#&}&~6f_W!3=0qt z$$u-%{jSeDeEdb6&cw(G@JE5}ROi)cxdr*Xi^T_0w9|VmJ;{c`?o3|!_}8T#&rmi) zlX*rLD-u*hxKJRl;E+`Y l|y{v2S%1WGZ;&~>V+ zh};^f=4+MX(mK&3+y`K)$U`V&qANn8y&3(2ZwSuZ+&$F6RsgBOU=umLlLY`12D74$ z`@JGIOW-|HJSsU$p_eNNeGyjSwWy??a7Ke*SdjlXW`53VU6|%5YtM=bSR2;KbEn!@ z#pB+>TxE6~z}v1Ko)-nNblyHwDVd=-Bx~B5yd=xm;e|Oi!8_ esdK z`2@Zz-kSy_75OPFL81v7AkL^7CCWq7NhT6S0oV3Vd5Ukd3ERO`x#49pN!$<1U=q;` z5M6;5jSp`i14jdoth0UsC%3+yz!S*4ej)p4yaG3#3LqtdZ&3jm+eL{klvD(OBz=bp zVQCk0muL# B3%}_zOLwKs+L*s5*j*>^aM@UZZ@W-2&EW$v@-}wBD Z-ulq7I;jf~ieZBtlzHmr2*0^_d2W?h!P{e& z?Zv50TBu}Ux{aGC?ZDfi41ClOh$Ta{M`HYD!GLuAOET$)i6tH;mD}tR`go`YM(Hd4 z%c}h4-jNS{pKG+QTj90KqRorz2( gu&y`e9dieQOb=p$l2%NJ2Vk6m*6ANuvqa3y_XNd9&!?;ASaoNQ(?( zXrpN5u64PlXy@J4&Ga>(*jpL01cS0m#{&@Kn4u%-aciD<*nPGlC*XKXR#zh}=H!L_ z0xSlu4mle7kx5dEw7$%@JXtXO?n8QYhn9iTwYPvMhwKMefZbTtMF>MEMt&`JqX#iq zF^1ZW&eP&ixJFtO_?8<_j{%{PQ~M4bEllX4`A`# !U9lr7qAD_TeYp}pV4rH^s*3bfGuqa8Fdr;w#MDlygh)!E%v)!Z zOBHDnOt}=`_+C2_pTv|5rFH+42lRLBxsYV5WIny^*h2h|vC9&x_zU6nmEvV*4?l7? zzp#FM7(s0_4{-UZd0ECjE4?Nt%IGk2%;mOXNA>7BZ21DYK{0GD#gz8`li4Yr_lF|L z_bIuG?u3e^nF1QBb_pIX> +ccW?Eoofq)>-{1#l{S|kH_w; z4rFqhcNq<()Heyb?iz>Q%4d!2;?CxU>wJt;itlwh=rz&P(&mCa8L^BPR13P}OxA}T zoCy1Z@` nDRa1sN%X1&O zh;aQoME#^K=4hwVW{9X#Zfp-=C6D@is^9QVKj9tJZ5z_Pd8N$9e1$g9!Js)?9$lPw zy1o+k7KHjr^FGz~&Bh1kgj1|}B4gb`d_RQ*H)S*Pt1Sc6GG}JYtC%E7GN%iOdtx)) z+YPL2_2qOEo39~BfD%ZMy`AC)+jb~oL^D0|b$A^Oec@|_8KHlMHW;xrd&%cfq+ysF zg|O*_gfUjK`>~;A9606V`IVz{Zw3mY5L-yNRGXL H!aOK#}vcj3^MTF-a zsFvB5u+12$l4A%#6*y#&de2=NS|ys({aTkJtv2H-SwRV$1)E5WIXDH%(9TzEDI}m~ zLs8Dw1CK@{ck{k?;8#meOP@7(DwFtWTtw`=z17TizN`W3NCqAE*M>Z4f%2IC-0+YT z9jF!~f>ur9nt0Bga`ZZ8Ic9?9Zy&uR8OAdqY7KpptPlQYnPD?ImKj`FN9Ms}_&=oy z)%u5ql$L1bNp$iU`DXW+-piT+bxz$A_lzKPxs)`7@~}z}Lx{nYUy!g7kcbt`Z05WI z>eyva%!SC2{V(@C%y1Zx233OYP_pm?L!}R!WJNK!S<>tS(Ce(5aJI0do1^bGe@i{E z`=!YuEx#s8=~ISsq)lc6DQaTy+Av0W*gI3OL!ogpM?4Ecn)9qMIXfB0OM;~r1A_xA zaRg!^0ksekZ=&r3Jd!Y!**CoyV(d1tqp?UZb#5wyo~$Vf-IT)!*HKQA9a)3sTZz8D zu7O{Wo=-!A*>hPN%fncrgwn>=Y1)~Y67(* &4^-g4LQ}Yt!{cx8V7S=^pvmw zNTn&0VhXO*rxRfPA?)E(5tS!aa1RBwix|Fv@1U}(eC6Z`MTnP+F46V5EYpy*QZu{X zgCJFy2dfzuv 7u@#H?m-oPM_k10e94w`olX#5(KECWPRNmb2A z@DT~w9;sD(qsTZx;ls&-JJW&jTB*KVH1>6xA#LAkB`s*%yDI3 hznqJ9*ysi|P??!v$P z GGIGr>$ii&9 z77hiATkGX&2y2{kH|XZR- (ez9=CO)Vp}`rj z8(x>uSk1#= &S 5YefqgZ>4xYyT6L^iIw#;ZAv_hWTf1Iq|pb z(M<_5d+Chpztd>^pkOuIBpK9?f1@XVApW;e;{WE`oXyPs=X) @PBsYn1J2ZOAFEiu5ykO*G!pRvs2jSUciiI_k*o;R3bk z2!{7i29o{d_F?4wxWD=PQg??}5MF|tl&>q`#59G0xhftnr5TW`5Rni>-VTTE^!oIv z^q9KC#ne5VO@mUK{gMz+Pg+Q@lakmlPC}c~U%b%`WTLFBO(tL;^P$1Hz7Ex}xNdVv zR&!%-GC#DVs>!DaTIRtLTrs*eb%UW(3% K& }u7WRuJDR(QjC6`Tdz*HV5+~e5HUaDuZSdm|P*? zC)sRO;un; 4>+UrYM;N&|XS7^kp3wFjWbQG`z70bxpXF3+QZT$SH!!R=C6?+=CsKEmMJj z`w1ZkooBE Gbm_HxpyIdVX zSZ~MZw8=~%4|$8TRLOA7P1?_YP^JH;RU6EI{Hh#182>*f|AVb|{;!i3Hvg>t{u@|@ z0H}%xQp*;P7q$Awn1=m}|3ppy;{kgETW4BJd$SZb6M5u6&o_gJjf+5wIZ_bfLy3w~ zbOhAmL^x6sZOP7VYd`uCDXRRP#X^djodY7EA76QFPp3XUXTDu#r@2mdVO&nQX}D~F z#quaFC;+Ia0RAs^0C83R @c+Qg@YLX7)$E`Mq3>U;I6VMk zIe LEK_n6gWR5L$pV_YRCugAy}Mrk=q#9V!eF7=dujBvKox~KsMTNyIv;I7 z_#dZ_I3nP2K<1?qrlD}`T<{Nj(JDR}p^Ap2c#KeZosY{Md07%G_AM>&FaCQW9SKJf zqNX=Wf`3(x{~%`h6|$SUiHv{3 Y?HMieQH%69OZf @Bv=jnNUx+kCL->qDQVL_$dn2_jmba0)8gl3am2dV jiqr)6xzn4dx}JyHL@s%l9W@LUoNqmJ_F;y5XtnbY`J=7pu9 zK0LnoB%tU>BoOtNn~1%O*$=EM{J1w2Iav`5y QR)5E;5*$?O8xyEWeR}p8w;I`N? z7!8>?Zc1NTiczJB6Mb=Y GkhTO1^dW;HKa-{&7-4-hJfEt*}K(FOuwR=Qp`z z97G?lGKTbU5hqtW!YnP5$!5Xaw4|fSCrxRDOdkdw&P}dliF4iMhD4eNpUnqZL?O&< zkBNlx2ivPU>W=rQUM1UFJWn@ J>C~lu`W|vV*P| _m%<3;iR6d*uTJe%Bwh zgEj%7a+f)xe4$4>@6kvR^j|%i7I;S{O{MlqaO_k2NMD)8vX)gLNnjlf_dBsx)N2T% zpi+~pf#rNf7Bc;W>yOm+d(?)skbvDZl$!_{=p#6beepdNb5%F=$;eZ(*`Owit@9>r zkT-C~Mq{dT+^?IBbr(5O*J7Qx4cZg_=SlVT`#1Um85+i~^cbBn*_^h)dfNDw?YGRC ztqD3?M%ktZSHrhCox2f7I6d*FtCTeOfoX{JjK(%H^W8U7gT?7YgiO#gaocQgn!kfT z$XP4W+ lG@oaQn)}zug?K&;fMIg);bDxg}P?IDLn90 zGfB@o$RQy6+bmhW@KwaNM@Fuz2kGw5)4VV>tNhFwy#-C(I&PW&5Tl35)65}_qhz?| zvUm6H(^AkbA;!0(*8BCJO;PA3Vs5JHd?QY25+aZ;4#+DY^=9;H(;kP?$I#2ADJlXq zb%#)79=rv=j@M62C zVu?k2wn@7hOb~hw3l9*^GQOj6hWANyx@e0PjChMmA5xm`SX?0k>FHOYSYph&R_}-4 zQgRi9eXqE}69586D^1b~)Ci(@Q0Xhn?OZSq`~7aYps1_m%W7%M`Z|6%!a5=Fv;77oY5TM5J3$tUgD1LseyyXC`!>5?IxPRM1QOOHPNh%5df!y zt_G~5x&TUxs_C9cCj?_^8kr+) `-koKqdrbff-I~Xx9!K={ F1nRzuOJS22`7qh`PJ7?%{sYh0m8Xg`RU*@ ~kG8Sv%fA)zcDu*Bdah>tn49fgV=H# zL&ba|etPucFE~hAHwA%Ddt$JivFzqab)12wteSoTxS ^Yh%l7mu1}T(-cC-o #z;vVsL>Tmg8BqG46={eHip< zuP8)q3+WS%CO|R+e>}^GEP#(H`cY#B#dUq9lqR)Jbc0N?NkHuh`c{30z!%gR-@L;a zB6jWSCFOXNK;^rGbz2nNNf&l-NbZzC^sS{DKvib<%-DU!eYYfT$T9Set$CG|A)@v- z0CK!I+_tD%N$~l1MJOs|FW`rn4qKy&k6HGeesfD-bzc770CIm% 9B#}!WQ%7lTto=hBw%R)F#WiLN4UW^txE2dJFT*L;hB> z$@AGG(go!~u}GE<*=uL!Rb^Hp6SoiLDl1A;I4&!1 zHByo_!J##W-nQx<*GmHdoJ}dekW% zD`VAiBVdi$Hd{okV(sD1eq4<#Q0dCQipUAG87|Dl)VjLP7N_sq8Wn&!2j`Ow7)d4j zb23KAAsYrjQ)KeL 3~OZ-2}@&-5T+1XO1=&dx~kh+Poe@LZP3>6hacJ;6lj zqR&c G8Ef0ul;jY8DWA6 z8#yUZBrVU%Wq<`r&W&EJcwx1c8S$;od_~brz=yWDARt|ENE3K~#HEXQU?`M*uh`+u z+Np+m#T0{brY>um#&1>Shf$DKL0ZxRnf*k%cwFb%F} ;Cz5<_-v>hFc)a1fBf46^@&Fyy>wx@pk}4sl5t1#pO5bg*+kc%>L6hbtW=> zMCQc{*U}m}6h<^>%~G4vG&x9ky>r{xGr}&}9`+8SeZ==ZTt|s)FAbf^|8#4^-~)~Z zSlf6;1by`B5CMiEnin+(R2+Ingyn7BeL`3%ogyf+4QXi(591{HNZ5!|LA9HKTF?&q z!cdaK {X3J%d(9fwBV6?=M`0e>&OQ(FZ3mfW3#Q2p8out z$BRGQ&4+g33o~Cl#$>Y^PF2CTcp$UO@dP^d()sRQ(k7K%Y^UO7-0&`|Q;{j#;EI50 z;q1d#xk-%1e_rs24y`Z+=g(84vKm|HMULw=q#tVP@YB`#B1+B*;{=#PZqiXn!n;7f z{hxxx1vkD!<|oif)XeMT0YoKV_i}-PvPXg*jw0!tD3W&ycNfl`s@fGlX2UZT(Q`{R zP0di}3Pw<4?1&=U4x1 !1W7+f_!7}={!5ZD5sCvdsIQOohRr8l)hLY`PiCPD~`c5HdX&1 zDf7 d3jdcR0-iNqGtfG^@S*m0_smSwR4o9A^-qIS;kr$Z|#fMBPou z-d&s;eIH&;fvbP^$#J-N1Bvl#%#)6r7?U6ECT1gX{=#rEaAvEP>bvI+&0P*|Tk`UX z_Slm)0J469#QH~^I*pIPYOQr(+(VO*F0yI&S2#CpZqDGwUIi99>E9 ?ou^3>o|6dT@&U@{)tIyKk$7My_E-d*D;3UtO4F<2}+6;;|S>JYn6$; zp0PN=$lh9wCyiP6Q$14gRG~g3)GG^S+?mH+ pgNH z5ocuh7h74!I@UH;4l^XhZAoBl?DqmGn)ecN>hJ8cc0H=8z2PG;v1BlPCt_3FI_4;# zT5Ep6D!t#8Q=sn>v~BUeLI%7>7E@wKA(wa4YAr^ByOHe{Hg!mh?M+ED4g|kk7+3UK zZW=9z<3O;`R49Tyol14!0kOHqF&^xr+rl*pD>sHxengs?-`pv&yNO0-CGYCF#dQet z&$`Q^^_$7q5AA}k7-r}kMAP4qsMn|FlZvw-MP*4kLy~itzwSXnRWj`RCMs+A8EwvV z=t3RP;oqJab}!M~CjsHD`gO{E(J+zH&2awwUh6LIdSMd>FLVwOq-xLIE>{E}N^OyE zEbEWgA4g^jLA;=95gR>3S^qEjv#!s|LyZ#f_iP !%s)~zEiE#)8MX2ma69$Vs*XS8?wP@>6}k~)pPpOEjuMYnP0OYZi8FgbpH z1oC4z j0|ZX-a_F1{YLGVM=RI* WIlz@QdG5pQ$-J;;CZyN6$4gN;@prU57b&jS5QV@e>>u1 z2(%MizDXl{(%6 c}{>dPM0}UWiI|Xyyq>sKjnDPE;?(i??DY1TJ!8 zbM+RQ@FgaXIulp+ L)D^bg~K_nLHP@ z#x49)vF@w%JzF5VI;;3z(b+7;D6k};&7%V`V(X6^yKBKC_I(#h@pNlkzgZTk)+BtN z+Bk~y(ft)(lS>Lbp&p|##e3--61A!^b`NZeqV`nx$tN(e?DYTG0Re>tx%N)~Nk`m7 z>_Wc0&q2o-nNUd-dqV=PL)67Gk6RZA{7quGhCiM934Bknv_0#;fzCo>t`4a*J$#3E zm?SEW?lGUJAVb&_bm}`J7qe^i6F(uG0-jVx&Yw;T81ur!lgnD{(f)`Fh8d@_GHxoV zQT9k5(gI9`-c#u}$*>AN=b5#e1q2X2c=PxP)xA3gF|YeZyrlR;?^36adR%vdID*1$ zX*Tf}Lfr=#n&cr}{faw61*x=L=r8#?*WstOb57WZSD@#d_8fgDdK;}15 =at?;=ds$GKKE$H~{nKH>_ NsSHz8MN)n9NSJ5u_;cUge{Ad z?bK03lsQx~j`#fsZ V?V z#3Duhd6zu-Fk})Q>Yjf?Th{*Hj+7);tjv>tQ> -1jnmY)WfkxoJR0M76=3@1aciqX^^U+T{aEj%=lGL2f^x=p^BA^O+YyI85 zN=iHibxsmaWzE=BVrr@h7f$G`h7}pDr1!q$ $lS@ z`bIi|$YQ+50QVAci%&w&73bHJ(!uKSByE-VnBiqJ$GwQqh`5oJTdyWPJ-M7( >nDi5@^PN#xx5zGdkeNOx2S&F 4i%8)P}n1ryiSBl!YXt91)}4d00va&h*r^%?U2xyyzBQ?@B=r zJPK$ny5xhs)aCJyFZ17(@x%Xkg5A8l+Z^HUx1*rX-%8rjx1EuqEf9u`Fd<7Wf_j4x z9}k>@Yw49P2?=XQ!eab%jXjPN?AXwPO59gUgiJtYgG)bv<+yWIe|aPN?<99tV0pN& z#_6X5nf`kF7**9~m5MD*<0J$iyAQlhkaF}h`OnD`a{!78w9OVt&5%Fj{n0yX1a#BA z)Y~O*xF-^BIBlMm9=;nqlj>qSh$`#lgONV-8P{@OeNWT?Gy!o)6D~=|!zt+zNpcr> z57YUCtDv6E*Cz1T ()QpxaZK@F z5(OQ|rp=Ql0LC;#lufcx{0#JP`$#~FS@QF ~fu{t7V_=kV@F#|Um#UJrkze@SDM)^M7R`*}e1Sn_=yQ`>oo=Y0hn zs~c;>@263Rj^n=7_4Pxvu&{UZvyPHaP$Xh#6z9Sd-}T)As)6Za<8HA(gp$1cPFt7x zeoDu#O_~c{>F|u#qen_b=VlKAmRoT`wD4X>?Up)`s((^H9k1abni=bW^Xm733ldpW z`>~{0vZikO9I@q*Z=d@D>^r6LX >)VAa_iV&UJ(a$u7&15p4QApglbbO@ce{Y=I61qz?K-)eHAo4! zZS~k1Uuw??f)-Kg!aFf+@&UE%HUk>q8aX9mbGPyKM%c3A9y)u~pWc|kXLjn-RP 6Wi z3jd+eIhkAh<4yldq?`5NUWz*czkf5G)iyfjH8mwNaoWrBN;hH>Oz4O~ghmnJ5FJcs za!Zn~O{^+rY$KG2B~O8ee7Sf}{{H0kjoUkV`1|(e`S-({TQ_d)=lTbWe|sTTAKafG z0N_(g-w#k66y)O_^!)<_^c^%f7z8d{JSqYLI%<5Vc(_Cb`M@4U#KZ(d@(vy-VnJSY zm33|O94j+Dz1%`$Qyo*|3L^_WF!-Og7c6o-JbVnZlClE(ySL#7!4K+BoSzL20^TnV z4~N`52a5dTdkp&b?D97RZyNaE1Q-y=4~6cJe?L5~E(9JQU+@_p6wng@d^u$uNT?j* zUG5+p96Rg~qtzyEg+_v5E{&ZO!T3iT-ko^Wm12Tt+K=qGKS1tp?(ZJ#xSm2N&_5Nb z4+A8$($Jl_9?*XLha3MJZ9pEETpw~d!BW}hF`_blCmT6#?SuhkpKQ>9E`OU!b(+3k zCevpX;K>0p^;#n*(%jw}lv@%gW>WU78XzdAyUDCeD~d(8mSrIls>cs%`j4G&{G|NB zdq)ADX6^898O>Ld_hQ(^bmC!00M|W*-L``p-FbXLFoV$`2cy_2^w^tg3@T$wCP~L- zcv^U77W6}O?h+QBT;qjCtRgX#@0g8n^9w6OhodWbFrCF?yGs3bdvc4Dg@Q&&B0-VJ zanN4CHZdjB&upM+-(z2K!oBXgrygE}CmrGKvz*yh+Fei_-jTG#T1Dm2M`YGCrWp*X zGy})U=9<&!C@<6PFt@bOaJoeeJ2wPyS_!K<1i}ggS1`16UukccVeD1lefK;d@Mb^& zQD>${71yIyj2^2oiuWB1%{{3*%n}`xZB5+*&1$4b|ILx(TSvGEur&Xv<27{)lWQf0 zRQW3LDI;0OKK(mjx&BfkkAg~NDGq-DE}w5hcSbE$6G|8Lbe)u(k=@>4q>0s#=`fSx zA}v?&h^crk@D7mo?)bYaY^8B%G<$A!+Uc3H3_CW|xnTX{P8al0i2aI~!%;*qhI3fU zJOx3ij{lmWO~@L07U}Fp&nE$Ax*~m;pup^yMS{`TSH{%hpQknb36Z+JMar`zHm`Kh z!rVN}xtPb5kGQCvpH14|$)y;1a0%_N5eg0_VFH{dS269_osSQerq M=!YV36leb08 N!a)%-^Y}EGC}m8H{iXL`k1Aw>4Eov(>+A zM+GTz8(x^ZVJWRbP!EK#>{SugJh3@CGy-J5oq3DbvO3B6ySV`IV_de1fMbfel$@$T z4#}JBy&H)EoDZ0BbM7q*J^(Av!nf=}BE3t}!L*`a9j2P3zvpg+q)^NlXqRTOTv9lQ zlB2zt>|}pNHQJ-1k+Bz~{7yvjWMGWzF1g&ns58N-xjxMs(t@!q8P}dimSANJMQ1c^ z=gwL;`EsDCrkegb1ifqp7T(*=aIAB6K8KVKkLCfHIMqYAR>G^g#db3;fjx;&VNCo5 z^|EH*U0mK*FFOFbk^R6vF81!q4gMn+>p2x1t`r5DBwZf=_T*s!0g`30RJ}WL5a6Qo zWfnz-nwoZj?&L*`tR@ecCdQ@AoCW?mi%-mn1QDWchq>!2A^Oit SBMqgO3!o!v z^rXJP6@Y)Lc-^@ywZ=rre7wY`aFK>xcU*o&A)JlQt~_&7pjFV1h;6UYyc;(lsTqIA z^g;odPQLV6=_FI{pm2HcM ?%B2 zJ$nWp39vI$4mA{b>~O~kt+WI8jyiIdD0eSO5jX2&x08p6MfN|Jn2pFfvJnixTVrWC zvx+R2lxRgHsK>KQ)k%e3m}d*Cw!j~);#nkqmbt=0#E;JOzdjsU<*`B;wXQ0?4Kkp( zBdv=nJlEQxvtbbttG2gV8yD|MbB9(>P~{4C*+Skv 45o%B#FqA`HAoN>nQQi2nfaT$qIE1^#CHjR*!#N hu1v3Ye2 zJ#ieyyGn&tyzq>t?i6{ecfJaUtspCr$^`P^m$3_!#VJhQm!>!9V}QtUN8_xKDSA>{3O%~r2mqU zJK&j ;F`6K}o;Y8h7xIzKVHjMQ zMK^f4zCUKTs}gq8zQa0bP>vNpwah(#FbvP^z?l2nn*r!PI|lQt=&A+GW8D*6sVIiY z&0P4Vj#&$)@O$n=I=`s|Jsd2upIwk0j+u~T&Pt=msAx{g$5L{?v?BYEOYK_IEk{G+ zX=zyMH^F)PuPmdJXP4W3aX&EUGZ0tmDx$UE-W!KKsfbTX;hyBlK;g@<8$iFPjG{O6 zsOm>XHSea_Z>R{TlrKGMJ|JE;ar>WN5V%OoEvBMi>OFINUWBzeEuQWJ3DGBejc|fG z0OS7d0 AXOSS?|CYlWVTMB9RM@6f7jv(h3ni5c0cJ%WE>8l)!KV zt__@tCOgA$bja2tU Uuag(-HeU>ZQdlE zSzdmdIK4xDOj!zR_{fytl|u2ndi;#B`aLAICEM%-YmUZ5=p8*{w?*>bV}?jF)Mut6 zfYY#+7jxK?V@exuP8HOGE}r#YTe(B%>S#frEqkc^0Jmr2%ev^2w3 GrMN@%hQdLg>%9G9r?%5R zLM}*b$u+w@Rz@)q%OZob8qEo*$C|(2w46WR;n@@T3-keY#Khy5x{*^?1X6VcFisNH zs$w30`)F#aO>s<*6%uK8pSGoLQ}{~p*)D#GoY~w {*?sZ4b92sMSnV>0YR ^yywi zM^mCt6yj0TM0$S0H}fv$Qm}8bB>}|eE};v}DjM7ax0^Zh)6^&4yD|1&g@}R8lZ`{_ zYuKf7M2Bb(wdKbePWn%Z0`l1x&6fgwT8YnFc &GJ_e_wMO|(+MeG(hZ;+i z&fOZVMTZ!|TbIzC1cNZpOEptrS>E(S>Jq?Lxlhjcfr3LVM=dG^Nvs|Gzc*Q5{(+Vp z8lhWY6D}u&Lj0&P93LuFb7*jvtD$Dt&@q-MyurMOif)p^wBnIVRc#0Oe{VCj=(;A| zh!oAP-=no^Ql;k8uDJ!O?vYNX6YL|QAC6fNad~K$XH#v{)_t{6u%$MOB@t6)DM;&A zG>R|4n b(o$;N>Aab%Q1tw-SrDt3 zAP?R9Zgl Dd9mnVkL%DaN#dNUAF z#T7(&SLVMtJx?s*<28>qlFjGjm7yU|CU__m>Z}9}X*EhrHgFv{^N-t(XRFD-GEe`Q z-JjV{kLrXyV#yXiN~zriLQiPz*)+@o;gVKM-J{<(HG{Vxq-|~_;T8GX55YFff*B0I zkp7)5!{lkO`_}{(M2QqD?)XQV&zMjlsd`TdRsGnvv(ruUqFg1m{N-MO0QoJ?jub@# zF!y=2uw$z!)U`~b9C$4@J6O{ig{#L}&C7qg8Tgb3wHd3J2#Ncw;Cm+Q{a7Mi+T~DI z4Rx8BN)U%WpEKuLeV!A`32=Zt%USenSfVI+zEQfz2$Wn6BR#V4d|WL`kUg3Xb#q-( z>RzvEaQ(HvD~WS5FC<~ut&%sTpJop-@W;6S5 WekPM zE|CpsJp!LG4CTcHQ!=BBtCOt45G=+tk;<+c6RFk-#9i@Xb51;OF27!RPak(aI(2g# zYhT`}MGHlA0CyrtN=N`8KmhX&Kw?My#Qmd#P$nh@L5+eN8yoEH!S3zs93A>Vf!%`l zN@a3GauVX=6Bgu>6XlbV;`p%fm6_x^Iy%D{O=q)~SQh8!h5Xmo*V@_Ih1}eQ x6l#fCC_e)Pp%af9W zJo;hwgP5KM-Ah$AqUW;LnBGXj$f5q@jP)G=qfdF;AU>xvlM}ciUejPWO9KUdBX~)f zgw%f$SK_4fKc~Q&0ttRmKhjB52)@adVQS=%Fo0?gCZ11O1h(mdI~Dq;7tH*Tyt{eu z(&5;lr>lE&cfJD~2H7#;BsVc1UMu|R1=TTIae?Mntn2!Ds<{E!S1t=Q0al5I_@Hzz z4LBo;W+tSL3<25O75528A_WWB=y?c@R&bLSRA!}*Cx9J86a1UPV7Qzxo0YU@=l8)` z4rJeo x{ zJY_tW{Z+UbH=K0`7rqN}jHkTxc8o2sXD%f+MJW6Sp(Q5A_%+-+@-g>Azx07r=iAV| z_AY%*iZe3>tNp@;X#TYi7KY>?XMMg@2|F4M{Hp(M#3zV=Sulp>^RHNuR9zMZ$~`Ez zzQxsBo|o=Od*rcKXI|`D4s0Xvn-guA7Q%JG-n$P7;^k_w{qc=bp%R_)gU!$y;ws$1 zwbdg36%G@NdRYNwb{Un?P(=grMB`(Kr$?DP@@@E>5~yqSI5)NwH_`B}5{k(9jbT1= zdTlQ!&b3nb#^-cGrW-{t8crLf1zm_g)<2smYRa#_ti99as?&>k>UxaJAQNP1)*ZAm zX)M)s?Q(Q-x~fv&5U@LZ3>^xZj498YZL(AK7DPQl4)=NnIT#7P-qgC?xoML}`j&4< zD-3p(!yB|L%q1y16ILV{DQ~%A|dULkK dwI7yB0wYkB5xyFi}P>l3Eati5!z6u zyO6TNngt!<(}mUu6Nz)3tf3kmI|8ZM(VoL6&e@P-^}iO#l~ @N zG@2o67=(Exyb6eh5iMyAnyf5qOWH+l3s6hAy?MyxV-Uw0@x6HkL`u_Gj2TMscX;zC zvEIC`a{lsAb5wef6I6PRl~L8Ryd6sO)iZwu<;yO&HoTC-*t>r`rFW%c6`%F(FM|#9 zs0lW4Hz>>PlNX5BXW!isRelrlG~^r*aY!gL`G&C1;QM=4`~?`cR~31F?3Gt1Nq1v9 zsV5W3f7(-#{Ztz(hb&z??0rc^(6^^V?Q(m0P%hKZ#wI4IfYcq#$PBaF{KuI a7fMFxhhYAcbsoa;}$lv$~JHAk2UM-?pDwU70J6dZ7P{EH4m(V8w9e1 zInA11jJe?9NE*zdn(8mHOjMK$#n|+&!-e3}UH9V^tZH7(?~z7Rh91CQ8rF)BNed~T z0Y^JM>g4Du+l9po1 `l)UPdT) zB2roH50j_Rwg^6HTt*U7?0gAZXy+bX_8|C1sZ_cSC_9|Twr%wyG-0(^DYMykQ)tOS zOhFA5stD;vPTo85mMX@GpfBCFY0pzS@xfg%V8W!|%$EzITCpSu6i8QXPL!O)N1 uJgEFl6!( FYKoU}Zj9>rlF;&*o+SZw&*0+0h#?;5p+yG${> zms*u4OXJ^zK%Q{@rjj3^Rtl#H9L~8qMjFHDK;tJz44P>jx153J4xhDy UsOq>^!*S5y0v6mWQd&V`CEip0`i(5^4Gk(0vlW%#}SfWTiG@a4t&XQHQaR zh4|d%mDMgTELw#`S9)g*VI2 rn%$*XhdH3J+@TJSv;12D)p{*{hR@ST zsZFJXR}*b@g(+sOT=Yqu4aFJy!WtxF;}@~L-I3 ;NkDwKuj_-KVL!Jb5qk(LmI^$CviB=T~)1^O=w&Jr>|*Pe_P zC7-0P;>9a!cC)N}&{Lmzn(whqTeNNR5q3JGGx?Ef0L!E2(yR#9*swv{GGo o}5 zHZ;&zPJnK_*j?h&2#Syec_5LjV9CbFe}_2U>Q71sh=wA$gNibs7!jRN^JQFn2rw$r zSx|SANbNehOqKl`ty*?61f`C1lfrLgr#W*)l;0}J`Gdi>xRX+zCIIm)hSt!BdFy4? zZ_ZOr)2rI2r*DBBQw9f-#kY4T6(#2@x3Hr-0qHebnxH+DcE~cg@~Klou jH*gogUS{cY%?N6)1%%s6sA)j`At8_zvlp zWac (Vadfy0@_l jd+!_l{uk>febhE;JP za>aHSabtm?sf9d>SN!PcLPLn3Yw}?1>C&kPFH&gM;U23xV)?|1bXwI<6J_LMCXT#K zN;^%br^gAD=oDBJDp >?FR=Uk1ob_hNi9@Oh)0S$2_p4rCv%&V(_>al=`&bp2M+O zR|-D-!Jx5Rg=9NK j@OUV<~_V-U}MpE!H_ERs^%|hIL zg5T}J$Wd p8k@E+<*hfF_{my%g%27b)`WYC zhA?M1_kw&-J)RaPh;Rh1*AyXnAzd~GTZH+UZj)b}xt=OJ)0IlkWy0^lW~M5d#&^bA zTT91crGTN|OW0f+R!)~7sG1i~FkLaW?<-VN$qIS2T?W1llF-d_hkTrz@QH1Yzp*g0 zC&V-@ @1+_NVYXha3{E1u;A_vA-KD{yAve1ySoJluE8~UaCdjt;Q9`enaLz~ z?tQgZan8xg{(5)SuI`fV`nBv*Zx7GyKs4D74iyZA$fm%;9cRf^3Q*8U(VAoH4sPK; zESemW&hX+seACjW%oXNPa$_VEHB8@-HO`KC9G&Q34KeES{=!SZt-o?6)IhSr qDM5r*RYc zNrJ=jir^V tx06Kln<^6DE>ETTqi@7E8d|kqz_a&wd3=wWVtz^bah&u z_(l>YvER)R!|D+fn-N-L5_=JJk|VT{R-p}mp5Dnl%V%@jq_L68u+4>xK%XOFw_lhv zPlmB<9QSn@D+2NKDkNXGCH9 bry2t-@jWIw$R+k1KG$RVg|7DHQS=T|| z wY@IL~+~ex}lP 3YH2Sk_iT(=NwG>`FX2;`=Yo#K zQjyZ@vG*zDBXC3((PKV&cf$50_mxMJeznybTD(9O(k;^@u`fi~OzVV^@q4i5%!p(W zvN`rQXZm;&+@TVJm^+SEoHnf)Mno>1pWTriMfTQ=Ou(&$P?8pmF!))5Yk4S?8d$u` zib$_ER^#Ai=k~B7G2bNvq#$AUh8a1qFE8UJN9?IRv34O@cMEJhdiE?9JLZ0y*tMgu zIayio-j>F5l0pKEp&*mtp5Ig2EQT|NL5yw-MIAEi6Y)T<9z{#PHh=2%qSk=R(EFW~ zE{k{K{p=^8@w`(BF)?nSYu mOarm{C+nCJHDx^^@Mf5-ArgiE18W zzdKmr^Br_yZVH(+0V0syW0(&)G+yKrF2|pW5X2Zl?8w;@1TXW4_Qmoo9Kiw`f^omW z5WI>guJ6ZWTNZoY_Sz>_EUDjZa)VZtHULq6zGaOzrn-b6rz;7+k(W|XRVgIb?kqRX z8h+fLKVUC`Qyu;6eD5imjDRu z@)KXxJcvtKVx`y|mQ4B-2H+sKO$%ABZ( h1@|ls7#o-|sa> zy6vnu-Q6gyPDSy&;XS%n?LpyuH$Pq{$UCK>&PUc=4+sJEHWRSoAjTNvbljJiDt{8n zoliz#rF9H1mo;4J47rRS>E3oI@o08>ip5*6W)W~+lCg{yHxIaO#Enma1TzMP2xJ9L zL-GmiGb0xHh{a^`* {{kl5#H99jOEtV49o$+Nx|q+ zoO3ohcLg9WCrz9x$$3HkqPZ|Cu?4-M8+KX+_vI@eV-nvVjcLD)%(&4wS9asStPw1; zb}99RwSHXO3OEqVa%h<`S~)Omjt}akTK)jc-kk;SA^oMAENJnpzdJ^abDnwD=XJ$9 zzeprM3=U`Z_?(zY*mwo+r^*=@ k3^_8LDLvNH7 zQ~Q@QM*9=|Sf|4@El$ZZcUuE;@TYnyFJWtBzo;7EeMUJ&@2X)DO^ek6&RL|$1i6(= z5v@Q2>9ppz1<_R%Spog7IDLAot;wT?0F>tixe5Gv2K5PcMdE1Q u^39EENnVSru(fTr7A_C?SofiK7UmJS9*h<;j%limiabbPE*tw6}){v z)K*4@?x5*QqEd-*h!Lqq%=hTZi){MH yhAWwZz_?E(FEI*5ScR`oelNjYPB3#YTP-(g%t>UPM85V*qM&0Qq-Th zyHQdJZzQpIo1;mWS3-VJ+mQ@?673RNIsOnEN~O+Nm3|y6l{nU$PE2zropX$>+~ZHP z+NIfFzb$q zX=x{?HHot2eAH!Y*5VL6Vao~ip#x|*VS^*(@&F-;zg0;?6vZac{<2j&PkPqjlhw8R zaB9K)s(Ll3syqR$7iJt)39x;wwr FUxaSm=hgdfsV&?uldld7%yzplS}Mp$4Lp95nza;9x>ke2oBs;(bQ&m zHBZl@$UB21sI{&K7I1O2x$g3vLi*SEBkbX}c~y3E=A0gqm6koP0;lqj+iKmCSJY$H zTQyU11JoyG$qW>Tjh;S1eol^l(s&m%bdM60rLce3*sdBxzY2F@n%!{CTrth;YKop! z{1nVf%6+=1<8*i-GlG0ZF0eqWb@|m94>R)8ca^z8C~@^2Q~E1{B>Wzw9pr3xOcsGJ zLR9n^(S+=;97`PcBsCvOw>x7~ahh-)*6E(sPDuB-NZ+(w%80ST7Ftz)`#?RDc2W1v zC(>2o0a(~gD0#@-2IlI0s|HNI6GEbceKrKn7WwfpE@TVK`5t^mVe~1P`gBjmX-)gn zJxB8S^3m0t6JjUse(YCRJ7BH_Rtofc*}a(3r#E{tleK =`$ z-aOSlZ(#+~uNC3}m#J95{B~}k*YgyMJpc1bFdMCfQt1Xjz6%cxtB_Ei&{U-EKAuwj z`#W_L)T&~&F7o1dwhrnL&iqVqqO1#Zkk+d=E%*7J{5Q8~gZVo}z0c&4*AF@PK+nY* zXMRCb9Ed0poh%w%2vmbDOcMHzx1S~EY=hqx)B@EpBbMF{zx!xvqHpA4xlwXxtgIJ& z3T0?{V9+0l{)z^1p*Hw-B$+2c9j!OD_xQA-2aanZJkCJ55LQ?e`-8h@$KvZ=4uQou zc0bp$ruk28vxR4Y?Hkf`TPvziV}1y>^GMUL!mMQ%D_wDRe8Z}CQ%twKR5wos54I%i zHP?t-yzpMFoo~JCn=iEu5RJWv<%}J&$v)G$f75D>pTf-16aH54Lp3T-E@_twm46Mq zx-8w53d7S9)V5=>JG=X%;aGx*V|w-pXc8Kp9n!S}oFr}_v+=Zl2R$1DW-bq-g)Hx4 zvAn8v(8exA<)~s8nnAdolF&p1E& hS2ZOt~NwWv{PRz8ACpyVq z5!_)xe!5;NE6z?4`WED=-?3AK!_$*{xifAa%?S7X{6{zCF)BTp8-C67LROs}1q;$( zX4LhTwYXMKIMR(db7ib2x=jOdFB}#4ukDLUonqrf!t*)2`` SvQw =+2-`y`$=T_tSU zRqGGF9hV*QN<#QcV-ptM@Qf^yPlA}gENM1rOkK)2U);k{OQbHy?T!mvRm>8$%~eo+ zaG?1%=;;cS3u#1_v?5)qq5*~q&AzH%je>rs;DT}PNT)}X6VC@N^h+VkTeM1E?~#Gz z6;pgJAQe0y!y%G3G6B5e_%P-|p3CaA9qOG0Z86^++ObR%B2EcQX~ys>vdR )ZykY{^4eKrVD8%14}scrt4T(2)b R=kgl$Fo} @N<`0%qtT@SmE&v_I(ZU}u{gHh!ml~pU;Yl~8Z};vNh&VYoi286U>+FVOM9=C z`#7Lg*(epFESKrQ>t@bwGm)y~5bX5zNH$Y9CthiM{v!0y(px{6u+(XXuz*Il$ V`BUYYKG tX5a>8|_ic+=GpHjz^fC9m)Y@TABLufn10$tR(c#D=wytA7+M^dLLNrO4J47`0 zWk4S=;yLwNMBO8ZEA3hPla+|gJuAamY{2|8Jl5VCe%zRyK_0z2va{#iI+R!<3LR1| zOqZ4Y+VJH@c4nZX`u2z_H>2S_!bm#|_c+y%L{ebrC$I@h{_mVI@{JnN V%ZyMJ^*iNaNGsyn*ito52vU<|aZncoe;)I19 zIXLNN{UI7xGp9KIIo}p2a$ddcYvrX rO{4j^{6XkBrMcOnw5TG3Cq1A#PaY`^&0|no9DM!C-qE0OE@l~ z+#2+SN`4R@TEC9i1xtB8wMaFwV`6GzvZ;S_N$3uk5^86><8}Fpfgk3bYN6mWQB;FT zF_dE?+G=tg C=mn4}fv&qHBz+<8<7IJHKM>gnTdE+DVj7_3n5 zB?p@?a$Vk#0AU9>BBA=An+;pQe8fG^PYUl)0jN#uL^<}A$ts8>Y2frBQh)5D@?5ql zIKjxo+Acdf>R4!@>i+t91?g4jZQD56I|0n7W)!CFdb67>0W;{BQsfK5(kdD_ubF5R zd_*k`XmaX|FxZAo6Ng>D@JpDqv5;#8eOj5WS|hg5W;VqgpSUT<(SxAswdn~P7jxcq z$s2m8jjSV}e0^zcZE0k#6?N1vb~ILG?cp0P66c@3tOQ|sd{$BLcO79QCckT}4O}Zi znUK#cI?X^;)j;AOrI@UI(;=<=+C?={y^8`m2d@19vk`rZ#3(; Tg6IWRo`Jf(YXi4sVG#fGV^TPfrZKNaJZ3knD*sw8Qs3gjI?NqrPcd za1J^bb?-< mf+WZS9EeMvk!y@6aMB2EV3=ra-#YF8 Ot<^JtRNemkVXg$bT|_w%7WaVqEowO5 z$e><=3^N1iAj$oQvpkpHr#bs^y*?$ZnfBhntaF+iqC>Uf#W-l?#*R +v)8i mRz>qcloZuNsh;PEBS6&FdagTLvT<)6C6V8$EdnN zm|MaQA}WYGPAGs)_$WZ5GGQQw=;2fIH{*$@H&qM@;XX3p5YOoo)_LE(-N-ykYPrPz zOl)qDT9L>zuNA%v=c{AjAI=J`-$(NeU#%@n2ZC()wte!u;c#w0hDQeOsJdT4X&5!g z2}MpZ 3bbbydH|+f4>xP_^@mFRNtXtE; zU1s=7fSni&6(EErYXeXyDO3|3I?%I?2;d%pTb;m@4)Y#@KDz>^?!l+-c~*)SDByBo-X?EBo;YEslm!Q_hC&`G6HvCee!nvMpEB-Djt>*O{rD32;Z zDOmTrtg2kXlwwrFn*E7=zia@Ft?=_aLBt-YJilnUBtk#^V4dy-9D*|B5_zZP4f@Z3 z3<~j8Zei*OO#=r4azFwC`lrD4%gaUf`ZQ+tc`BCD3nH(dv z5 Z_2)ueov zk0;3T-mwQ{QCc$ruUIpk3+GTf)WZ0_a+gcC#%1|xYK2ZmJtraBQqrBkm-BAcBVLt| zandr^6TJZ4I7!bS9{wQ;>RwiIkFmM7;ojjvbofcqXHeyRr>M*|Gju2cK_@#(0FZ(T zVZxVMcb=xs)aZ?J9ITtJNfB#XKUs<}_Jp2*H>8=$91ql|$wk^LE8S*if%XV}WZg$^ znbrt7c{bUb7D#7nIw-Egh5~vV6=lpL0UhoWGKO&9gncdb_KzU~iTnIv)P<`z{T6a^ zTof%{vH8>wRML5leBxjXM2j(9BL*5lD7oE*-d^r15~7BVv`k1r8YUrpurn}p4M7z% zebB Z`sh%oW3akz%U)HQxx4I07oiz21nWQN7;W9M}9BM0tXguIg+ZzvzBZ zacI=vG~PtyEtmAf%k}K4!C{M q@x&=9AUol;$E<6^u zxg0uiXCeNQv5G3M(RLWW-G67*O&w1^hZap-TdKiX^_*_}E0lxJu6enHA6>VF9 z9{BFvSRKVRUv5HQqv-o=!ZNYhl;fwG5cDlXTvBUJV+C&Vv(kYDY+`Hkh~@!4{qViQ zX&Mf$#ICp*E?}hajp%D}{jQoJucte9%eMl^8N4Kt#~Q`;L5ItHaib7^>1F#TW%A`L zz+<>s!(#~j@mA(mk+MAVuxvXY-!~|1eN=RdKKPJUBzY@SwH^r>?ZBu?k$>?nd`(hW zYl2?8Rb$}2vVbJ72d@t+wqjSNdH+Ew^Yqrfld2{wHulKANHJ6CqkU u*){Q1v;9IibQkzpP+fQNKLRir~R#wFD;dG%?KDKU%t&xRI=;&nwcfmCc znDF3dR|hkX$|p{D<+Xb!OHR*6Qc054jeC*IZ+fe7s`8Wat2N``jIyDZJ(=J*Z#FJm zNVM`W l&NPs7eT6K|`x}#~F-~1FkJSm;{n_cO^+!8{>>A8qy6W zthg^C_(s)$_4#9?aR}FwnZyEZ-pP %WJ) =kK$%Zx%9QmoAFY1{F{WiOS0f-RqtX;8lw8I-8x>iN^7pI+5J;4($F4?jCF*? zG;SCHrQ8;x$Z2Zepk-XH2h;)n4Y6OHYq~z{9(V3RyTV)%hM%H{$FS5JGFJs{`f*vV z5^P)>cWi%rQ|Kp~=() O5FnsSK;H_mj16S@!QRxtkoJ$wZ|(K%Ol<&f z$lAvPx>gHpuUpV}Juxs~MBbbA9n~h19)FSqVd4WuS=g)%97VE3%oCwz7t=#|I!Vta z4z&vxQikx9IT=d*kVeQ_N-m=cqLp&4 f2Xdy>>W}Ew%kOH I?YNV;L(aR8uWQAt3qZBhd<8J~)+L@T^A ue%dX8>QO$Q1Regs-IA @c;;{!eIh<_4c|m14pW1DmX?*} z31lGWf$FvDadfx9s)eIuF9o(#(T7>p;n!9^)Fu`18W7uK2;a;%G9}kY1P+3Wfjx<5 zSb#rkQv<6 xO3r1uO{F*GE8dE z>w1;?9Yq9`7mrkHL$qinly%JJnnjyCv~ld5+ns7a+r$69&HACfS66{8rwlV97B0@M zH-kqZDBLr1hj7!`pD9yS_uyg3F8R4Z;|aB*nD^sbHs6{1KvA{qklCfcGhANuqGccF zZnO6fTK2rYGS_B3hhT(gCaIW^;l*<#JMKf@<^pqMHdp=XYqyRuP`sv^px{x>LeSnI zC~9m@HOWsJ_2+_^UwN~Qy+x{FAEwHm{8STYlA1#rHbMf=>(I%Am1ph$MGb+dvNou8 zn;%cARemQOA&qk(>M?)WJvt2}7>p3 D0rNc31rpB0tB<*Z8Q zQ8-(1j;WWzM{%NEP%t~JG;Y1!PBkr>LsIG$_R0)N5hwut)ca9WzQ>OuAY6k|*iH?q zL1Og~f|e;zd&D^LG&Z5}Q{rhnB~Rzd$|7CSX}6qV@YegyWg)RIrn(L}7=6`~q~5Vy zX86@@crSXj46p+J>qcHR1orJ3$$U6M`3tK-h(dc;bjW@7Z3loA$!PAG<)co6qngc@ zrm+4) k>9Qw$r6m~tX~WgIuWD8NlO(v)m$9oY`J zWImyHCB*Hq1NV?+Ov2C!iSYs^`P*`C7Bi mVGTc3 zLM=iFmX_KG=vTreP6lJ1oZla#w?~k$^2rw)ZUkt;f^b~#)qa>Flqa>ICf7q2dow{C z&ygBHvFl2~x$is4@vh~pdx0lGq`Nc^Y-O5Sl-W+p|KUCdE+q0W&6DWs&`v&WY)!zG zI7)puf*p3Guc2UtGk>{4h=4BTH!g3DbFj4#u((MzUEJ>DJB BMl(+ zINIX1t5jUZV-6$jifY@&YsP+<@96B{KHKh7tvF~ZQQi}dz_BKRpe}8(6nlA%9J9dY zwXV39uh}GGooaZ)fD006c*!v$pwbXf)9q}wT-kKKSi?hlB8Ky|?|zsO#@&rQeyFo# zuRccX-5qwOG-n7KzdNMkZ}dCZb->_UaKx7mcv_L|OUa)km&5i}pxH<#oXcAX@K8!# zn>>$thkw73)yl`6thwr4xC~D2Y(G53D>?3rweHATm}{|hBjp^vao=>vqH*-3DI$rQ z$j{1YkB0E{k6?beSCr8Pf5HU>^9Eq(^ZPj5-r<9Vq5Vrh=P77fr_!N#M8-Yq6sAmy zI=&nKEV?(rWNLkn2(JA#wUT;)*kI!6o(A6*%G+T|AlJ{FZRcijBh}=iD}g^P$!&|q z>jxBq^NwBvT%k;@Cb>Qf8U=|@Ps?<}{{2lInOk}dD)AC;Q_Qx`&=29LXwsq&QDP+o zmS$4g;$UD3(Xl?rQ5VaB9a7H5OkKRKr=^K -8XJ00J zF5T-fkiE9zOH48RuSRnC -#q}E=>*dVqY-~!2eKvy z+fjkHW;e5wL_TVvq5TT7c8A*mUuRcO2b_7jwRezcy y%-~@4LjUCxNHC>)iKE-oEI;J3iXDLU;QR3dYpT!f#itZk9gn)T^2>H;;CdLv9!u zQ&x>|sYezQ9MQqblPcb6`ShC`O;Ii5R!*>AP6<8B{knvZFR_Q_ORk$P*qi4gn9P!Z z*%@4s!>l4xZl g>Lb3iv z>vcRN0vE>>)4{Ykwp*?4bH<$HctFfM)3~=81IdgTY3UMDJRZ+%_l}pCSZ0qGw_o~B z;j{vUsOccDV0k7Jq`#JnhUT_2aiHg_J*0U=TX*wTW~rBSr*|5LB!eblK!WVhr00FE zb=iUKA9DetVY8bb(5vpfQ)p=|-_or24{Js9ca6;B-_(=rIcU$3AQ#-vRlDx#{ZRb~ zZn=buQ7&HC{k2^4Ycu&H8)5I3)2?T;XZ`we?)%uqzG{RqJ#ts?QPe>@%b-2w3!aRx zCAMHUrM+||on~^j-ei+Tov7p9wU9V6zL<4v9fHfY5@d265a!w8n5>Xx@&p8G)dX9J z+>KEjF`+n3php@RzFO<84dJthK$B!j=xdq$s>Nb6^mQAD_7}i0GvKMa)Z1!