bewajafarwah commited on
Commit
d708266
·
1 Parent(s): 51772b3

Create handler.py

Browse files
Files changed (3) hide show
  1. create_handler.ipynb +311 -0
  2. handler.py +18 -0
  3. requirements.txt +4 -0
create_handler.ipynb ADDED
@@ -0,0 +1,311 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "code",
5
+ "execution_count": 31,
6
+ "id": "2c7ff2e6-e80f-426f-8e12-5560c8181844",
7
+ "metadata": {},
8
+ "outputs": [
9
+ {
10
+ "name": "stdout",
11
+ "output_type": "stream",
12
+ "text": [
13
+ "Overwriting requirements.txt\n"
14
+ ]
15
+ }
16
+ ],
17
+ "source": [
18
+ "%%writefile requirements.txt\n",
19
+ "\n",
20
+ "tensorflow\n",
21
+ "tensorflow_hub\n",
22
+ "numpy"
23
+ ]
24
+ },
25
+ {
26
+ "cell_type": "markdown",
27
+ "id": "4b8f425e-3658-4834-806b-e34ab0b6e377",
28
+ "metadata": {},
29
+ "source": [
30
+ "## Create handler.py"
31
+ ]
32
+ },
33
+ {
34
+ "cell_type": "code",
35
+ "execution_count": 32,
36
+ "id": "b985fb50-8615-4ad3-9078-d7aed6170d22",
37
+ "metadata": {},
38
+ "outputs": [
39
+ {
40
+ "name": "stdout",
41
+ "output_type": "stream",
42
+ "text": [
43
+ "Writing handler.py\n"
44
+ ]
45
+ }
46
+ ],
47
+ "source": [
48
+ "%%writefile handler.py\n",
49
+ "from typing import Dict, List, Any\n",
50
+ "import tensorflow as tf\n",
51
+ "import tensorflow_hub as hub\n",
52
+ "import numpy as np\n",
53
+ "\n",
54
+ "\n",
55
+ "class EndpointHandler():\n",
56
+ " def __init__(self, path=\"\"):\n",
57
+ " self.model = hub.load(path)\n",
58
+ "\n",
59
+ " def __call__(self, data: Dict[str, Any]):\n",
60
+ " inputs = data.pop(\"inputs\")\n",
61
+ "\n",
62
+ " tf_inputs = tf.constant([inputs])\n",
63
+ " \n",
64
+ " embeddings = self.model(tf_inputs).numpy()\n",
65
+ "\n",
66
+ " return {\"embeddings\" : embeddings}"
67
+ ]
68
+ },
69
+ {
70
+ "cell_type": "markdown",
71
+ "id": "08df1053-f5ed-4b97-9eed-80de1ce5067d",
72
+ "metadata": {},
73
+ "source": [
74
+ "### Testing handler.py"
75
+ ]
76
+ },
77
+ {
78
+ "cell_type": "code",
79
+ "execution_count": 33,
80
+ "id": "e2b1a9a3-0877-4b99-a3dc-660cca179fe2",
81
+ "metadata": {},
82
+ "outputs": [],
83
+ "source": [
84
+ "from handler import EndpointHandler"
85
+ ]
86
+ },
87
+ {
88
+ "cell_type": "code",
89
+ "execution_count": 34,
90
+ "id": "4ef9588d-fd42-4a08-84cc-a468e8ce4c76",
91
+ "metadata": {},
92
+ "outputs": [],
93
+ "source": [
94
+ "my_handler = EndpointHandler(\".\")"
95
+ ]
96
+ },
97
+ {
98
+ "cell_type": "code",
99
+ "execution_count": 35,
100
+ "id": "b54e3e22-b8ab-48c1-897a-f5227e654418",
101
+ "metadata": {},
102
+ "outputs": [
103
+ {
104
+ "data": {
105
+ "text/plain": [
106
+ "{'embeddings': array([[-6.38618842e-02, -5.60701340e-02, 8.80729500e-03,\n",
107
+ " -1.84101313e-02, 7.13475198e-02, 2.02693827e-02,\n",
108
+ " 1.28884157e-02, -1.65059287e-02, -1.34211220e-02,\n",
109
+ " 1.61119737e-02, -4.11391743e-02, -7.60739222e-02,\n",
110
+ " -2.84048934e-02, 9.03438032e-02, 3.30174752e-02,\n",
111
+ " -7.52730742e-02, -3.86739038e-02, 1.16735389e-02,\n",
112
+ " -2.05741525e-02, -2.98651885e-02, 9.08416063e-02,\n",
113
+ " -1.15630552e-02, 6.09043576e-02, -2.75867200e-03,\n",
114
+ " -3.57089788e-02, -1.46616105e-04, 7.94809982e-02,\n",
115
+ " -2.14933977e-02, -5.86399063e-02, 5.07251807e-02,\n",
116
+ " 5.11886738e-02, 1.67617593e-02, 5.59785590e-02,\n",
117
+ " 6.05545053e-03, -2.37577595e-02, 6.48119077e-02,\n",
118
+ " 3.59224379e-02, -8.05240199e-02, -4.69894744e-02,\n",
119
+ " -5.26328571e-02, 5.60352094e-02, -2.66882498e-02,\n",
120
+ " -1.91916525e-02, -4.36573252e-02, -2.54593436e-02,\n",
121
+ " 6.69385167e-03, -8.13172683e-02, -3.30777210e-03,\n",
122
+ " 5.02799563e-02, -2.37464011e-02, 1.60790775e-02,\n",
123
+ " -9.61152613e-02, -3.38250175e-02, -6.24065138e-02,\n",
124
+ " -3.14857578e-03, 2.97343358e-03, -6.13441654e-02,\n",
125
+ " -6.06122380e-03, -6.72408938e-02, -2.24464294e-02,\n",
126
+ " 1.09977170e-03, -8.33165739e-03, 5.54226376e-02,\n",
127
+ " 3.74794230e-02, 5.34481183e-02, 8.12325925e-02,\n",
128
+ " -5.10729738e-02, -5.21319211e-02, 4.89682816e-02,\n",
129
+ " -9.53373220e-03, -4.82620150e-02, -7.13461339e-02,\n",
130
+ " -3.41942869e-02, 5.18783199e-05, 2.96740793e-02,\n",
131
+ " -3.79280634e-02, 4.69394401e-02, -3.68763022e-02,\n",
132
+ " -9.62105393e-03, 8.74482468e-02, 2.19798507e-03,\n",
133
+ " 1.46100279e-02, -2.51451265e-02, -1.11135412e-02,\n",
134
+ " -2.37401724e-02, 8.83443281e-02, 8.40191788e-04,\n",
135
+ " 6.77078217e-03, 3.90070267e-02, -5.09247817e-02,\n",
136
+ " 1.47083430e-02, -3.21213529e-02, -2.81066149e-02,\n",
137
+ " -2.05882527e-02, -1.01753874e-02, 1.00308945e-02,\n",
138
+ " 3.23943719e-02, 1.60407610e-02, -5.44607230e-02,\n",
139
+ " -1.83375645e-02, 4.90580574e-02, -6.39856383e-02,\n",
140
+ " 8.41196254e-02, 8.65320116e-03, -5.91718256e-02,\n",
141
+ " -3.60078481e-03, 1.08947791e-02, 3.19511518e-02,\n",
142
+ " -5.52999973e-02, -7.49197900e-02, 1.23983119e-02,\n",
143
+ " 1.35759339e-02, -6.55890927e-02, 2.08705920e-03,\n",
144
+ " 4.53382581e-02, 6.71765208e-02, -3.43479887e-02,\n",
145
+ " -5.43706566e-02, -3.78407128e-02, 3.52338068e-02,\n",
146
+ " 1.01285130e-02, 3.29742432e-02, 7.10868277e-03,\n",
147
+ " 5.06936759e-02, -2.50235088e-02, -6.54057413e-02,\n",
148
+ " -3.67045170e-03, -2.29272433e-02, -1.11249415e-02,\n",
149
+ " -5.05047776e-02, -4.22961228e-02, -2.52721217e-02,\n",
150
+ " 1.95384119e-02, -2.04200149e-02, -5.31497132e-03,\n",
151
+ " -2.65222206e-03, -6.03403850e-03, -6.97805136e-02,\n",
152
+ " -7.55326152e-02, -4.95653562e-02, 1.48480171e-02,\n",
153
+ " -9.51599237e-03, 7.54951611e-02, -3.15400921e-02,\n",
154
+ " 2.60999016e-02, 1.57189388e-02, -3.83675843e-02,\n",
155
+ " -4.91280816e-02, 2.16713287e-02, 4.01114896e-02,\n",
156
+ " 7.27256313e-02, -6.56260476e-02, 1.50800357e-02,\n",
157
+ " 3.11511476e-02, -5.20362034e-02, -3.76183800e-02,\n",
158
+ " 5.92499748e-02, -6.58487231e-02, 6.23106062e-02,\n",
159
+ " -2.44395845e-02, -6.55296370e-02, 3.41404192e-02,\n",
160
+ " -2.14561895e-02, 2.86226328e-02, -3.21095847e-02,\n",
161
+ " -5.63615151e-02, 7.92533625e-03, 7.16060121e-03,\n",
162
+ " 3.73968817e-02, -7.35585019e-03, 5.04050180e-02,\n",
163
+ " 6.39567971e-02, -6.00322336e-02, 3.64031754e-02,\n",
164
+ " -6.12869337e-02, -5.00979163e-02, -9.90612879e-02,\n",
165
+ " 1.00846700e-02, -1.76257435e-02, -7.49612004e-02,\n",
166
+ " 1.61921140e-02, 8.98217969e-03, 6.40472099e-02,\n",
167
+ " -2.42239926e-02, -2.89563555e-02, -3.97555679e-02,\n",
168
+ " 8.16970970e-03, -2.70547792e-02, 7.05470964e-02,\n",
169
+ " -2.22390667e-02, -5.54174930e-02, -7.95605965e-03,\n",
170
+ " 1.75718274e-02, 6.25856072e-02, 2.99073104e-02,\n",
171
+ " -1.68004446e-02, 1.26824751e-02, 3.16002704e-02,\n",
172
+ " -8.82261898e-03, 9.35365970e-04, -2.64625214e-02,\n",
173
+ " -5.59498183e-02, -6.60482328e-04, 1.00295261e-01,\n",
174
+ " 8.29918310e-02, -3.86280902e-02, 2.93994937e-02,\n",
175
+ " 5.37856370e-02, -3.37565690e-02, 2.97576264e-02,\n",
176
+ " 2.05340032e-02, -1.41943535e-02, 3.88650745e-02,\n",
177
+ " 5.39953634e-03, 4.60990556e-02, -1.22225275e-02,\n",
178
+ " -5.85758733e-03, -4.87738177e-02, -5.34552988e-03,\n",
179
+ " -6.55712001e-03, 3.99394482e-02, 8.70548596e-04,\n",
180
+ " -6.61476003e-03, -8.30480829e-03, -4.70203497e-02,\n",
181
+ " 1.68560352e-02, 9.58336052e-03, 7.39986748e-02,\n",
182
+ " 2.78366432e-02, -9.39370878e-03, 1.65861268e-02,\n",
183
+ " 1.51891969e-02, -3.57329510e-02, 1.04213893e-01,\n",
184
+ " 4.82481830e-02, 2.06456985e-02, 6.20921254e-02,\n",
185
+ " 5.71969338e-02, -1.96378436e-02, -4.93823960e-02,\n",
186
+ " -1.29423570e-02, -2.92951837e-02, 7.17525333e-02,\n",
187
+ " -1.99193414e-03, -4.54097241e-02, 5.39039150e-02,\n",
188
+ " 5.53756487e-04, 9.96242836e-03, 1.01977051e-03,\n",
189
+ " 3.97638138e-03, 2.05007251e-02, 6.91060051e-02,\n",
190
+ " -3.96103878e-03, 6.93629980e-02, -4.78343964e-02,\n",
191
+ " -6.23790175e-03, -1.25477891e-02, -1.36287278e-02,\n",
192
+ " 7.05109164e-02, -7.27866068e-02, 1.11142071e-02,\n",
193
+ " 2.88422909e-02, -6.51319511e-03, 7.91240335e-02,\n",
194
+ " -1.96910109e-02, -2.11064201e-02, 4.92021702e-02,\n",
195
+ " 1.66654252e-02, 4.45106886e-02, 6.86665997e-02,\n",
196
+ " 1.47306116e-03, 1.02839239e-01, 3.39936614e-02,\n",
197
+ " -3.80188413e-02, -8.56462959e-03, 5.31456992e-02,\n",
198
+ " 3.27443592e-02, 5.06719910e-02, -4.58625983e-03,\n",
199
+ " 4.83239554e-02, 5.55443317e-02, 1.96650755e-02,\n",
200
+ " -5.58687113e-02, 1.19118358e-03, 2.17798837e-02,\n",
201
+ " 2.14426350e-02, 8.93302448e-03, 4.77050282e-02,\n",
202
+ " -1.31443907e-02, -6.38769660e-03, -3.07055209e-02,\n",
203
+ " 8.23085681e-02, -7.15371743e-02, -3.28739174e-02,\n",
204
+ " -7.68511891e-02, 4.41441499e-02, 3.46030779e-02,\n",
205
+ " -1.76018011e-02, 4.64682700e-03, 4.64191288e-03,\n",
206
+ " 5.25099598e-02, 4.45008054e-02, 3.42465155e-02,\n",
207
+ " -4.74393219e-02, 4.12840396e-02, 2.35501472e-02,\n",
208
+ " 5.29031344e-02, 2.48254761e-02, 5.46017177e-02,\n",
209
+ " 6.63400069e-02, -4.64303941e-02, -4.82162312e-02,\n",
210
+ " -5.16245663e-02, -4.52832095e-02, 2.86522899e-02,\n",
211
+ " 4.16258126e-02, -6.03711009e-02, 2.48461217e-02,\n",
212
+ " 8.74402188e-03, 6.34721220e-02, 2.45075095e-02,\n",
213
+ " -3.27476226e-02, 7.30014145e-02, 2.72609275e-02,\n",
214
+ " 5.31357303e-02, 2.61461921e-02, -1.34768244e-02,\n",
215
+ " -7.39023788e-04, 1.62974652e-02, 4.02425528e-02,\n",
216
+ " -6.08978271e-02, -8.49616900e-02, 6.60142675e-03,\n",
217
+ " -4.80187573e-02, -4.01894283e-03, -4.48198318e-02,\n",
218
+ " 4.28065583e-02, -2.36454997e-02, -1.30836926e-02,\n",
219
+ " 5.24602979e-02, -6.29893094e-02, -4.04343680e-02,\n",
220
+ " 1.09793851e-02, 9.07455683e-02, 4.16134857e-03,\n",
221
+ " -6.10412359e-02, -5.74455932e-02, -2.64727287e-02,\n",
222
+ " 3.06933038e-02, -7.76471123e-02, -5.67813925e-02,\n",
223
+ " -4.86874245e-02, 6.60434291e-02, -2.61605568e-02,\n",
224
+ " 6.50321599e-03, -4.35626321e-02, -8.22137669e-02,\n",
225
+ " 3.06092147e-02, 6.03883751e-02, -1.02413511e-02,\n",
226
+ " 7.62378722e-02, 5.34201264e-02, 7.04755187e-02,\n",
227
+ " 4.35605496e-02, 2.98955757e-02, 6.68623820e-02,\n",
228
+ " -4.99848351e-02, -7.72842169e-02, 2.17487589e-02,\n",
229
+ " -4.93893512e-02, 3.67546901e-02, -4.83933277e-02,\n",
230
+ " -1.56711265e-02, -3.72047126e-02, -2.25009937e-02,\n",
231
+ " 2.38574250e-03, 3.86715643e-02, -6.70911893e-02,\n",
232
+ " 7.22568408e-02, -7.52794370e-02, -4.19727005e-02,\n",
233
+ " 1.07458588e-02, -9.13840625e-03, -1.36360200e-02,\n",
234
+ " -5.76996580e-02, 4.38108705e-02, -9.88253355e-02,\n",
235
+ " 1.19302478e-02, -7.33771846e-02, 1.84499584e-02,\n",
236
+ " 8.83622542e-02, 2.76121125e-02, -3.29356611e-04,\n",
237
+ " 2.99687888e-02, 4.21559066e-02, 3.26356292e-02,\n",
238
+ " 3.20299231e-02, 1.99725684e-02, 2.74404194e-02,\n",
239
+ " -9.97937471e-02, -5.75609989e-02, 7.98051730e-02,\n",
240
+ " 6.09716913e-03, -4.65309992e-02, 1.44803273e-02,\n",
241
+ " 2.47639567e-02, 1.23211090e-02, 2.67113894e-02,\n",
242
+ " 5.66028841e-02, 4.75516878e-02, 1.12994853e-02,\n",
243
+ " 6.97028711e-02, -4.68268804e-02, 1.55281592e-02,\n",
244
+ " -3.30719799e-02, 2.43020058e-02, -2.71150153e-02,\n",
245
+ " -4.46864478e-02, -3.53742987e-02, 8.66447538e-02,\n",
246
+ " -2.79876925e-02, 4.05103266e-02, -4.32950631e-02,\n",
247
+ " 5.47960354e-03, 3.25292610e-02, 9.13429335e-02,\n",
248
+ " -5.65412752e-02, -2.53838263e-02, -1.74512248e-02,\n",
249
+ " 6.28704671e-03, -2.81407572e-02, 1.05455322e-02,\n",
250
+ " 9.28175356e-03, 1.04218021e-01, 1.28911464e-02,\n",
251
+ " 2.26218663e-02, -6.14499375e-02, 6.08403124e-02,\n",
252
+ " -2.87174433e-02, -2.09461115e-02, 2.16598995e-02,\n",
253
+ " 2.14588945e-04, -3.82573418e-02, 8.49555433e-02,\n",
254
+ " 2.12465413e-02, 2.31495183e-02, 1.26516279e-02,\n",
255
+ " -2.41054539e-02, 5.19053191e-02, -6.98594898e-02,\n",
256
+ " -1.03113716e-02, 4.49783690e-02, 7.64112920e-02,\n",
257
+ " -5.85161708e-02, 1.40788062e-02, 6.12505898e-03,\n",
258
+ " -4.89492118e-02, 7.53777921e-02, 6.95027411e-02,\n",
259
+ " -1.13729248e-02, 1.61414128e-02, -1.40337991e-02,\n",
260
+ " 2.01608278e-02, -6.42464915e-03, -7.78486580e-02,\n",
261
+ " -2.80261710e-02, 1.30765559e-02, -1.80012751e-02,\n",
262
+ " 1.26200626e-02, 5.54392636e-02, -1.22511880e-02,\n",
263
+ " 8.27244446e-02, 7.47900829e-02, 8.27715546e-02,\n",
264
+ " -1.74215604e-02, -9.39086229e-02, 7.36060785e-04,\n",
265
+ " 1.37486709e-02, 4.42838520e-02, 3.22246999e-02,\n",
266
+ " 7.14082494e-02, -7.96129704e-02, 8.87517259e-02,\n",
267
+ " 1.13732917e-02, 1.11427344e-02, -2.65292898e-02,\n",
268
+ " -3.10965069e-02, -2.50859018e-02, 9.31987166e-03,\n",
269
+ " 2.10333429e-02, -5.63491248e-02, 3.15304250e-02,\n",
270
+ " 5.41400746e-04, 2.05659792e-02, 4.16046660e-03,\n",
271
+ " -8.87878425e-03, -3.30568664e-02, -5.51915839e-02,\n",
272
+ " -2.67360453e-02, -2.68022288e-02, 3.01523339e-02,\n",
273
+ " -3.00039742e-02, 7.04308823e-02, -5.55729456e-02,\n",
274
+ " 4.30530794e-02, 1.63732804e-02, 1.99681725e-02,\n",
275
+ " -2.68624425e-02, -4.53806436e-03, 3.34180817e-02,\n",
276
+ " -2.40517855e-02, 5.28096315e-03]], dtype=float32)}"
277
+ ]
278
+ },
279
+ "execution_count": 35,
280
+ "metadata": {},
281
+ "output_type": "execute_result"
282
+ }
283
+ ],
284
+ "source": [
285
+ "data = {\"inputs\" : \"Today was a good day!\"}\n",
286
+ "my_handler(data)"
287
+ ]
288
+ }
289
+ ],
290
+ "metadata": {
291
+ "kernelspec": {
292
+ "display_name": "Python 3 (ipykernel)",
293
+ "language": "python",
294
+ "name": "python3"
295
+ },
296
+ "language_info": {
297
+ "codemirror_mode": {
298
+ "name": "ipython",
299
+ "version": 3
300
+ },
301
+ "file_extension": ".py",
302
+ "mimetype": "text/x-python",
303
+ "name": "python",
304
+ "nbconvert_exporter": "python",
305
+ "pygments_lexer": "ipython3",
306
+ "version": "3.11.5"
307
+ }
308
+ },
309
+ "nbformat": 4,
310
+ "nbformat_minor": 5
311
+ }
handler.py ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from typing import Dict, List, Any
2
+ import tensorflow as tf
3
+ import tensorflow_hub as hub
4
+ import numpy as np
5
+
6
+
7
+ class EndpointHandler():
8
+ def __init__(self, path=""):
9
+ self.model = hub.load(path)
10
+
11
+ def __call__(self, data: Dict[str, Any]):
12
+ inputs = data.pop("inputs")
13
+
14
+ tf_inputs = tf.constant([inputs])
15
+
16
+ embeddings = self.model(tf_inputs).numpy()
17
+
18
+ return {"embeddings" : embeddings}
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+
2
+ tensorflow
3
+ tensorflow_hub
4
+ numpy