در این مطلب، ویدئو 79 – Microservice API برای استخراج متن از تصاویر آپلود شده – سری آموزشی Python & Django 3.2 با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:19:18
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,160 –> 00:00:01,680
از آنجایی که ما توانایی
2
00:00:01,680 –> 00:00:04,240
آپلود واقعی یک تصویر و ذخیره آن تصویر را داریم،
3
00:00:04,240 –> 00:00:06,879
اکنون زمان آن رسیده است که آن
4
00:00:06,879 –> 00:00:09,730
تصویر را با استفاده از یادگیری ماشینی
5
00:00:09,730 –> 00:00:11,759
[موسیقی]
6
00:00:11,759 –> 00:00:14,480
7
00:00:14,480 –> 00:00:17,279
تجزیه و تحلیل
8
00:00:17,279 –> 00:00:20,240
انجام دهیم، اکنون سوال بزرگ اینجاست که این الگوریتم تحلیل یادگیری ماشین را کجا قرار دهیم جنگو
9
00:00:20,240 –> 00:00:23,439
یا آیا ما از یک سرویس شخص ثالث
10
00:00:23,439 –> 00:00:24,640
در مورد خود استفاده می کنیم، این همان کاری است که می
11
00:00:24,640 –> 00:00:26,560
خواهیم انجام دهیم، از یک api میکروسرویس شخص ثالث استفاده
12
00:00:26,560 –> 00:00:29,119
می کنیم که در واقع آن را
13
00:00:29,119 –> 00:00:30,800
کنترل می کنیم و من این کار را در یک سری دیگر انجام دادم
14
00:00:30,800 –> 00:00:32,880
اما ایده در اینجا ما در واقع
15
00:00:32,880 –> 00:00:34,719
آن فایل را می گیریم و آن را به آن
16
00:00:34,719 –> 00:00:36,800
میکروسرویس می فرستیم که میکروسرویس قرار است چیزهایی را
17
00:00:36,800 –> 00:00:39,600
برای ما ارسال کند که بر
18
00:00:39,600 –> 00:00:43,200
اساس آن فایل است، بنابراین داده های مربوط به فایل
19
00:00:43,200 –> 00:00:45,120
درست است، بنابراین این در واقع
20
00:00:45,120 –> 00:00:47,280
برای تجزیه و تحلیل روی
21
00:00:47,280 –> 00:00:49,520
تصاویر یا هر نوع یادگیری ماشینی بسیار رایج
22
00:00:49,520 –> 00:00:51,840
است. در واقع قرار دادن آن و بسته بندی آن در یک
23
00:00:51,840 –> 00:00:54,079
سرویس میکرو به طوری که اگر آن سرویس
24
00:00:54,079 –> 00:00:56,879
از کار بیفتد، روی بقیه
25
00:00:56,879 –> 00:00:58,399
پروژه ما تأثیری نداشته باشد، در این مورد، اکنون
26
00:00:58,399 –> 00:01:00,000
پروژه trijango ما است،
27
00:01:00,000 –> 00:01:02,320
این یک دلیل دیگر این است
28
00:01:02,320 –> 00:01:04,720
که ممکن است برای استفاده مجدد از این
29
00:01:04,720 –> 00:01:07,600
میکروسرویس در بسیاری از پروژههای دیگر
30
00:01:07,600 –> 00:01:09,840
یا شاید حتی میخواهید دسترسی به
31
00:01:09,840 –> 00:01:12,320
این میکروسرویس را بفروشید تا توسعهدهندگان دیگر
32
00:01:12,320 –> 00:01:14,799
نیز بتوانند از آن استفاده کنند.
33
00:01:14,799 –> 00:01:17,200
34
00:01:17,200 –> 00:01:18,640
35
00:01:18,640 –> 00:01:20,640
یک سری api
36
00:01:20,640 –> 00:01:23,280
میکروسرویس که می توانید با آنها تماس بگیرید و می توانید
37
00:01:23,280 –> 00:01:24,640
برخی از داده های
38
00:01:24,640 –> 00:01:26,400
داده را به درستی انجام دهید تا بتوانید تصاویر را تجزیه و تحلیل
39
00:01:26,400 –> 00:01:28,159
کنید و بتوانید انواع کارهای بسیار
40
00:01:28,159 –> 00:01:29,200
جالب را انجام دهید،
41
00:01:29,200 –> 00:01:31,119
بنابراین در واقع ایده خوبی است که
42
00:01:31,119 –> 00:01:33,280
نه تنها بدانید چگونه یک میکرو را به یک
43
00:01:33,280 –> 00:01:36,159
سرویس میکرو تبدیل کنید. api و همچنین نحوه کار
44
00:01:36,159 –> 00:01:38,079
با آن و این همان کاری است که ما اکنون انجام خواهیم داد، بنابراین اولین کاری که باید انجام دهیم
45
00:01:38,079 –> 00:01:39,920
این است که ما در واقع باید
46
00:01:39,920 –> 00:01:41,280
47
00:01:41,280 –> 00:01:43,920
این میکروسرویس سریع api را به طور خاص
48
00:01:43,920 –> 00:01:45,119
برای جنگو
49
00:01:45,119 –> 00:01:47,600
به کار گیریم تا بتواند ocr
50
00:01:47,600 –> 00:01:50,880
ocr را کنترل کند، فقط یک اصطلاح برای استخراج متن از
51
00:01:50,880 –> 00:01:52,640
هر تصویر مشخصی از جمله این تصویر
52
00:01:52,640 –> 00:01:55,040
درست اینجاست، بنابراین الگوریتم یادگیری ماشین واقعی
53
00:01:55,040 –> 00:01:57,360
توسط
54
00:01:57,360 –> 00:01:59,840
یک تیم کاملاً دیگر که گوگل اجرا می کند طراحی شده است که
55
00:01:59,840 –> 00:02:02,479
به ما امکان می دهد در واقع متن را از
56
00:02:02,479 –> 00:02:04,560
یک تصویر به روشی واقعاً مؤثر استخراج
57
00:02:04,560 –> 00:02:06,560
کنیم که خواهیم دید. در یک لحظه
58
00:02:06,560 –> 00:02:08,080
اما کاری که میخواهید انجام دهید این است که در
59
00:02:08,080 –> 00:02:09,360
اینجا وارد github شوید
60
00:02:09,360 –> 00:02:12,400
و روی deploy to digitalocean کلیک کنید
61
00:02:12,400 –> 00:02:14,160
و کاری که قرار است انجام دهد این است که به
62
00:02:14,160 –> 00:02:16,239
شما اجازه میدهد این میکروسرویس را گسترش دهید تا اکنون
63
00:02:16,239 –> 00:02:18,640
تحت کنترل شما باشد، اکنون میتوانید همیشه
64
00:02:18,640 –> 00:02:20,640
برنامه را فورک کنید و سپس آن را گسترش دهید
65
00:02:20,640 –> 00:02:23,200
یا فقط می توانید این Deploy را با یک کلیک انجام دهید
66
00:02:23,200 –> 00:02:24,400
و سپس می خواهید
67
00:02:24,400 –> 00:02:27,280
هر چیزی که این توکن است را در اینجا تغییر دهید،
68
00:02:27,280 –> 00:02:29,200
در این مورد کاری که می خواهم انجام دهم این است که
69
00:02:29,200 –> 00:02:31,680
می خواهم پایتون را باز کنم و در واقع
70
00:02:31,680 –> 00:02:33,360
توکن را ایجاد کنم. من ادامه میدهم و
71
00:02:33,360 –> 00:02:36,959
پایتون c را انجام میدهیم، اسرار را وارد میکنیم
72
00:02:36,959 –> 00:02:38,400
و سپس یک نقطه ویرگول انجام میدهیم و ما میخواهیم
73
00:02:38,400 –> 00:02:41,680
74
00:02:41,680 –> 00:02:46,160
نشانی اینترنتی زیرخط زیرخط امن را چاپ کنیم و 32 ضربه
75
00:02:46,160 –> 00:02:47,440
وارد
76
00:02:47,440 –> 00:02:49,360
میکنیم و
77
00:02:49,360 –> 00:02:51,920
یک پرانتز گم شده در آنجا میگیریم. ما دوباره این کار را انجام می دهیم
78
00:02:51,920 –> 00:02:54,000
و به آنجا می رویم، بنابراین این
79
00:02:54,000 –> 00:02:55,760
نشانه ای است که می خواهیم آن را قرار دهیم، می
80
00:02:55,760 –> 00:02:57,680
خواهیم جلو برویم و آن را رمزگذاری کنیم و سپس
81
00:02:57,680 –> 00:02:59,440
گزینه بعدی را بزنیم و من در واقع به
82
00:02:59,440 –> 00:03:01,280
شما اجازه می دهم ساخت کل این چیز را به پایان برسانید.
83
00:03:01,280 –> 00:03:02,959
درست است، بنابراین من در واقع قصد ندارم
84
00:03:02,959 –> 00:03:04,560
آن را بسازم زیرا قبلاً آن را
85
00:03:04,560 –> 00:03:06,319
دارم و دقیقاً اینجاست و من قبلاً یک
86
00:03:06,319 –> 00:03:08,879
توکن برای آن نیز دارم، بنابراین وقتی
87
00:03:08,879 –> 00:03:11,360
آن توکن را دارید، مطمئن شوید که وارد
88
00:03:11,360 –> 00:03:12,879
emv خود شدهاید
89
00:03:12,879 –> 00:03:15,519
و کاری که من میخواهم اینجا انجام دهم این است که بگویم
90
00:03:15,519 –> 00:03:19,280
هدر توکن ocr و api
91
00:03:19,280 –> 00:03:22,159
و البته این میکروسرویس ماست
92
00:03:22,159 –> 00:03:24,080
و شما میخواهید هر
93
00:03:24,080 –> 00:03:26,799
توکنی را که قرار است استفاده کنید بدهید، بنابراین
94
00:03:26,799 –> 00:03:29,519
خود توکن api واقعی در مورد
95
00:03:29,519 –> 00:03:32,319
من درست است، بنابراین بعد از اینکه من واقعاً آن
96
00:03:32,319 –> 00:03:35,599
یکی را وارد مرحله تولید کردم و همراه با
97
00:03:35,599 –> 00:03:37,360
آن متغیرهای محیطی که ما فقط آن را
98
00:03:37,360 –> 00:03:40,400
درست تنظیم کردیم، این محیط است. متغیر
99
00:03:40,400 –> 00:03:41,599
درست در اینجا،
100
00:03:41,599 –> 00:03:43,840
زمانی که همه این کارها را
101
00:03:43,840 –> 00:03:45,040
انجام دادیم، به تولید میرسد،
102
00:03:45,040 –> 00:03:46,560
چیزی شبیه به این خواهد شد و شما
103
00:03:46,560 –> 00:03:49,280
یک نقطه پایانی api واقعی خواهید داشت، بنابراین مطمئن شوید
104
00:03:49,280 –> 00:03:52,400
که آن نقطه پایانی api را نیز
105
00:03:52,400 –> 00:03:54,159
بگیرید، بنابراین من ادامه میدهم و نقطه پایانی ocr api را انجام دهید
106
00:03:54,159 –> 00:03:56,080
همچنین
107
00:03:56,080 –> 00:03:57,680
اکنون ممکن است این چیزی باشد که شما
108
00:03:57,680 –> 00:03:59,599
لزوماً آن را در متغیرهای محیط قرار ندهید،
109
00:03:59,599 –> 00:04:01,280
من فقط این کار را انجام می دهم تا مطمئن شوم که
110
00:04:01,280 –> 00:04:03,760
این موارد را به روشی ساده و آسان پیگیری
111
00:04:03,760 –> 00:04:05,680
112
00:04:05,680 –> 00:04:07,360
می کنم، بنابراین مطمئناً باید مطمئن شوم
113
00:04:07,360 –> 00:04:09,519
که من سرویس میکرو اجرا می شود g و
114
00:04:09,519 –> 00:04:11,360
اگر چیزی شبیه به این را دیدید به این معنی است
115
00:04:11,360 –> 00:04:13,280
که در حال اجرا است اگر اجرا نمی شود،
116
00:04:13,280 –> 00:04:15,200
قطعاً خود سری را بررسی کنید
117
00:04:15,200 –> 00:04:16,639
و یاد بگیرید که چگونه این
118
00:04:16,639 –> 00:04:19,279
میکروسرویس را از ابتدا با
119
00:04:19,279 –> 00:04:21,680
میکروسرویس سریع api برای پروژه جنگو
120
00:04:21,680 –> 00:04:24,240
در وب سایت یا کانال یوتیوب ما بسازید.
121
00:04:24,240 –> 00:04:26,160
البته اگر در
122
00:04:26,160 –> 00:04:28,560
github و python مهارت دارید، احتمالاً
123
00:04:28,560 –> 00:04:30,880
میتوانید خود کد را بخوانید و در واقع
124
00:04:30,880 –> 00:04:34,160
آن را بسازید، واقعاً آنقدرها هم سخت نیست، خوب است، بنابراین
125
00:04:34,160 –> 00:04:35,520
اکنون که این موارد را داریم، بیایید
126
00:04:35,520 –> 00:04:37,199
جلوتر برویم و به دید خود بازگردیم و به این
127
00:04:37,199 –> 00:04:39,680
فکر کنیم که چگونه اکنون می خواهیم به این نزدیک شویم،
128
00:04:39,680 –> 00:04:41,759
من در واقع می توانم این تابع را
129
00:04:41,759 –> 00:04:44,560
دقیقاً در اینجا اجرا کنم، می توانم آن را دقیقاً به این صورت اجرا کنم
130
00:04:44,560 –> 00:04:47,680
و سپس شیء خود را به روز کنم و تمام این کارها را انجام
131
00:04:47,680 –> 00:04:50,320
دهم یا کاری که می توانم انجام دهم این است که می توانم از یک
132
00:04:50,320 –> 00:04:52,560
بسته شخص ثالث دیگر
133
00:04:52,560 –> 00:04:56,080
به نام celery بنابراین celery همراه با
134
00:04:56,080 –> 00:04:58,240
ابزاری به نام
135
00:04:58,240 –> 00:05:00,320
redis به شما امکان میدهد تا کارهای خود
136
00:05:00,320 –> 00:05:02,720
را برای زمان دیگری بارگذاری کنید،
137
00:05:02,720 –> 00:05:04,479
من یک سری کامل دارم که
138
00:05:04,479 –> 00:05:07,199
این زمان و وظایف 2 را پوشش میدهد که در آن به شما نشان میدهد
139
00:05:07,199 –> 00:05:09,520
چگونه کرفس را با جنگو ادغام کنید.
140
00:05:09,520 –> 00:05:10,800
برای پوشش دادن آن در این یکی،
141
00:05:10,800 –> 00:05:12,639
زیرا قطعاً خارج
142
00:05:12,639 –> 00:05:14,800
از چارچوب مجموعه است، این فقط
143
00:05:14,800 –> 00:05:17,199
آن را در زمان دیگری
144
00:05:17,199 –> 00:05:19,520
بارگذاری می کند، زیرا ما از htmx استفاده می کنیم، اگرچه احتمالاً
145
00:05:19,520 –> 00:05:21,360
نیازی به تخلیه آن نداریم مگر اینکه
146
00:05:21,360 –> 00:05:24,960
بخواهیم واقعاً سرعت کاربر خود را افزایش دهیم. تعامل
147
00:05:24,960 –> 00:05:26,479
اما من می خواهم ادامه دهم و آن را
148
00:05:26,479 –> 00:05:27,280
149
00:05:27,280 –> 00:05:30,160
دقیقاً به این شکل رها کنم و اکنون در داخل دستور
150
00:05:30,160 –> 00:05:31,639
العمل ها یک فایل جدید به نام
151
00:05:31,639 –> 00:05:33,360
services.pi ایجاد
152
00:05:33,360 –> 00:05:35,120
می کنم و کاری که می خواهم انجام دهم این است که
153
00:05:35,120 –> 00:05:36,880
واقعاً می
154
00:05:36,880 –> 00:05:39,039
خواهم متن خود را ارسال یا استخراج کنم
155
00:05:39,039 –> 00:05:41,360
بنابراین متن را
156
00:05:41,360 –> 00:05:42,720
از طریق سرویس
157
00:05:42,720 –> 00:05:44,320
ocr استخراج کنید
158
00:05:44,320 –> 00:05:45,440
159
00:05:45,440 –> 00:05:46,400
خوب
160
00:05:46,400 –> 00:05:48,240
و در اینجا این چیزی است که من می خواهم انجام دهم،
161
00:05:48,240 –> 00:05:50,840
می خواهم در واقع ابتدا تصویر را دریافت کنم
162
00:05:50,840 –> 00:05:53,360
سپس ادامه می دهیم
163
00:05:53,360 –> 00:05:56,000
و تصویر را
164
00:05:56,319 –> 00:05:57,919
از طریق
165
00:05:57,919 –> 00:06:00,319
پست http ارسال می کنیم
166
00:06:00,319 –> 00:06:01,919
و سپس می رویم پیش بروید و
167
00:06:01,919 –> 00:06:03,680
168
00:06:03,680 –> 00:06:06,000
یک دیکشنری را برگردانید و
169
00:06:06,000 –> 00:06:08,240
نوعی از داده های json را برگردانید، بنابراین
170
00:06:08,240 –> 00:06:10,400
نحوه انجام این کار با استفاده از بسته ای
171
00:06:10,400 –> 00:06:13,120
به نام درخواست های پایتون است،
172
00:06:13,120 –> 00:06:14,560
بنابراین باید آن را نصب کنیم، بنابراین بیایید این
173
00:06:14,560 –> 00:06:17,199
کار را با نصب پیپ
174
00:06:17,199 –> 00:06:19,680
و درخواست ها انجام دهیم
175
00:06:19,680 –> 00:06:21,680
و طبیعتاً باید مطمئن شوید که
176
00:06:21,680 –> 00:06:23,919
ما درخواست های پایتون را
177
00:06:23,919 –> 00:06:26,000
در داخل داریم ما requests.txt برای زمانی
178
00:06:26,000 –> 00:06:28,080
که وارد تولید میشویم
179
00:06:28,080 –> 00:06:30,400
و سپس به سرویسهای خود باز میگردیم تا
180
00:06:30,400 –> 00:06:33,039
واقعاً دادهها را ارسال کنیم، فقط چیزی
181
00:06:33,039 –> 00:06:35,520
شبیه به این requests را اجرا
182
00:06:35,520 –> 00:06:36,960
میکنیم. نقطه پایانی را ارسال میکنیم
183
00:06:36,960 –> 00:06:39,600
و سپس هر فایلی را که خود فایل است
184
00:06:39,600 –> 00:06:40,800
185
00:06:40,800 –> 00:06:43,280
و در api درخواست ما
186
00:06:43,280 –> 00:06:45,520
در واقع باید باشد، فایل میکنیم. فایلی که
187
00:06:45,520 –> 00:06:47,440
در پروژه جنگو ما نامیده میشود، خود نمای واقعی
188
00:06:47,440 –> 00:06:49,120
به
189
00:06:49,120 –> 00:06:50,160
190
00:06:50,160 –> 00:06:53,120
دلیل فیلد، تصویر نامیده میشود، بنابراین
191
00:06:53,120 –> 00:06:55,120
در api واقعی که از آن استفاده میکنیم،
192
00:06:55,120 –> 00:06:57,280
باید فایل نامیده شود،
193
00:06:57,280 –> 00:06:58,880
سپس میرویم و شی فایل خود را تنظیم میکنیم
194
00:06:58,880 –> 00:07:01,520
یا چیزی شبیه به آن در اینجا
195
00:07:01,520 –> 00:07:03,599
و سپس ما نیاز داریم که هدرها را تنظیم کنیم و سپس
196
00:07:03,599 –> 00:07:07,039
r.json را خوب برمی گردانیم، پس چگونه می توانیم
197
00:07:07,039 –> 00:07:08,960
در واقع همه این موارد را
198
00:07:08,960 –> 00:07:10,880
ابتدا با import OS به خوبی
199
00:07:10,880 –> 00:07:12,240
تنظیم کنیم و قبلاً این متغیرهای محیطی را تنظیم کرده ایم،
200
00:07:12,240 –> 00:07:14,319
بنابراین من فقط کپی می کنم آنها را
201
00:07:14,319 –> 00:07:15,520
سریعاً
202
00:07:15,520 –> 00:07:18,080
بچسبانید و آنها را در اینجا
203
00:07:18,080 –> 00:07:20,880
204
00:07:20,880 –> 00:07:22,639
205
00:07:22,639 –> 00:07:24,639
206
00:07:24,639 –> 00:07:25,599
207
00:07:25,599 –> 00:07:28,599
بچسبانید، بنابراین اولین هدر نشانه ما است و این به سادگی می شود os.environ.get
208
00:07:29,120 –> 00:07:31,840
و سپس
209
00:07:31,840 –> 00:07:36,560
os dot environ dot نقطه پایانی را دریافت کنید،
210
00:07:38,080 –> 00:07:41,199
بنابراین در این مورد من ادامه می دهم و می گویم اگر
211
00:07:41,199 –> 00:07:42,800
نقطه پایانی هیچ
212
00:07:42,800 –> 00:07:44,720
بازگشتی نباشد n
213
00:07:44,720 –> 00:07:49,360
پس اگر توکن انجام شد نیز اوکی برمی گردد،
214
00:07:50,080 –> 00:07:52,319
بنابراین در اصل می گوییم هی،
215
00:07:52,319 –> 00:07:54,319
ما لزوماً مجبور نیستیم این کار را انجام دهیم
216
00:07:54,319 –> 00:07:56,160
تا بقیه آن درست
217
00:07:56,160 –> 00:07:57,440
کار
218
00:07:57,440 –> 00:07:59,599
کند، بنابراین نقطه پایانی واقعی اکنون
219
00:07:59,599 –> 00:08:01,199
به اینجا می رود
220
00:08:01,199 –> 00:08:03,120
و سپس سرآیند توکن کاری که
221
00:08:03,120 –> 00:08:05,440
میخواهیم انجام دهیم این است که بگوییم هدر برابر
222
00:08:05,440 –> 00:08:07,280
با فرهنگ لغت هدر است.
223
00:08:07,280 –> 00:08:09,120
هدر مجوز هدری است که
224
00:08:09,120 –> 00:08:11,440
باید برای این نقطه پایانی
225
00:08:11,440 –> 00:08:13,840
استفاده کنیم و یک نشانه حامل
226
00:08:13,840 –> 00:08:17,199
همراه با هدر نشانه واقعی خواهد بود
227
00:08:17,199 –> 00:08:20,160
و سپس این دو سرصفحه را اضافه میکنیم.
228
00:08:20,160 –> 00:08:22,720
بنابراین این تابع به طور کلی
229
00:08:22,720 –> 00:08:24,319
آماده استفاده است البته اکنون باید در واقع
230
00:08:24,319 –> 00:08:26,400
شی فایل را انجام دهیم که
231
00:08:26,400 –> 00:08:28,479
شی فایل یا حداقل
232
00:08:28,479 –> 00:08:30,800
نوع شی فایل چیست،
233
00:08:30,800 –> 00:08:33,559
بنابراین اگر از
234
00:08:33,559 –> 00:08:35,839
django.cor.files وارد
235
00:08:35,839 –> 00:08:37,599
کنیم، فایل را وارد می کنیم. کلاس
236
00:08:37,599 –> 00:08:39,519
این واقعاً یک چیز اختیاری است که
237
00:08:39,519 –> 00:08:42,080
میتوانید انجام دهید، فقط به اضافه کردن
238
00:08:42,080 –> 00:08:45,040
نکات نوع برای این شی فایل است،
239
00:08:45,040 –> 00:08:47,600
واقعاً این موضوع را تأیید نمیکند،
240
00:08:47,600 –> 00:08:50,080
اکنون این شی فایل دقیقاً همان چیزی است که
241
00:08:50,080 –> 00:08:51,320
در داخل
242
00:08:51,320 –> 00:08:54,959
obj.image در واقع obj.image
243
00:08:54,959 –> 00:08:57,760
یک نسخه تصویر است. از this but
244
00:08:57,760 –> 00:08:59,040
obj.image یک
245
00:08:59,040 –> 00:09:00,560
شی فایل است
246
00:09:00,560 –> 00:09:01,360
که
247
00:09:01,360 –> 00:09:02,560
در ریشه اش خوب است،
248
00:09:02,560 –> 00:09:04,399
به این معنی که ما واقعاً می توانیم
249
00:09:04,399 –> 00:09:06,959
این را به این سرویس منتقل کنیم، بنابراین من با وارد کردن آن، این
250
00:09:06,959 –> 00:09:08,480
کار را ادامه می دهم و این کار را انجام می
251
00:09:08,480 –> 00:09:11,519
دهم، بنابراین کمی به بالا اسکرول کنید
252
00:09:11,519 –> 00:09:14,920
و from.services import را انجام دهید.
253
00:09:17,120 –> 00:09:21,440
متن را از طریق سرویس ocr استخراج
254
00:09:21,440 –> 00:09:22,880
می کنیم و سپس ما
255
00:09:22,880 –> 00:09:24,640
این
256
00:09:24,640 –> 00:09:26,320
257
00:09:26,320 –> 00:09:27,279
متن را
258
00:09:27,279 –> 00:09:28,160
از طریق
259
00:09:28,160 –> 00:09:31,519
سرویس ocr می نامیم
260
00:09:31,760 –> 00:09:33,920
okay و سپس من می خواهم
261
00:09:33,920 –> 00:09:35,920
نتیجه را برگردانم، بنابراین ادامه دهید و بگویم نتیجه
262
00:09:35,920 –> 00:09:37,440
برابر با آن
263
00:09