{"id":23335,"date":"2026-05-01T14:15:16","date_gmt":"2026-05-01T14:15:16","guid":{"rendered":"https:\/\/umang.pk\/2026\/05\/01\/scikit-learn%d8%8c-aws-lambda%d8%8c-%d8%a7%d9%88%d8%b1-api-%da%af%db%8c%d9%b9-%d9%88%db%92-%da%a9%d8%a7-%d8%a7%d8%b3%d8%aa%d8%b9%d9%85%d8%a7%d9%84-%da%a9%d8%b1%d8%aa%db%92-%db%81%d9%88%d8%a6%db%92\/"},"modified":"2026-05-01T14:15:18","modified_gmt":"2026-05-01T14:15:18","slug":"scikit-learn%d8%8c-aws-lambda%d8%8c-%d8%a7%d9%88%d8%b1-api-%da%af%db%8c%d9%b9-%d9%88%db%92-%da%a9%d8%a7-%d8%a7%d8%b3%d8%aa%d8%b9%d9%85%d8%a7%d9%84-%da%a9%d8%b1%d8%aa%db%92-%db%81%d9%88%d8%a6%db%92","status":"publish","type":"post","link":"https:\/\/umang.pk\/en_us\/2026\/05\/01\/scikit-learn%d8%8c-aws-lambda%d8%8c-%d8%a7%d9%88%d8%b1-api-%da%af%db%8c%d9%b9-%d9%88%db%92-%da%a9%d8%a7-%d8%a7%d8%b3%d8%aa%d8%b9%d9%85%d8%a7%d9%84-%da%a9%d8%b1%d8%aa%db%92-%db%81%d9%88%d8%a6%db%92\/","title":{"rendered":"Scikit-Learn\u060c AWS Lambda\u060c \u0627\u0648\u0631 API \u06af\u06cc\u0679 \u0648\u06d2 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0633\u0631\u0648\u0631 \u0644\u06cc\u0633 \u0627\u0633\u067e\u0627\u0645 \u06a9\u0644\u0627\u0633\u06cc\u0641\u0627\u0626\u0631 \u06a9\u0648 \u06a9\u06cc\u0633\u06d2 \u062a\u0639\u06cc\u0646\u0627\u062a \u06a9\u06cc\u0627 \u062c\u0627\u0626\u06d2"},"content":{"rendered":"\n<div id=\"\">\n<p>\u0622\u062c \u06a9\u06cc \u0688\u06cc\u062c\u06cc\u0679\u0644 \u062f\u0646\u06cc\u0627 \u0645\u06cc\u06ba\u060c \u0627\u0633\u067e\u0627\u0645 \u0627\u0628 \u0635\u0631\u0641 \u0627\u06cc\u06a9 \u067e\u0631\u06cc\u0634\u0627\u0646\u06cc \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u060c \u0628\u0644\u06a9\u06c1 \u0627\u06cc\u06a9 \u0628\u0691\u06be\u062a\u0627 \u06c1\u0648\u0627 \u0633\u06cc\u06a9\u0648\u0631\u0679\u06cc \u062e\u0637\u0631\u06c1 \u06c1\u06d2\u06d4 \u0627\u0633 \u0645\u0633\u0626\u0644\u06d2 \u06a9\u0648 \u062d\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0688\u0648\u06cc\u0644\u067e\u0631\u0632 \u0627\u06a9\u062b\u0631 \u0627\u06cc\u0633\u06d2 \u0630\u06c1\u06cc\u0646 \u0641\u0644\u0679\u0631\u0632 \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0645\u0634\u06cc\u0646 \u0644\u0631\u0646\u0646\u06af \u06a9\u0627 \u0641\u0627\u0626\u062f\u06c1 \u0627\u0679\u06be\u0627\u062a\u06d2 \u06c1\u06cc\u06ba \u062c\u0648 \u062c\u0627\u0626\u0632 \u0627\u0648\u0631 \u0628\u062f\u0646\u06cc\u062a\u06cc \u067e\u0631 \u0645\u0628\u0646\u06cc \u0627\u06cc \u0645\u06cc\u0644\u0632 \u0645\u06cc\u06ba \u0641\u0631\u0642 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<p>\u0644\u06cc\u067e \u0679\u0627\u067e \u067e\u0631 \u0645\u0634\u06cc\u0646 \u0644\u0631\u0646\u0646\u06af \u0645\u0627\u0688\u0644 \u0628\u0646\u0627\u0646\u0627 \u0646\u0633\u0628\u062a\u0627\u064b \u0622\u0633\u0627\u0646 \u06c1\u06d2\u060c \u0644\u06cc\u06a9\u0646 \u0627\u0635\u0644 \u0686\u06cc\u0644\u0646\u062c \u0622\u062e\u0631\u06cc \u0645\u0631\u0627\u062d\u0644 \u0645\u06cc\u06ba \u06c1\u06d2\u06d4 \u0627\u0633 \u06a9\u0627 \u0645\u0637\u0644\u0628 \u06c1\u06d2 \u06a9\u06c1 \u0627\u0633 \u0645\u0627\u0688\u0644 \u06a9\u0648 \u0627\u06cc\u06a9 \u0642\u0627\u0628\u0644 \u062a\u0648\u0633\u06cc\u0639\u060c \u067e\u06cc\u062f\u0627\u0648\u0627\u0631 \u06a9\u06d2 \u0644\u06cc\u06d2 \u062a\u06cc\u0627\u0631 \u0646\u0638\u0627\u0645 \u0645\u06cc\u06ba \u062a\u0639\u06cc\u0646\u0627\u062a \u06a9\u0631\u0646\u0627 \u062c\u0633 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0635\u0627\u0631\u0641 \u062f\u0631\u062d\u0642\u06cc\u0642\u062a \u062a\u0639\u0627\u0645\u0644 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<p>\u0627\u0633 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u0645\u06cc\u06ba\u060c \u06c1\u0645 \u0646\u06d2 \u062a\u0639\u06cc\u0646\u0627\u062a\u06cc \u06a9\u06d2 \u0644\u06cc\u06d2 \u0645\u0627\u0688\u0644 \u0688\u06cc\u0648\u0644\u067e\u0645\u0646\u0679 \u06a9\u06d2 \u0644\u06cc\u06d2 Scikit-learn \u06a9\u0648 AWS Lambda\u060c Amazon S3\u060c \u0627\u0648\u0631 Amazon API \u06af\u06cc\u0679 \u0648\u06d2 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0645\u0644\u0627 \u06a9\u0631 \u0627\u06cc\u06a9 \u0627\u06cc\u0646\u0688 \u0679\u0648 \u0627\u06cc\u0646\u0688 \u0633\u0631\u0648\u0631 \u0644\u06cc\u0633 \u0633\u067e\u06cc\u0645 \u06a9\u0644\u0627\u0633\u06cc\u0641\u0627\u0626\u0631 \u0628\u0646\u0627\u06cc\u0627 \u06c1\u06d2\u06d4 \u0646\u062a\u06cc\u062c\u06c1 \u0627\u06cc\u06a9 \u06c1\u0644\u06a9\u0627 \u067e\u06be\u0644\u06a9\u0627\u060c \u0642\u0627\u0628\u0644 \u062a\u0648\u0633\u06cc\u0639 API \u06c1\u06d2 \u062c\u0648 \u0622\u067e \u06a9\u0648 \u062d\u0642\u06cc\u0642\u06cc \u0648\u0642\u062a \u0645\u06cc\u06ba \u067e\u06cc\u063a\u0627\u0645\u0627\u062a \u06a9\u06cc \u062f\u0631\u062c\u06c1 \u0628\u0646\u062f\u06cc \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0633\u0633\u0679\u0645 \u06a9\u0648 \u0645\u0627\u0688\u06cc\u0648\u0644\u0631 \u0627\u0648\u0631 \u0644\u0627\u06af\u062a \u0633\u06d2 \u0645\u0648\u062b\u0631 \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0688\u06cc\u0632\u0627\u0626\u0646 \u06a9\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2\u060c \u062c\u0633 \u0633\u06d2 \u0645\u0627\u0688\u0644\u0632 \u06a9\u0648 \u0622\u0632\u0627\u062f\u0627\u0646\u06c1 \u0637\u0648\u0631 \u067e\u0631 \u062f\u0648\u0628\u0627\u0631\u06c1 \u062a\u0631\u0628\u06cc\u062a \u0627\u0648\u0631 \u0644\u0627\u0626\u06cc\u0648 API \u06a9\u0648 \u0645\u062a\u0627\u062b\u0631 \u06a9\u06cc\u06d2 \u0628\u063a\u06cc\u0631 \u0627\u067e \u0688\u06cc\u0679 \u06a9\u06cc\u0627 \u062c\u0627 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4 &quot;\u0645\u0641\u062a \u0622\u0626\u06cc \u0641\u0648\u0646&#8221; \u06af\u06be\u0648\u0679\u0627\u0644\u0648\u06ba \u06a9\u0627 \u067e\u062a\u06c1 \u0644\u06af\u0627\u0646\u06d2 \u0633\u06d2 \u0644\u06d2 \u06a9\u0631 \u0641\u0634\u0646\u06af \u06a9\u06cc \u06a9\u0648\u0634\u0634\u0648\u06ba \u06a9\u06cc \u0646\u0634\u0627\u0646\u062f\u06c1\u06cc \u062a\u06a9\u060c \u06cc\u06c1 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679\u0633 \u06cc\u06c1 \u0638\u0627\u06c1\u0631 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba \u06a9\u06c1 \u0645\u0634\u06cc\u0646 \u0644\u0631\u0646\u0646\u06af \u06a9\u06d2 \u062a\u062c\u0631\u0628\u0627\u062a \u0627\u0648\u0631 \u062d\u0642\u06cc\u0642\u06cc \u062f\u0646\u06cc\u0627 \u06a9\u06cc \u062a\u0639\u06cc\u0646\u0627\u062a\u06cc\u0648\u06ba \u06a9\u06d2 \u062f\u0631\u0645\u06cc\u0627\u0646 \u062e\u0644\u0627 \u06a9\u0648 \u06a9\u06cc\u0633\u06d2 \u067e\u064f\u0631 \u06a9\u06cc\u0627 \u062c\u0627\u0626\u06d2\u06d4<\/p>\n<h3 id=\"heading-table-of-contents\">\u0627\u0646\u0688\u06cc\u06a9\u0633<\/h3>\n<h2 id=\"heading-1-prerequisites\">1. \u0634\u0631\u0637\u06cc\u06ba<\/h2>\n<ol>\n<li>\n<p><strong>\u0628\u0646\u06cc\u0627\u062f\u06cc \u0645\u06c1\u0627\u0631\u062a\u06cc\u06ba:<\/strong> Python \u0645\u06cc\u06ba \u0628\u0646\u06cc\u0627\u062f\u06cc \u0645\u06c1\u0627\u0631\u062a \u0627\u0648\u0631 \u0645\u0634\u06cc\u0646 \u0644\u0631\u0646\u0646\u06af \u06a9\u06d2 \u062a\u0635\u0648\u0631\u0627\u062a \u062c\u06cc\u0633\u06d2 \u062f\u0631\u062c\u06c1 \u0628\u0646\u062f\u06cc \u06a9\u06cc \u0633\u0645\u062c\u06be\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>AWS \u0627\u06a9\u0627\u0624\u0646\u0679:<\/strong> Lambda\u060c S3\u060c \u0627\u0648\u0631 API \u06af\u06cc\u0679 \u0648\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u062c\u0627\u0632\u062a\u0648\u06ba \u06a9\u06d2 \u0633\u0627\u062a\u06be AWS \u0627\u06a9\u0627\u0624\u0646\u0679 \u062a\u06a9 \u0631\u0633\u0627\u0626\u06cc \u062d\u0627\u0635\u0644 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0645\u0627\u062d\u0648\u0644:<\/strong> Python 3.11 \u0644\u0627\u0626\u0628\u0631\u06cc\u0631\u06cc\u0648\u06ba \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0646\u0635\u0628 \u06a9\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2 \u062c\u06cc\u0633\u06d2 scikit-learn\u060c pandas \u0627\u0648\u0631 joblib\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>AWS CLI:<\/strong> \u0641\u0627\u0626\u0644 \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0622\u067e \u06a9\u06d2 \u0645\u0642\u0627\u0645\u06cc \u06a9\u0645\u067e\u06cc\u0648\u0679\u0631 \u067e\u0631 \u062a\u0631\u062a\u06cc\u0628 \u062f\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>HuggingFace \u0627\u06a9\u0627\u0624\u0646\u0679:<\/strong> \u0622\u067e \u0645\u06cc\u0631\u06d2 \u0627\u06a9\u0627\u0624\u0646\u0679 \u0633\u06d2 \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a \u0645\u0627\u0688\u0644\u0632 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<\/ol>\n<h2 id=\"heading-2-building-the-brain-the-model\">2. \u062f\u0645\u0627\u063a \u06a9\u06cc \u062a\u0639\u0645\u06cc\u0631: \u0627\u06cc\u06a9 \u0645\u0627\u0688\u0644<\/h2>\n<p><em>\u062a\u0635\u0648\u06cc\u0631 \u06a9\u0631\u06cc\u0688\u0679:<\/em> <em>\u0627\u0633\u0679\u06cc\u0648 \u0627\u06d2 \u062c\u0627\u0646\u0633\u0646<\/em> <em>\u06a9\u0648<\/em> <em>\u06a9\u06be\u0648\u0644\u0646\u0627<\/em><\/p>\n<p>\u0627\u0633 \u0645\u0646\u0635\u0648\u0628\u06d2 \u06a9\u06d2 \u0645\u0631\u06a9\u0632 \u0645\u06cc\u06ba \u0627\u06cc\u06a9 \u0632\u06cc\u0631 \u0646\u06af\u0631\u0627\u0646\u06cc \u0633\u06cc\u06a9\u06be\u0646\u06d2 \u06a9\u0627 \u0637\u0631\u06cc\u0642\u06c1 \u06c1\u06d2\u06d4 \u0641\u0636\u0648\u0644 \u0633\u0645\u062c\u06be\u06d2 \u062c\u0627\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u0627\u0644\u0641\u0627\u0638 \u06a9\u06cc \u0648\u0636\u0627\u062d\u062a \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2\u060c \u06c1\u0645 \u06a9\u0645\u067e\u06cc\u0648\u0679\u0631\u0632 \u06a9\u0648 \u0688\u06cc\u0679\u0627 \u0633\u06cc\u0679\u0633 \u0627\u0648\u0631 \u0627\u0644\u06af\u0648\u0631\u062a\u06be\u0645 \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba \u062a\u0627\u06a9\u06c1 \u0648\u06c1 \u062e\u0648\u062f \u06c1\u06cc \u0627\u0633\u067e\u0627\u0645 \u06a9\u06d2 \u0646\u0645\u0648\u0646\u0648\u06ba \u06a9\u0648 \u0633\u06cc\u06a9\u06be \u0633\u06a9\u06cc\u06ba \u0627\u0648\u0631 \u0627\u0646 \u06a9\u06cc \u0634\u0646\u0627\u062e\u062a \u06a9\u0631 \u0633\u06a9\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-1-vectorization-turning-text-into-math\">1. \u0648\u06cc\u06a9\u0679\u0631\u0627\u0626\u0632\u06cc\u0634\u0646: \u0645\u062a\u0646 \u06a9\u0648 \u0631\u06cc\u0627\u0636\u06cc \u0645\u06cc\u06ba \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0631\u06cc\u06ba\u06d4<\/h3>\n<p>\u0645\u0634\u06cc\u0646 \u0644\u0631\u0646\u0646\u06af \u0645\u0627\u0688\u0644 \u0646\u06c1\u06cc\u06ba \u06a9\u0631 \u0633\u06a9\u062a\u06d2 <strong>\u067e\u0691\u06be\u06cc\u06ba<\/strong> \u0645\u062a\u0646 \u0639\u062f\u062f\u06cc \u0627\u0646 \u067e\u0679 \u062f\u0631\u06a9\u0627\u0631 \u06c1\u06d2\u06d4 \u0627\u0633 \u06a9\u0648 \u062d\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u06c1\u0645 \u0646\u06d2 \u0679\u0631\u0645 \u0641\u0631\u06cc\u06a9\u0648\u0626\u0646\u0633\u06cc-\u0627\u0646\u0648\u0631\u0633 \u062f\u0633\u062a\u0627\u0648\u06cc\u0632 \u0641\u0631\u06cc\u06a9\u0648\u0626\u0646\u0633\u06cc (TF-IDF) \u0648\u06cc\u06a9\u0679\u0631\u0627\u0626\u0632\u0631 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u06cc\u0627\u06d4<\/p>\n<pre><code class=\"language-python\">feature_extraction = TfidfVectorizer(min_df=1, stop_words=\"english\", lowercase=True)\nX_train_features = feature_extraction.fit_transform(X_train\n<\/code><\/pre>\n<p>\u0631\u06cc\u0627\u0636\u06cc \u06a9\u0627 \u0641\u0627\u0631\u0645\u0648\u0644\u0627 \u06c1\u06d2:<\/p>\n<p>$$w_{i,j} = tf_{i,j} times log left(frac{N}{df_i} right)$$<\/p>\n<p>TF-IDF \u0627\u0635\u0637\u0644\u0627\u062d \u06a9\u06cc \u062a\u0639\u0631\u06cc\u0641:<\/p>\n<ul>\n<li>\n<p><strong>w\u1d62,\u2c7c (\u0648\u0632\u0646):<\/strong> \u062f\u0633\u062a\u0627\u0648\u06cc\u0632 \u0645\u06cc\u06ba \u06a9\u0633\u06cc \u0645\u062e\u0635\u0648\u0635 \u0644\u0641\u0638 \u06a9\u06d2 \u0644\u06cc\u06d2 \u062d\u062a\u0645\u06cc \u0627\u06c1\u0645\u06cc\u062a \u06a9\u0627 \u0633\u06a9\u0648\u0631\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>tf\u1d62,\u2c7c (\u0679\u0631\u0645 \u0641\u0631\u06cc\u06a9\u0648\u0626\u0646\u0633\u06cc):<\/strong> \u0627\u06cc\u06a9 \u0627\u06cc \u0645\u06cc\u0644 \u0645\u06cc\u06ba \u0627\u06cc\u06a9 \u0644\u0641\u0638 \u06a9\u062a\u0646\u06cc \u0628\u0627\u0631 \u0638\u0627\u06c1\u0631 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>N (\u06a9\u0644 \u062f\u0633\u062a\u0627\u0648\u06cc\u0632\u0627\u062a):<\/strong> \u0688\u06cc\u0679\u0627 \u0633\u06cc\u0679 \u0645\u06cc\u06ba \u062a\u0645\u0627\u0645 \u0627\u06cc \u0645\u06cc\u0644\u0632 \u06a9\u06cc \u06a9\u0644 \u062a\u0639\u062f\u0627\u062f\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>df\u1d62 (\u062f\u0633\u062a\u0627\u0648\u06cc\u0632 \u06a9\u06cc \u0641\u0631\u06cc\u06a9\u0648\u0626\u0646\u0633\u06cc):<\/strong> \u0627\u0633 \u0645\u062e\u0635\u0648\u0635 \u0644\u0641\u0638 \u067e\u0631 \u0645\u0634\u062a\u0645\u0644 \u0645\u062e\u062a\u0644\u0641 \u0627\u06cc \u0645\u06cc\u0644\u0632 \u06a9\u06cc \u062a\u0639\u062f\u0627\u062f\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>log(N\/df\u1d62)(IDF):<\/strong> \u0633\u0632\u0627\u0626\u06cc\u06ba \u062c\u0648 \u0639\u0627\u0645 \u0627\u0644\u0641\u0627\u0638 \u06a9\u06d2 \u0627\u0633\u06a9\u0648\u0631 \u06a9\u0648 \u06a9\u0645 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba \u062c\u06cc\u0633\u06d2 <strong>\u06a9\u06c1<\/strong> \u06cc\u0627 <strong>\u06c1\u06d2<\/strong> \u06c1\u0631 \u062c\u06af\u06c1 \u0646\u0638\u0631 \u0622\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<\/ul>\n<p>\u0639\u0627\u0645 \u0627\u0644\u0641\u0627\u0638 \u06a9\u0648 \u06c1\u0679\u0627 \u06a9\u0631 \u0627\u067e\u0646\u06d2 \u0688\u06cc\u0679\u0627 \u06a9\u0648 \u0635\u0627\u0641 \u06a9\u0631\u06cc\u06ba\u060c \u062a\u0645\u0627\u0645 \u0645\u062a\u0646 \u06a9\u0648 \u0645\u0633\u062a\u0642\u0644 \u0645\u0632\u0627\u062c\u06cc \u06a9\u06d2 \u0644\u06cc\u06d2 \u0686\u06be\u0648\u0679\u06d2 \u062d\u0631\u0648\u0641 \u0645\u06cc\u06ba \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0631\u06cc\u06ba\u060c \u0627\u0648\u0631 \u0627\u06a9\u062b\u0631 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06c1\u0648\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u0627\u0644\u0641\u0627\u0638 \u06a9\u0648 \u06a9\u0645 \u0627\u06c1\u0645\u06cc\u062a \u062f\u06cc\u06ba \u0627\u0648\u0631 \u0646\u0627\u06cc\u0627\u0628\u060c \u0628\u0627\u0645\u0639\u0646\u06cc \u0627\u0644\u0641\u0627\u0638 \u06a9\u0648 \u0632\u06cc\u0627\u062f\u06c1 \u0627\u06c1\u0645\u06cc\u062a \u062f\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-2-training-the-logistic-regression-engine\">2. \u062a\u0631\u0628\u06cc\u062a: \u0644\u0627\u062c\u0633\u0679\u06a9 \u0631\u06cc\u06af\u0631\u06cc\u0634\u0646 \u0627\u0646\u062c\u0646<\/h3>\n<p>\u06c1\u0645 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u06cc\u06ba \u06af\u06d2 <strong>\u0644\u0627\u062c\u0633\u0679\u06a9 \u0631\u06cc\u06af\u0631\u06cc\u0634\u0646<\/strong> \u06cc\u06c1\u0627\u06ba\u060c \u06cc\u06c1 \u0627\u06cc\u06a9 \u062f\u0631\u062c\u06c1 \u0628\u0646\u062f\u06cc \u0627\u0644\u06af\u0648\u0631\u062a\u06be\u0645 \u06c1\u06d2 \u062c\u0648 \u06a9\u0633\u06cc \u0646\u062a\u06cc\u062c\u06c1 \u06a9\u06d2 \u0627\u0645\u06a9\u0627\u0646 \u06a9\u06cc \u067e\u06cc\u0634\u06cc\u0646 \u06af\u0648\u0626\u06cc \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0627\u0633 \u0645\u0631\u062d\u0644\u06d2 \u0645\u06cc\u06ba\u060c \u06c1\u0645 \u0644\u0627\u062c\u0633\u0679\u06a9 \u0631\u06cc\u06af\u0631\u06cc\u0634\u0646 \u0627\u0644\u06af\u0648\u0631\u062a\u06be\u0645 \u06a9\u0648 \u0648\u06cc\u06a9\u0679\u0631\u0627\u0626\u0632\u0688 \u0679\u0631\u06cc\u0646\u0646\u06af \u0688\u06cc\u0679\u0627 \u0641\u06cc\u0688 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0645\u0642\u0635\u062f \u06cc\u06c1 \u06c1\u06d2 \u06a9\u06c1 \u0627\u0644\u0641\u0627\u0638 \u06a9\u06d2 \u062f\u0631\u0645\u06cc\u0627\u0646 \u0645\u062e\u0635\u0648\u0635 \u0627\u0644\u0641\u0627\u0638 \u06a9\u0627 \u0648\u0632\u0646 \u0627\u0648\u0631 \u0631\u06cc\u0627\u0636\u06cc \u06a9\u0627 \u0631\u0634\u062a\u06c1 \u0642\u0627\u0626\u0645 \u06a9\u06cc\u0627 \u062c\u0627\u0626\u06d2\u06d4 <strong>\u0633\u067e\u06cc\u0645<\/strong> \u06cc\u0627 <strong>\u06c1\u06cc\u0645<\/strong> \u0628\u0631\u0627\u0646\u0688<\/p>\n<p>\u062a\u0631\u0628\u06cc\u062a \u06a9\u06d2 \u062f\u0648\u0631\u0627\u0646\u060c \u0645\u0627\u0688\u0644 \u063a\u0644\u0637\u06cc\u0648\u06ba \u06a9\u0648 \u06a9\u0645 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u067e\u0646\u06d2 \u0627\u0646\u062f\u0631\u0648\u0646\u06cc \u067e\u06cc\u0631\u0627\u0645\u06cc\u0679\u0631\u0632 \u06a9\u0648 \u0628\u0627\u0631 \u0628\u0627\u0631 \u0627\u06cc\u0688\u062c\u0633\u0679 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0622\u062e\u0631 \u06a9\u0627\u0631 \u06cc\u06c1 \u0633\u06cc\u06a9\u06be\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u0641\u0627\u062a\u062d \u06cc\u0627 \u0645\u0641\u062a \u062c\u06cc\u0633\u06d2 \u0627\u0644\u0641\u0627\u0638 \u0627\u0633\u067e\u0627\u0645 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0628\u06c1\u062a \u0632\u06cc\u0627\u062f\u06c1 \u0645\u0646\u0633\u0644\u06a9 \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u062c\u0628 \u06a9\u06c1 \u0628\u0627\u062a \u0686\u06cc\u062a \u06a9\u06cc \u0632\u0628\u0627\u0646 \u06a9\u0627 \u062a\u0639\u0644\u0642 \u062c\u0627\u0626\u0632 \u067e\u06cc\u063a\u0627\u0645\u0627\u062a \u0633\u06d2 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<pre><code class=\"language-python\">model = LogisticRegression()\nmodel.fit(X_train_features, Y_train)\n<\/code><\/pre>\n<p>\u06c1\u0645\u0627\u0631\u06d2 \u0645\u0639\u0627\u0645\u0644\u06d2 \u0645\u06cc\u06ba\u060c \u06c1\u0645 \u0627\u0633 \u0627\u0645\u06a9\u0627\u0646 \u06a9\u0627 \u062d\u0633\u0627\u0628 \u0644\u06af\u0627\u062a\u06d2 \u06c1\u06cc\u06ba \u06a9\u06c1 \u0627\u06cc \u0645\u06cc\u0644 \u0627\u0633\u067e\u0627\u0645 \u06cc\u0627 HAM \u0633\u06d2 \u062a\u0639\u0644\u0642 \u0631\u06a9\u06be\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<p>\u06cc\u06c1 \u0627\u0644\u06af\u0648\u0631\u062a\u06be\u0645 0 \u0627\u0648\u0631 1 \u06a9\u06d2 \u062f\u0631\u0645\u06cc\u0627\u0646 \u06a9\u06cc \u0642\u062f\u0631\u0648\u06ba \u06a9\u0648 \u062d\u0642\u06cc\u0642\u06cc \u0627\u0642\u062f\u0627\u0631 \u06a9\u0627 \u0646\u0642\u0634\u06c1 \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 Sigmoid \u0641\u0646\u06a9\u0634\u0646 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>$$P(y=1|x) = frac{1}{1 + e^{-(z)}}$$<\/p>\n<p>\u062c\u06c1\u0627\u06ba z = \u03b2\u2080 + \u03b2\u2081x\u2081 + \u2026 + \u03b2\u2099x\u2099\u06d4<\/p>\n<h3 id=\"heading-3-evaluation-testing-the-intelligence\">3. \u062a\u0634\u062e\u06cc\u0635: \u0627\u0646\u0679\u06cc\u0644\u06cc \u062c\u0646\u0633 \u0679\u06cc\u0633\u0679<\/h3>\n<p>\u062a\u0631\u0628\u06cc\u062a \u06a9\u06d2 \u0628\u0639\u062f\u060c \u0622\u067e \u06a9\u0648 \u06cc\u06c1 \u062f\u06cc\u06a9\u06be\u0646\u06d2 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u06d2 \u06a9\u06c1 \u0622\u06cc\u0627 \u0622\u067e \u06a9\u0627 \u062f\u0645\u0627\u063a \u0627\u0633 \u0688\u06cc\u0679\u0627 \u067e\u0631 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062c\u0648 \u0627\u0633 \u0646\u06d2 \u067e\u06c1\u0644\u06d2 \u06a9\u0628\u06be\u06cc \u0646\u06c1\u06cc\u06ba \u062f\u06cc\u06a9\u06be\u0627\u06d4<\/p>\n<pre><code class=\"language-python\">prediction_on_test_data = model.predict(X_test_features)\naccuracy_on_test_data = accuracy_score(Y_test, prediction_on_test_data)\n<\/code><\/pre>\n<p>\u0645\u0627\u0688\u0644 \u06a9\u06cc \u067e\u06cc\u0634\u06cc\u0646 \u06af\u0648\u0626\u06cc\u0648\u06ba \u06a9\u0627 \u0679\u06cc\u0633\u0679 \u0633\u06cc\u0679 \u0645\u06cc\u06ba \u0627\u0635\u0644 \u0644\u06cc\u0628\u0644\u0632 \u0633\u06d2 \u0645\u0648\u0627\u0632\u0646\u06c1 \u06a9\u0631\u06a9\u06d2 \u062f\u0631\u0633\u062a\u06af\u06cc \u06a9\u06d2 \u0627\u0633\u06a9\u0648\u0631 \u06a9\u0627 \u062d\u0633\u0627\u0628 \u0644\u06af\u0627\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u0627\u0633 \u0633\u06d2 \u0622\u067e \u06a9\u0648 \u0627\u0639\u062a\u0645\u0627\u062f \u0645\u0644\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u0622\u067e \u06a9\u0627 \u0645\u0627\u0688\u0644 \u062d\u0642\u06cc\u0642\u06cc \u062f\u0646\u06cc\u0627 \u06a9\u06d2 \u0644\u06cc\u06d2 \u062a\u06cc\u0627\u0631 \u06c1\u06d2 (\u0679\u06cc\u0633\u0679\u0648\u06ba \u0645\u06cc\u06ba 94% \u062a\u06a9 \u062f\u0631\u0633\u062a\u06af\u06cc \u062d\u0627\u0635\u0644 \u06a9\u06cc \u06af\u0626\u06cc \u06c1\u06d2)\u06d4<\/p>\n<h3 id=\"heading-4-exporting-the-logic-serialization\">4. \u0645\u0646\u0637\u0642 \u0628\u0631\u0622\u0645\u062f \u06a9\u0631\u06cc\u06ba (\u0633\u06cc\u0631\u06cc\u0644\u0627\u0626\u0632\u06cc\u0634\u0646)<\/h3>\n<p>\u0627\u0633 \u062f\u0645\u0627\u063a \u06a9\u0648 \u06c1\u0645\u0627\u0631\u06d2 \u0645\u0642\u0627\u0645\u06cc Python \u0645\u0627\u062d\u0648\u0644 \u0633\u06d2 AWS \u06a9\u0644\u0627\u0624\u0688 \u0645\u06cc\u06ba \u0645\u0646\u062a\u0642\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u06c1\u0645 \u0627\u067e\u0646\u06cc \u0645\u0644\u0627\u0632\u0645\u062a\u0648\u06ba \u06a9\u0648 \u0628\u0627\u0626\u0646\u0631\u06cc \u0641\u0627\u0626\u0644\u0632 (.pkl) \u0645\u06cc\u06ba \u0645\u062d\u0641\u0648\u0638 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 Joblib \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<pre><code class=\"language-python\">joblib.dump(model, 'spam_model.pkl')\njoblib.dump(feature_extraction, 'vectorizer.pkl')\n<\/code><\/pre>\n<p>\u06c1\u0645 Pickle \u0641\u0627\u0631\u0645\u06cc\u0679 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba \u06a9\u06cc\u0648\u0646\u06a9\u06c1 \u06cc\u06c1 \u06c1\u0645\u06cc\u06ba \u067e\u06cc\u0686\u06cc\u062f\u06c1 Python \u0627\u0634\u06cc\u0627\u0621 (\u0631\u06cc\u0627\u0636\u06cc \u06a9\u06d2 \u0648\u0632\u0646 \u0627\u0648\u0631 \u0627\u0644\u0641\u0627\u0638 \u06a9\u06cc \u0646\u0642\u0634\u06c1 \u0633\u0627\u0632\u06cc) \u06a9\u0648 \u0627\u06cc\u06a9 \u067e\u0648\u0631\u0679\u06cc\u0628\u0644 \u0628\u0627\u0626\u0646\u0631\u06cc \u0641\u0627\u0631\u0645\u06cc\u0679 \u0645\u06cc\u06ba \u0645\u0646\u062c\u0645\u062f \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u0627 \u06c1\u06d2 \u062c\u0633\u06d2 \u0628\u0627\u062f\u0644 \u0645\u06cc\u06ba \u0641\u0648\u0631\u06cc \u0637\u0648\u0631 \u067e\u0631 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0645\u062a\u062d\u0631\u06a9 \u06a9\u06cc\u0627 \u062c\u0627 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0646\u0626\u06d2 \u0635\u0627\u0631\u0641 \u06a9\u06d2 \u0645\u062a\u0646 \u06a9\u0648 \u062f\u0631\u0633\u062a \u0639\u062f\u062f\u06cc \u0646\u0642\u0627\u0637 \u0645\u06cc\u06ba \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0648\u06cc\u06a9\u0679\u0631\u0627\u0626\u0632\u06cc\u0634\u0646 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u06d2 \u062c\u0633\u06d2 \u0633\u0645\u062c\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0645\u0627\u0688\u0644 \u06a9\u0648 \u062a\u0631\u0628\u06cc\u062a \u062f\u06cc \u06af\u0626\u06cc \u06c1\u06d2\u06d4 \u0627\u06cc\u06a9 \u06a9\u0648 \u062f\u0648\u0633\u0631\u06d2 \u06a9\u06d2 \u0628\u063a\u06cc\u0631 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u0646\u0627 \u0627\u06cc\u0633\u0627 \u06c1\u06d2 \u062c\u06cc\u0633\u06d2 \u0627\u06cc\u06a9 \u0686\u0627\u0628\u06cc \u06c1\u0648 \u0644\u06cc\u06a9\u0646 \u062a\u0627\u0644\u0627 \u0646\u06c1 \u06c1\u0648\u06d4<\/p>\n<p>\u062a\u0631\u0628\u06cc\u062a \u06cc\u0627\u0641\u062a\u06c1 \u0644\u0627\u062c\u0633\u0679\u06a9 \u0631\u06cc\u06af\u0631\u06cc\u0634\u0646 \u0645\u0627\u0688\u0644 \u0627\u0648\u0631 TF-IDF \u0648\u06cc\u06a9\u0679\u0631\u0627\u0626\u0632\u06cc\u0634\u0646 \u0679\u0648\u0644 \u0639\u0648\u0627\u0645\u06cc \u0637\u0648\u0631 \u067e\u0631 Hugging Face \u06a9\u0645\u06cc\u0648\u0646\u0679\u06cc \u0645\u06cc\u06ba \u062f\u0633\u062a\u06cc\u0627\u0628 \u06c1\u06cc\u06ba\u06d4 HuggingFace \u0633\u06d2 \u0645\u0627\u0688\u0644 \u062f\u0631\u0622\u0645\u062f \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<h2 id=\"heading-3-deploying-the-model-to-aws\">3. \u0645\u0627\u0688\u0644 \u06a9\u0648 AWS \u0645\u06cc\u06ba \u062a\u0639\u06cc\u0646\u0627\u062a \u06a9\u0631\u06cc\u06ba\u06d4<\/h2>\n<p>\u0627\u06cc\u06a9 \u0645\u0627\u0688\u0644 \u06a9\u0648 \u062a\u0631\u0628\u06cc\u062a \u062f\u06cc\u0646\u0627 \u0627\u06cc\u06a9 \u0633\u0627\u0626\u0646\u0633 \u06c1\u06d2\u060c \u0627\u0648\u0631 \u0627\u06cc\u06a9 \u0645\u0627\u0688\u0644 \u06a9\u0648 \u062a\u0639\u06cc\u0646\u0627\u062a \u06a9\u0631\u0646\u0627 \u0627\u0646\u062c\u06cc\u0646\u0626\u0631\u0646\u06af \u06c1\u06d2\u06d4 \u0627\u0633 \u062f\u0631\u062c\u06c1 \u0628\u0646\u062f\u06cc \u06a9\u0648 \u0639\u0627\u0644\u0645\u06cc \u0633\u0637\u062d \u067e\u0631 \u0642\u0627\u0628\u0644 \u0631\u0633\u0627\u0626\u06cc \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u06c1\u0645 \u0627\u06cc\u06a9 \u0633\u0631\u0648\u0631 \u0644\u06cc\u0633 \u0627\u0633\u0679\u06cc\u06a9 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u06cc\u06ba \u06af\u06d2 \u062c\u0648 \u062e\u0648\u062f \u0628\u062e\u0648\u062f \u067e\u06cc\u0645\u0627\u0646\u06c1 \u06c1\u0648 \u062c\u0627\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0639\u0645\u0644\u06cc \u0637\u0648\u0631 \u067e\u0631 \u062f\u06cc\u06a9\u06be \u0628\u06be\u0627\u0644 \u06a9\u06d2 \u06a9\u0648\u0626\u06cc \u0627\u062e\u0631\u0627\u062c\u0627\u062a \u0646\u06c1\u06cc\u06ba \u06c1\u0648\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h3 id=\"heading-1-model-storage-amazon-s3\">1. \u0645\u0627\u0688\u0644 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c: \u0627\u06cc\u0645\u06cc\u0632\u0648\u0646 S3<\/h3>\n<p>\u067e\u06c1\u0644\u06d2\u060c \u0622\u0626\u06cc\u06d2 .pkl \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0627\u067e\u0646\u06cc S3 \u0628\u0627\u0644\u0679\u06cc \u0645\u06cc\u06ba \u0627\u067e \u0644\u0648\u0688 \u06a9\u0631\u06cc\u06ba\u06d4 \u06a9\u0648\u0688 \u0633\u06d2 \u0645\u0627\u0688\u0644 \u06a9\u0648 \u0688\u06cc\u06a9\u067e\u0644 \u06a9\u0631 \u06a9\u06d2\u060c \u0622\u067e \u0628\u06cc\u06a9 \u0627\u06cc\u0646\u0688 \u06a9\u0648\u0688 \u06a9\u0648 \u062f\u0648\u0628\u0627\u0631\u06c1 \u062a\u0639\u06cc\u0646\u0627\u062a \u06a9\u06cc\u06d2 \u0628\u063a\u06cc\u0631 AI \u06a9\u06cc \u0627\u0646\u0679\u06cc\u0644\u06cc \u062c\u0646\u0633 \u06a9\u0648 \u0627\u067e \u0688\u06cc\u0679 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba (\u0635\u0631\u0641 S3 \u0645\u06cc\u06ba \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0627\u0648\u0648\u0631 \u0631\u0627\u0626\u0679 \u06a9\u0631\u06cc\u06ba)\u06d4 \u06cc\u06c1 \u0646\u0638\u0627\u0645 \u06a9\u0648 \u0628\u0631\u0642\u0631\u0627\u0631 \u0631\u06a9\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u0626\u06d2 \u0622\u0633\u0627\u0646 \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2.<\/p>\n<h3 id=\"heading-2-the-production-backend-aws-lambda\">2. \u067e\u06cc\u062f\u0627\u0648\u0627\u0631\u06cc \u067e\u0633\u062f\u06cc\u062f: AWS Lambda<\/h3>\n<p>AI \u06a9\u0648 \u0642\u0627\u0628\u0644 \u0631\u0633\u0627\u0626\u06cc \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u06c1\u0645 \u0645\u0642\u0627\u0645\u06cc \u0627\u0633\u06a9\u0631\u067e\u0679 \u0633\u06d2 \u0628\u063a\u06cc\u0631 \u0633\u0631\u0648\u0631 \u06a9\u06d2 \u06a9\u0644\u0627\u0624\u0688 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u06a9\u06cc \u0637\u0631\u0641 \u062c\u0627\u0626\u06cc\u06ba \u06af\u06d2\u06d4 \u06cc\u06c1 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u0622\u067e \u06a9\u06d2 \u0645\u0627\u0688\u0644 24\/7 \u0633\u0631\u0648\u0631 \u06a9\u06d2 \u0627\u062e\u0631\u0627\u062c\u0627\u062a \u06a9\u06d2 \u0628\u063a\u06cc\u0631 \u06c1\u0645\u06cc\u0634\u06c1 \u062f\u0633\u062a\u06cc\u0627\u0628 \u06c1\u06cc\u06ba\u06d4<\/p>\n<p>\u062a\u0639\u06cc\u0646\u0627\u062a\u06cc \u06a9\u0627 \u0645\u0627\u062d\u0648\u0644 AWS Lambda (Python 3.11) \u06c1\u06d2\u06d4 Lambda \u0627\u06cc\u06a9 \u06c1\u0644\u06a9\u0627 \u067e\u06be\u0644\u06a9\u0627 \u0645\u0627\u062d\u0648\u0644 \u06c1\u06d2 \u0627\u0648\u0631 \u0627\u0633 \u0645\u06cc\u06ba Scikit-Learn \u06cc\u0627 Joblib \u0634\u0627\u0645\u0644 \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u06d4 \u0627\u0633\u06d2 \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u06c1\u0645 \u0627\u0633\u06d2 S3 \u0628\u0627\u0644\u0679\u06cc \u0645\u06cc\u06ba \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0627\u0648\u0631 \u0627\u0633\u0679\u0648\u0631 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba \u0627\u0648\u0631 \u0627\u0633\u06d2 \u0679\u0627\u0626\u0631\u0632 \u0633\u06d2 \u06a9\u06be\u06cc\u0646\u0686\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<p><strong>AWS CLI \u0645\u06cc\u06ba \u06a9\u0645\u0627\u0646\u0688\u0632:<\/strong><\/p>\n<pre><code class=\"language-python\">\n# 1. Create a workspace\nmkdir ml_layer && cd ml_layer\n\n# 2. Install scikit-learn and its dependencies into a folder\npip install \n    --platform manylinux2014_x86_64 \n    --target=python\/lib\/python3.11\/site-packages \n    --implementation cp \n    --python-version 3.11 \n    --only-binary=:all: \n    scikit-learn joblib\n\n# 3. Zip the folder\nzip -r sklearn_lib.zip python\n\n# 4. Upload to S3 (Using AWS CLI)\naws s3 cp sklearn_lib.zip s3:\/\/YOUR-BUCKET-NAME\/\n<\/code><\/pre>\n<p>AWS Lambda \u06a9\u06cc \u062a\u0639\u06cc\u0646\u0627\u062a\u06cc \u067e\u06cc\u06a9\u06cc\u062c \u06a9\u06d2 \u0633\u0627\u0626\u0632 \u06a9\u06cc \u062d\u062f\u0648\u062f \u06a9\u0648 \u0646\u0638\u0631\u0627\u0646\u062f\u0627\u0632 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 Scikit-Learn \u0644\u0627\u0626\u0628\u0631\u06cc\u0631\u06cc \u06a9\u0648 S3 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0632\u067e \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0645\u062d\u0641\u0648\u0638 \u06a9\u0631\u06cc\u06ba\u06d4 \u06cc\u06c1 \u0641\u0646\u06a9\u0634\u0646\u0632 \u06a9\u0648 \u0628\u0646\u06cc\u0627\u062f\u06cc \u06a9\u0648\u0688 \u06a9\u0648 \u067e\u06be\u0648\u0644\u06d2 \u0628\u063a\u06cc\u0631\u060c \u0636\u0631\u0648\u0631\u062a \u06a9\u06d2 \u0648\u0642\u062a \u06c1\u06cc \u0628\u06be\u0627\u0631\u06cc \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u0648 \u0645\u062a\u062d\u0631\u06a9 \u0637\u0648\u0631 \u067e\u0631 \u0644\u0648\u0688 \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p><strong>\u0644\u06cc\u0645\u0628\u0688\u0627 \u0641\u0646\u06a9\u0634\u0646:<\/strong><\/p>\n<pre><code class=\"language-python\">\nimport json\nimport boto3\nimport os\nimport sys\nfrom io import BytesIO\n\n# Ensures the custom Lambda layer(containing sklearn\/joblib)\nsys.path.append('\/opt\/python')\n\ntry:\n    import joblib\nexcept ImportError:\n    # Fallback for specific Scikit-Learn distributions\n    from sklearn.utils import _joblib as joblib\n\n# Initialize S3 client\ns3 = boto3.client('s3')\n\n# Use placeholders for the article so readers can insert their own values\nBUCKET_NAME = 'YOUR_S3_BUCKET_NAME' \nMODEL_KEY = 'spam_model.pkl'\nVECTORIZER_KEY = 'vectorizer.pkl'\n\n# Global variables for 'Warm Start' caching (improves performance by keeping model in RAM)\nmodel = None\nvectorizer = None\n\ndef load_model():\n    \"\"\"Downloads model files from S3 only if they aren't already in RAM\"\"\"\n    global model, vectorizer\n    if model is None or vectorizer is None:\n        try:\n            # 1. Load the Logistic Regression Model from S3\n            m_obj = s3.get_object(Bucket=BUCKET_NAME, Key=MODEL_KEY)\n            model = joblib.load(BytesIO(m_obj['Body'].read()))\n            \n            # 2. Load the TF-IDF Vectorizer directly from S3\n            v_obj = s3.get_object(Bucket=BUCKET_NAME, Key=VECTORIZER_KEY)\n            vectorizer = joblib.load(BytesIO(v_obj['Body'].read()))\n        except Exception as e:\n            raise Exception(f\"Failed to load .pkl files from S3: {str(e)}\")\n\ndef lambda_handler(event, context):\n    try:\n        # Ensure model and vectorizer are ready before processing\n        load_model()\n        \n        # Handles both direct Lambda tests and API Gateway POST requests\n        body = event.get('body', event)\n        if isinstance(body, str):\n            body = json.loads(body)\n            \n        text = body.get('text', '')\n            \n        if not text:\n            return {\n                'statusCode': 400,\n                'body': json.dumps({'error': 'No text provided.'})\n              }\n\n        # 1. Transform input text to numeric features using the trained Vectorizer\n        data_vec = vectorizer.transform([text])\n        \n        # 2. Predict using the Logistic Regression Model \n        prediction = int(model.predict(data_vec)[0])\n        \n      # 3. Map numeric result to human-readable label\n        result_label = \"HAM\" if prediction == 1 else \"SPAM\"\n        \n        # RESPONSE WITH CORS\n        return {\n            'statusCode': 200,\n            'headers': {\n                'Content-Type': 'application\/json',\n                'Access-Control-Allow-Origin': '*' # needed for cross-domain web integration\n            },\n            'body': json.dumps({\n                'status': 'success',\n                'classification': result_label,\n                'input_text': text\n            })\n        }\n        \n    except Exception as e:\n        return {\n            'statusCode': 500,\n            'body': json.dumps({'error_message': f\"Inference Error: {str(e)}\"})\n        }\n<\/code><\/pre>\n<p>\u0644\u06cc\u0645\u0628\u0688\u0627 \u0627\u0641\u0639\u0627\u0644 \u06a9\u06cc \u0627\u06c1\u0645 \u062e\u0635\u0648\u0635\u06cc\u0627\u062a:<\/p>\n<ol>\n<li>\n<p><strong>\u06af\u0631\u0645 \u0634\u0631\u0648\u0639 \u06a9\u06cc\u0634\u0646\u06af:<\/strong> Lambda_handler \u06a9\u06d2 \u0628\u0627\u06c1\u0631 \u0645\u0627\u0688\u0644 \u0627\u0648\u0631 \u0648\u06cc\u06a9\u0679\u0631\u0627\u0626\u0632\u06cc\u0634\u0646 \u0645\u062a\u063a\u06cc\u0631\u0627\u062a \u06a9\u06cc \u0648\u0636\u0627\u062d\u062a \u06a9\u0631\u06cc\u06ba \u0627\u0648\u0631 \u0627\u0646\u06c1\u06cc\u06ba \u06a9\u0646\u0679\u06cc\u0646\u0631 \u06a9\u06cc \u0645\u06cc\u0645\u0648\u0631\u06cc \u0645\u06cc\u06ba \u0645\u062d\u0641\u0648\u0638 \u06a9\u0631\u06cc\u06ba\u06d4 \u06cc\u06c1 \u0646\u0645\u0627\u06cc\u0627\u06ba \u0637\u0648\u0631 \u067e\u0631 \u0628\u0639\u062f \u06a9\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u0648\u06ba \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u0648\u0644\u0688 \u0627\u0633\u0679\u0627\u0631\u0679 \u0644\u06cc\u0679\u0646\u0633\u06cc \u06a9\u0648 \u06a9\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0645\u062a\u062d\u0631\u06a9 \u0627\u0646\u062d\u0635\u0627\u0631 \u0644\u0648\u0688\u0646\u06af:<\/strong> \u06a9\u06c1 <strong>sys.path.append(&#8216;\/opt\/python&#8217;)<\/strong> \u0644\u0627\u0626\u0646 \u0622\u067e \u06a9\u0648 S3\/Layers \u0633\u06d2 \u0628\u06be\u0627\u0631\u06cc \u0644\u0627\u0626\u0628\u0631\u06cc\u0631\u06cc\u0648\u06ba \u06a9\u0648 \u0627\u067e \u0644\u0648\u0688 \u06a9\u06cc \u062d\u062f \u0633\u06d2 \u062a\u062c\u0627\u0648\u0632 \u06a9\u06cc\u06d2 \u0628\u063a\u06cc\u0631 \u062f\u0631\u0622\u0645\u062f \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>Bimodal \u0627\u0646 \u067e\u0679 \u06c1\u06cc\u0646\u0688\u0644\u0646\u06af:<\/strong> \u06cc\u06c1 \u0641\u0646\u06a9\u0634\u0646 AWS \u06a9\u0646\u0633\u0648\u0644 \u0633\u06d2 \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a JSON \u0679\u06cc\u0633\u0679\u0646\u06af \u0627\u0648\u0631 API \u06af\u06cc\u0679 \u0648\u06d2 \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0628\u06be\u06cc\u062c\u06d2 \u06af\u0626\u06d2 \u0633\u062e\u062a \u067e\u06d2 \u0644\u0648\u0688\u0632 \u062f\u0648\u0646\u0648\u06ba \u06a9\u0648 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0688\u06cc\u0632\u0627\u0626\u0646 \u06a9\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<\/ol>\n<h3 id=\"heading-3-the-api-gateway-the-bridge-to-the-web\">3. API \u06af\u06cc\u0679 \u0648\u06d2 &#8211; \u0648\u06cc\u0628 \u0633\u06d2 \u06a9\u0646\u06a9\u0634\u0646<\/h3>\n<p><img decoding=\"async\" src=\"https:\/\/umang.pk\/wp-content\/uploads\/2026\/05\/1777644916_574_Scikit-Learn\u060c-AWS-Lambda\u060c-\u0627\u0648\u0631-API-\u06af\u06cc\u0679-\u0648\u06d2-\u06a9\u0627-\u0627\u0633\u062a\u0639\u0645\u0627\u0644-\u06a9\u0631\u062a\u06d2.png\" alt=\"\u06cc\u06c1 \u0627\u06cc\u06a9 \u0688\u06cc\u0645\u0648 \u0627\u0645\u06cc\u062c \u06c1\u06d2 \u062c\u0648 API \u06af\u06cc\u0679 \u0648\u06d2 \u06a9\u0648 \u062f\u06a9\u06be\u0627 \u0631\u06c1\u06cc \u06c1\u06d2\u06d4\" style=\"display:block;margin:0 auto\" width=\"1000\" height=\"563\" loading=\"lazy\" title=\"\"><\/p>\n<p>Unsplash \u067e\u0631 Growtika \u06a9\u06cc \u062a\u0635\u0648\u06cc\u0631<\/p>\n<h4 id=\"heading-creating-the-rest-api\">\u0627\u06cc\u06a9 REST API \u0628\u0646\u0627\u0626\u06cc\u06ba<\/h4>\n<p>\u0627\u06af\u0644\u0627\u060c \u06c1\u0645 \u0648\u0627\u062d\u062f POST \u0637\u0631\u06cc\u0642\u06c1 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0627\u06cc\u06a9 REST API \u0628\u0646\u0627\u0626\u06cc\u06ba \u06af\u06d2\u06d4 \u0622\u067e \u0633\u0648\u0686 \u0631\u06c1\u06d2 \u06c1\u0648\u06ba \u06af\u06d2 \u06a9\u06c1 \u06c1\u0645 POST \u06a9\u06cc\u0648\u06ba \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0679\u06be\u06cc\u06a9 \u06c1\u06d2\u060c \u06c1\u0645\u06cc\u06ba \u0645\u0627\u0688\u0644 \u06a9\u0648 \u0635\u0627\u0631\u0641 \u06a9\u06d2 \u0679\u06cc\u06a9\u0633\u0679 \u0645\u06cc\u0633\u062c \u067e\u0631 \u0645\u0634\u062a\u0645\u0644 JSON \u067e\u06d2 \u0644\u0648\u0688 \u06a9\u0648 \u0645\u062d\u0641\u0648\u0638 \u0637\u0631\u06cc\u0642\u06d2 \u0633\u06d2 \u0628\u06be\u06cc\u062c\u0646\u06d2 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u06d2\u06d4<\/p>\n<ol>\n<li>\n<p>\u0633\u0628 \u0633\u06d2 \u067e\u06c1\u0644\u06d2\u060c Amazon API \u06af\u06cc\u0679 \u0648\u06d2 \u06a9\u0646\u0633\u0648\u0644 \u067e\u0631 \u062c\u0627\u0626\u06cc\u06ba \u0627\u0648\u0631 Create API -> REST API \u06a9\u0648 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p>\u0627\u067e\u0646\u06d2 API \u06a9\u0648 EmailSpamPredictor-API \u062c\u06cc\u0633\u0627 \u0646\u0627\u0645 \u062f\u06cc\u06ba \u0627\u0648\u0631 \u0627\u062e\u062a\u062a\u0627\u0645\u06cc \u0646\u0642\u0637\u06c1 \u06a9\u06cc \u0642\u0633\u0645 \u06a9\u0648 \u0645\u0642\u0627\u0645\u06cc \u067e\u0631 \u0633\u06cc\u0679 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p>\u067e\u06be\u0631 \u0628\u0627\u0626\u06cc\u06ba \u0633\u0627\u0626\u0688\u0628\u0627\u0631 \u0645\u06cc\u06ba \u0648\u0633\u0627\u0626\u0644 \u067e\u0631 \u06a9\u0644\u06a9 \u06a9\u0631\u06cc\u06ba \u0627\u0648\u0631 \u0648\u0633\u0627\u0626\u0644 \u06a9\u0627 \u0646\u0627\u0645 \u062f\u0631\u062c \u06a9\u0631\u06cc\u06ba\u060c \u062c\u06cc\u0633\u06d2 <strong>\/ \u067e\u06cc\u0634\u0646 \u06af\u0648\u0626\u06cc<\/strong> (\u062c\u06cc\u0633\u0627 \u06a9\u06c1 \u0645\u06cc\u06ba \u0646\u06d2 \u0679\u0627\u0626\u067e \u06a9\u06cc\u0627)<\/p>\n<\/li>\n<li>\n<p>\u067e\u06be\u0631 \u062a\u062e\u0644\u06cc\u0642 \u06a9\u0627 \u0637\u0631\u06cc\u0642\u06c1 \u067e\u0631 \u06a9\u0644\u06a9 \u06a9\u0631\u06cc\u06ba\u060c POST \u06a9\u0648 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba\u060c \u0627\u0648\u0631 \u0627\u0646\u0636\u0645\u0627\u0645 \u06a9\u06cc \u0642\u0633\u0645 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0644\u06cc\u0645\u0628\u0688\u0627 \u0641\u0646\u06a9\u0634\u0646 \u06a9\u0648 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p>\u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u0626\u06cc\u06ba \u06a9\u06c1 \u0644\u06cc\u0645\u0628\u0688\u0627 \u067e\u0631\u0627\u06a9\u0633\u06cc \u0627\u0646\u0679\u06cc\u06af\u0631\u06cc\u0634\u0646 \u0641\u0639\u0627\u0644 \u06c1\u06d2 (\u0627\u0633 \u0633\u06d2 \u067e\u0648\u0631\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u06a9\u0648 \u0622\u067e \u06a9\u06d2 \u06a9\u0648\u0688 \u067e\u0631 \u0628\u06be\u06cc\u062c \u062f\u06cc\u0627 \u062c\u0627\u0626\u06d2 \u06af\u0627)\u06d4<\/p>\n<\/li>\n<\/ol>\n<p><strong>CORS \u06a9\u0646\u0641\u06cc\u06af\u0631\u06cc\u0634\u0646 (\u0679\u0631\u0628\u0644 \u0634\u0648\u0679\u0646\u06af \u06c1\u0628)<\/strong><br \/>\u06cc\u06c1 \u0648\u06c1 \u062c\u06af\u06c1 \u06c1\u06d2 \u062c\u06c1\u0627\u06ba \u0628\u06c1\u062a \u0633\u06d2 \u0688\u0648\u06cc\u0644\u067e\u0631\u0632 \u062e\u0648\u0641\u0646\u0627\u06a9 \u067e\u0631\u06cc\u0634\u0627\u0646\u06cc \u06a9\u0627 \u0634\u06a9\u0627\u0631 \u06c1\u06cc\u06ba\u06d4 <strong>\u06a9\u0646\u06a9\u0634\u0646 \u06a9\u06cc \u062e\u0631\u0627\u0628\u06cc<\/strong>. \u0627\u06af\u0631 API \u06a9\u0648 AWS \u067e\u0631 \u06c1\u0648\u0633\u0679 \u06a9\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0641\u0631\u0646\u0679 \u0627\u06cc\u0646\u0688 \u0627\u06cc\u06a9 \u0639\u0644\u06cc\u062d\u062f\u06c1 \u0648\u06cc\u0628 \u0633\u0627\u0626\u0679 \u067e\u0631 \u06c1\u06d2\u060c \u062a\u0648 \u0628\u0631\u0627\u0624\u0632\u0631 \u06a9\u06cc \u0627\u0633\u06cc \u0627\u0635\u0644 \u06a9\u06cc \u067e\u0627\u0644\u06cc\u0633\u06cc \u06a9\u06cc \u0628\u0646\u06cc\u0627\u062f \u067e\u0631 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u06a9\u0648 \u0628\u0637\u0648\u0631 \u0688\u06cc\u0641\u0627\u0644\u0679 \u0628\u0644\u0627\u06a9 \u06a9\u0631 \u062f\u06cc\u0627 \u062c\u0627\u0626\u06d2 \u06af\u0627\u06d4<\/p>\n<p>\u0627\u0633\u06d2 \u0679\u06be\u06cc\u06a9 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0622\u0626\u06cc\u06d2 \u0641\u0639\u0627\u0644 \u06a9\u0631\u06cc\u06ba: <strong>\u06a9\u0648\u0631:<\/strong><\/p>\n<ol>\n<li>\n<p><strong>\u0631\u0633\u0627\u0626\u06cc-\u06a9\u0646\u0679\u0631\u0648\u0644-\u0627\u062c\u0627\u0632\u062a-\u0630\u0631\u06cc\u0639\u06c1:<\/strong> \u0628\u0631\u0627\u0624\u0632\u0631 \u06a9\u0648 \u0628\u062a\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 * (\u06cc\u0627 \u062e\u0627\u0635 \u0637\u0648\u0631 \u067e\u0631 \u0622\u067e \u06a9\u0627 \u0688\u0648\u0645\u06cc\u0646) \u067e\u0631 \u0633\u06cc\u0679 \u06a9\u0631\u06cc\u06ba \u06a9\u06c1 \u0622\u067e \u06a9\u0627 API \u0641\u0631\u0646\u0679 \u0627\u06cc\u0646\u0688 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0628\u0627\u062a \u0686\u06cc\u062a \u06a9\u0631\u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0627\u062e\u062a\u06cc\u0627\u0631\u0627\u062a \u06a9\u0627 \u0637\u0631\u06cc\u0642\u06c1:<\/strong> API \u06af\u06cc\u0679 \u0648\u06d2 \u062e\u0648\u062f \u0628\u062e\u0648\u062f \u0627\u06cc\u06a9 OPTIONS \u0637\u0631\u06cc\u0642\u06c1 \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u067e\u0631\u06cc \u0641\u0644\u0627\u0626\u0679 \u06a9\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u0648\u06ba \u06a9\u0648 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u062c\u06c1\u0627\u06ba \u0628\u0631\u0627\u0624\u0632\u0631 \u067e\u0648\u0686\u06be\u062a\u0627 \u06c1\u06d2 &quot;\u06a9\u06cc\u0627 \u0622\u067e \u0645\u062c\u06be\u06d2 \u0622\u067e \u0633\u06d2 \u0688\u06cc\u0679\u0627 \u0648\u0635\u0648\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u0646\u0627 \u0686\u0627\u06c1\u062a\u06d2 \u06c1\u06cc\u06ba\u061f&#8221; \u0627\u0635\u0644 \u0645\u062a\u0646 \u0628\u06be\u06cc\u062c\u0646\u06d2 \u0633\u06d2 \u067e\u06c1\u0644\u06d2<\/p>\n<\/li>\n<li>\n<p><strong>\u0631\u0633\u0627\u0626\u06cc \u06a9\u0646\u0679\u0631\u0648\u0644 \u06c1\u06cc\u0688\u0631 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u06ba:<\/strong> \u0627\u0633\u06a9\u0631\u06cc\u0646 \u0634\u0627\u0679 \u0645\u06cc\u06ba \u0622\u067e \u062f\u06cc\u06a9\u06be \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba \u06a9\u06c1 \u0645\u0648\u0627\u062f \u06a9\u06cc \u0642\u0633\u0645 \u0627\u0648\u0631 \u0627\u062c\u0627\u0632\u062a \u062c\u06cc\u0633\u06d2 \u06c1\u06cc\u0688\u0631 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u06c1\u06d2\u06d4 \u06cc\u06c1 API \u06af\u06cc\u0679 \u0648\u06d2 \u06a9\u0648 JavaScript fetch() \u06a9\u0627\u0644\u0632 \u06a9\u0648 \u0645\u0633\u062a\u0631\u062f \u06a9\u0631\u0646\u06d2 \u0633\u06d2 \u0631\u0648\u06a9\u062a\u0627 \u06c1\u06d2 \u062c\u0628 \u0648\u06c1 \u0645\u0648\u0627\u062f \u06a9\u06cc \u0642\u0633\u0645 \u06a9\u0648 \u0627\u06cc\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\/json \u067e\u0631 \u0633\u06cc\u0679 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<\/ol>\n<p><img decoding=\"async\" src=\"https:\/\/umang.pk\/wp-content\/uploads\/2026\/05\/1777644916_380_Scikit-Learn\u060c-AWS-Lambda\u060c-\u0627\u0648\u0631-API-\u06af\u06cc\u0679-\u0648\u06d2-\u06a9\u0627-\u0627\u0633\u062a\u0639\u0645\u0627\u0644-\u06a9\u0631\u062a\u06d2.png\" alt=\"\u062a\u0635\u0648\u06cc\u0631 \u06c1\u0645\u0627\u0631\u06d2 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u06a9\u06d2 \u0644\u06cc\u06d2 CORS \u06a9\u0646\u0641\u06cc\u06af\u0631\u06cc\u0634\u0646 \u06a9\u0648 \u0638\u0627\u06c1\u0631 \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u06d4 \" style=\"display:block;margin:0 auto\" width=\"1487\" height=\"617\" loading=\"lazy\" title=\"\"><\/p>\n<p>\u062a\u0635\u0648\u06cc\u0631 \u06c1\u0645\u0627\u0631\u06d2 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u06a9\u06d2 \u0644\u06cc\u06d2 CORS \u06a9\u0646\u0641\u06cc\u06af\u0631\u06cc\u0634\u0646 \u06a9\u0648 \u0638\u0627\u06c1\u0631 \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u06d4 (\u062a\u0635\u0627\u0648\u06cc\u0631 \u0645\u0635\u0646\u0641 \u06a9\u06cc \u0637\u0631\u0641 \u0633\u06d2)<\/p>\n<h4 id=\"heading-deployment-stages\">\u062a\u0639\u06cc\u0646\u0627\u062a\u06cc \u06a9\u0627 \u0645\u0631\u062d\u0644\u06c1<\/h4>\n<p>\u062c\u0628 \u0622\u067e \u06a9\u06d2 API \u06a9\u0648 \u067e\u0631\u0648\u0688\u06a9\u0634\u0646 \u0645\u06cc\u06ba \u062a\u0639\u06cc\u0646\u0627\u062a \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u060c \u062a\u0648 AWS \u0627\u06cc\u06a9 \u0645\u0633\u062a\u0642\u0644 \u062f\u0631\u062e\u0648\u0627\u0633\u062a URL \u062a\u062e\u0644\u06cc\u0642 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u06c1\u0645\u0627\u0631\u06d2 \u0645\u0627\u0688\u0644 \u06a9\u06d2 \u0639\u0648\u0627\u0645\u06cc \u06af\u06cc\u0679 \u0648\u06d2 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0639\u0627\u0645 \u0637\u0648\u0631 \u067e\u0631 \u062f\u0631\u062c \u0630\u06cc\u0644 \u0688\u06be\u0627\u0646\u0686\u06d2 \u06a9\u06cc \u067e\u06cc\u0631\u0648\u06cc \u06a9\u0631\u062a\u0627 \u06c1\u06d2: https:\/\/[api-id].execute-api\u06d4[region].amazonaws.com\/prod\/classify\u06d4<\/p>\n<h4 id=\"heading-connecting-the-frontend-the-javascript-layer\">\u0641\u0631\u0646\u0679 \u0627\u06cc\u0646\u0688 \u06a9\u0646\u06cc\u06a9\u0679\u06cc\u0648\u06cc\u0679\u06cc (\u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u067e\u0679 \u067e\u0631\u062a)<\/h4>\n<p>API Live \u06a9\u06d2 \u0633\u0627\u062a\u06be\u060c \u0627\u0628 \u0622\u067e \u0633\u0627\u062f\u06c1 JavaScript \u0641\u0646\u06a9\u0634\u0646 \u0644\u06a9\u06be \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba \u062c\u0648 \u0622\u067e \u06a9\u06d2 \u0645\u0627\u0688\u0644 \u0633\u06d2 \u0628\u0627\u062a \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u06cc\u06c1 \u0627\u0633\u06a9\u0631\u067e\u0679 \u0635\u0627\u0631\u0641 \u06a9\u0648 \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4 <strong>\u062a\u062c\u0632\u06cc\u06c1<\/strong> \u0628\u0679\u0646 \u067e\u0631 \u06a9\u0644\u06a9 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<pre><code class=\"language-python\">\nasync function checkSpam() {\n    const message = document.getElementById(\"userInput\").value;\n    const apiUrl = \"YOUR_API_GATEWAY_INVOKE_URL\";\n\n    try {\n        const response = await fetch(apiUrl, {\n            method: \"POST\",\n            headers: {\n                \"Content-Type\": \"application\/json\"\n            },\n            body: JSON.stringify({ \"text\": message })\n        });\n\n        const data = await response.json();\n        \n        \/\/ Display result on the webpage\n        const resultElement = document.getElementById(\"result\");\n        resultElement.innerText = `Prediction: ${data.classification}`;\n        resultElement.style.color = data.classification === \"SPAM\" ? \"red\" : \"green\";\n\n    } catch (error) {\n        console.error(\"Error:\", error);\n        alert(\"Could not connect to the Spam Detector API.\");\n    }\n}\n<\/code><\/pre>\n<h2 id=\"heading-4-how-to-run-the-project-locally\">4. \u0645\u0642\u0627\u0645\u06cc \u0637\u0648\u0631 \u067e\u0631 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u06a9\u0648 \u06a9\u06cc\u0633\u06d2 \u0686\u0644\u0627\u06cc\u0627 \u062c\u0627\u0626\u06d2\u06d4<\/h2>\n<p>\u0622\u067e \u0641\u0631\u0646\u0679 \u0627\u06cc\u0646\u0688 \u06a9\u0648 HTML \u0641\u0627\u0626\u0644 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0645\u062d\u0641\u0648\u0638 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0627\u06cc\u06a9 \u0628\u0627\u0631 \u062c\u0628 \u0622\u067e \u062a\u06cc\u0627\u0631 \u06c1\u0648 \u062c\u0627\u0626\u06cc\u06ba \u062a\u0648\u060c .html \u0641\u0627\u0626\u0644 \u067e\u0631 \u0688\u0628\u0644 \u06a9\u0644\u06a9 \u0646\u06c1 \u06a9\u0631\u06cc\u06ba\u06d4 \u0627\u0633\u06d2 \u0627\u0633 \u0637\u0631\u062d \u06a9\u06be\u0648\u0644\u06cc\u06ba: <strong>\u0641\u0627\u0626\u0644<\/strong> \u0622\u067e \u0627\u067e\u0646\u06d2 \u0628\u0631\u0627\u0624\u0632\u0631 \u0645\u06cc\u06ba \u062d\u0641\u0627\u0638\u062a\u06cc \u067e\u0627\u0628\u0646\u062f\u06cc\u0648\u06ba \u06a9\u0627 \u062a\u062c\u0631\u0628\u06c1 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0627\u0633 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2\u060c \u0622\u067e \u06a9\u0648 \u0627\u0633 \u06a9\u06cc \u0645\u06cc\u0632\u0628\u0627\u0646\u06cc \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u0633\u0627\u062f\u06c1 \u0645\u0642\u0627\u0645\u06cc \u0633\u0631\u0648\u0631 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2\u06d4<\/p>\n<p><strong>\u0645\u0631\u062d\u0644\u06c1 1:<\/strong> \u0679\u0631\u0645\u06cc\u0646\u0644 \u06cc\u0627 \u06a9\u0645\u0627\u0646\u0688 \u067e\u0631\u0627\u0645\u067e\u0679 \u06a9\u06be\u0648\u0644\u06cc\u06ba\u06d4<\/p>\n<p><strong>\u0645\u0631\u062d\u0644\u06c1 2:<\/strong> \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u0641\u0648\u0644\u0688\u0631 \u0645\u06cc\u06ba \u062c\u0627\u0626\u06cc\u06ba\u06d4<\/p>\n<pre><code class=\"language-shell\">cd [PATH_TO_YOUR_FOLDER]\n<\/code><\/pre>\n<p><strong>\u0645\u0631\u062d\u0644\u06c1 3:<\/strong> \u0645\u0642\u0627\u0645\u06cc \u0627\u0632\u06af\u0631 \u06a9\u0627 \u0648\u06cc\u0628 \u0633\u0631\u0648\u0631 \u0634\u0631\u0648\u0639 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<pre><code class=\"language-shell\">python -m http.server 8000\n<\/code><\/pre>\n<p><strong>\u0645\u0631\u062d\u0644\u06c1 4:<\/strong> \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u062a\u06a9 \u0631\u0633\u0627\u0626\u06cc \u062d\u0627\u0635\u0644 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<p>\u0627\u067e\u0646\u0627 \u0628\u0631\u0627\u0624\u0632\u0631 \u06a9\u06be\u0648\u0644\u06cc\u06ba \u0627\u0648\u0631 \u0627\u0633 \u067e\u0631 \u062c\u0627\u0626\u06cc\u06ba:<br \/>http:\/\/localhost:8000\/your-file-name.html<\/p>\n<p><strong>\u0688\u06cc\u0645\u0648 \u062f\u06cc\u06a9\u06be\u06cc\u06ba:<\/strong><\/p>\n<p><div class=\"ast-oembed-container \" style=\"height: 100%;\"><iframe loading=\"lazy\" title=\"mail spam detector\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/q2X_azntmzY?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n<\/p>\n<h2 id=\"heading-5-our-project-architecture\">5. \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631<\/h2>\n<p><img decoding=\"async\" src=\"https:\/\/umang.pk\/wp-content\/uploads\/2026\/05\/1777644916_522_Scikit-Learn\u060c-AWS-Lambda\u060c-\u0627\u0648\u0631-API-\u06af\u06cc\u0679-\u0648\u06d2-\u06a9\u0627-\u0627\u0633\u062a\u0639\u0645\u0627\u0644-\u06a9\u0631\u062a\u06d2.png\" alt=\"\u06c1\u0645\u0627\u0631\u06d2 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u06a9\u06d2 \u0622\u0631\u06a9\u06cc\u0679\u06cc\u06a9\u0686\u0631 \u0688\u0627\u06cc\u0627\u06af\u0631\u0627\u0645 \u06a9\u0648 \u0638\u0627\u06c1\u0631 \u06a9\u0631\u0646\u06d2 \u0648\u0627\u0644\u06cc \u062a\u0635\u0648\u06cc\u0631\u06d4\" style=\"display:block;margin:0 auto\" width=\"1000\" height=\"563\" loading=\"lazy\" title=\"\"><\/p>\n<p>\u062a\u0635\u0648\u06cc\u0631 \u06c1\u0645\u0627\u0631\u06d2 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u06a9\u06d2 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u06a9\u0648 \u0638\u0627\u06c1\u0631 \u06a9\u0631\u062a\u06cc \u06c1\u06d2 (\u0627\u06cc\u06a9 \u0633\u0631\u0648\u0631 \u0644\u06cc\u0633 \u0627\u0633\u067e\u0627\u0645 \u06a9\u0644\u0627\u0633\u06cc\u0641\u0627\u0626\u0631 \u0628\u0646\u0627\u0646\u0627)\u06d4 \u06cc\u06c1 \u06a9\u0644\u0627\u0626\u0646\u0679 \u0627\u0646 \u067e\u0679 \u0633\u06d2 \u062d\u062a\u0645\u06cc \u0645\u0627\u0688\u0644 \u0622\u0624\u0679 \u067e\u0679 \u062a\u06a9 \u06a9\u0627 \u0639\u0645\u0644 \u062f\u06a9\u06be\u0627\u062a\u0627 \u06c1\u06d2\u06d4 (\u062a\u0635\u0627\u0648\u06cc\u0631 \u0645\u0635\u0646\u0641 \u06a9\u06cc \u0637\u0631\u0641 \u0633\u06d2)<\/p>\n<ol>\n<li>\n<p><strong>\u06a9\u0644\u0627\u0626\u0646\u0679 \u06a9\u0627 \u0641\u0631\u0646\u0679 \u0627\u06cc\u0646\u0688 \u0627\u0646\u0679\u0631\u0627\u06cc\u06a9\u0634\u0646:<\/strong> \u06cc\u06c1 \u0639\u0645\u0644 \u0627\u0646\u062a\u06c1\u0627\u0626\u06cc \u0628\u0627\u0626\u06cc\u06ba \u0633\u06d2 \u0634\u0631\u0648\u0639 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u06d4 \u0635\u0627\u0631\u0641\u06cc\u0646 \u0648\u06cc\u0628 \u0627\u0646\u0679\u0631\u0641\u06cc\u0633 (\u062c\u06cc\u0633\u06d2 \u0648\u06cc\u0628 \u0633\u0627\u0626\u0679 \u06cc\u0627 \u0688\u06cc\u0633\u06a9 \u0679\u0627\u067e \u0627\u06cc\u067e) \u06a9\u06d2 \u0633\u0627\u062a\u06be \u062a\u0639\u0627\u0645\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0648\u06c1 \u0627\u0633 \u0637\u0631\u062d \u0645\u062a\u0646 \u062f\u0631\u062c \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba: <strong>\u0627\u0628\u06be\u06cc \u0627\u067e\u0646\u0627 \u0645\u0641\u062a \u0622\u0626\u06cc \u0641\u0648\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0631\u06cc\u06ba\u06d4<\/strong> \u0627\u06cc\u06a9 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u06a9\u0648 \u0645\u062a\u062d\u0631\u06a9 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0627\u0646\u0679\u0631\u06cc \u067e\u0648\u0627\u0626\u0646\u0679: API \u06af\u06cc\u0679 \u0648\u06d2:<\/strong> \u062f\u0631\u062e\u0648\u0627\u0633\u062a Amazon API \u06af\u06cc\u0679 \u0648\u06d2 \u062a\u06a9 \u067e\u06c1\u0646\u0686 \u062c\u0627\u062a\u06cc \u06c1\u06d2\u06d4 <strong>\u0628\u0627\u0624\u0646\u0633\u0631<\/strong> \u0627\u0648\u0631 \u0645\u062a\u0631\u062c\u0645\u06d4 <br \/><strong>(\u06a9\u0648\u0626\u06cc \u0631\u0627\u0633\u062a\u06c1 \u0646\u06c1\u06cc\u06ba)<\/strong> CORS \u0622\u067e\u0634\u0646\u0632 \u067e\u0631\u06cc \u0641\u0644\u0627\u0626\u0679 \u06c1\u06cc\u0646\u0688 \u0634\u06cc\u06a9 \u06a9\u0648 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062a\u0627\u06a9\u06c1 \u06cc\u06c1 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u06cc\u0627 \u062c\u0627 \u0633\u06a9\u06d2 \u06a9\u06c1 \u0628\u0631\u0627\u0624\u0632\u0631 \u06a9\u0648 AWS \u06a9\u0644\u0627\u0624\u0688 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0628\u0627\u062a \u0686\u06cc\u062a \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u06c1\u06d2\u06d4 <br \/><strong>(\u0628\u0627\u0631\u0634)<\/strong> \u062f\u0631\u062c\u06c1 \u0628\u0646\u062f\u06cc \u06a9\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a (POST) \u067e\u06cc\u063a\u0627\u0645 \u06a9\u06d2 \u0627\u0635\u0644 \u0688\u06cc\u0679\u0627 \u06a9\u0648 \u0628\u06cc\u06a9 \u0627\u06cc\u0646\u0688 \u0645\u0646\u0637\u0642 \u06a9\u06cc \u0637\u0631\u0641 \u0644\u06d2 \u062c\u0627\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0627\u0646\u062c\u0646: AWS Lambda (Python 3.11):<\/strong> &quot;\u0645\u0631\u06a9\u0632\u06cc&#8221;<strong>\u0628\u062c\u0644\u06cc \u06a9\u0627 \u0628\u0644\u0628<\/strong>&#8221; \u0627\u06cc\u06a9 \u0644\u06cc\u0645\u0628\u0688\u0627 \u0641\u0646\u06a9\u0634\u0646 \u06a9\u06cc \u0646\u0645\u0627\u0626\u0646\u062f\u06af\u06cc \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0648\u06c1 \u062c\u06af\u06c1 \u06c1\u06d2 \u062c\u06c1\u0627\u06ba \u0622\u067e \u06a9\u0627 \u0644\u06a9\u06be\u0627 \u06c1\u0648\u0627 \u06a9\u0648\u0688 \u0631\u06c1\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 24\/7 \u0646\u06c1\u06cc\u06ba \u0686\u0644\u062a\u0627\u060c \u0644\u06cc\u06a9\u0646 \u0635\u0631\u0641 \u0627\u0633 \u0648\u0642\u062a \u0627\u0679\u06be\u062a\u0627 \u06c1\u06d2 \u062c\u0628 \u06a9\u0648\u0626\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0622\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0630\u062e\u06cc\u0631\u06c1 \u0627\u0648\u0631 \u0628\u0627\u0632\u06cc\u0627\u0641\u062a: S3 \u0628\u0627\u0644\u0679\u06cc:<\/strong> \u0686\u0648\u0646\u06a9\u06c1 Lambda \u06c1\u0644\u06a9\u0627 \u067e\u06be\u0644\u06a9\u0627 \u06c1\u06d2\u060c \u06cc\u06c1 \u0628\u06be\u0627\u0631\u06cc \u0645\u0634\u06cc\u0646 \u0644\u0631\u0646\u0646\u06af \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0627\u0646\u062f\u0631\u0648\u0646\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0627\u0633\u0679\u0648\u0631 \u0646\u06c1\u06cc\u06ba \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<br \/><strong>\u0627\u0646\u062d\u0635\u0627\u0631 \u0627\u0648\u0631 \u0645\u0627\u0688\u0644 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u06a9\u0631\u06cc\u06ba:<\/strong> \u06cc\u06c1 \u0641\u0646\u06a9\u0634\u0646 sklearn_lib.zip (\u0627\u0646\u062c\u0646) \u0627\u0648\u0631 .pkl \u0641\u0627\u0626\u0644\u0648\u06ba (\u0627\u0646\u0679\u06cc\u0644\u06cc \u062c\u0646\u0633) \u06a9\u0648 \u0628\u0627\u0632\u06cc\u0627\u0641\u062a \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 S3 \u0628\u0627\u0644\u0679\u06cc \u062a\u06a9 \u0631\u0633\u0627\u0626\u06cc \u062d\u0627\u0635\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 <br \/><strong>\u0645\u0637\u0644\u0648\u0628\u06c1 \u0627\u0646\u062d\u0635\u0627\u0631 \u0627\u0648\u0631 \u0645\u0627\u0688\u0644:<\/strong> \u06cc\u06c1 \u0627\u062b\u0627\u062b\u06d2 \u067e\u06cc\u0634\u06cc\u0646 \u06af\u0648\u0626\u06cc\u0648\u06ba \u06a9\u06cc \u062a\u06cc\u0627\u0631\u06cc \u06a9\u06d2 \u0644\u06cc\u06d2 \u0644\u06cc\u0645\u0628\u0688\u0627 \u06a9\u06cc \u0639\u0627\u0631\u0636\u06cc \u0645\u06cc\u0645\u0648\u0631\u06cc \u0645\u06cc\u06ba \u0644\u0648\u0688 \u06a9\u06cc\u06d2 \u062c\u0627\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0627\u0646\u0641\u0631\u0646\u0633 \u067e\u0627\u0626\u067e \u0644\u0627\u0626\u0646:<\/strong> \u0644\u06cc\u0645\u0628\u0688\u0627 \u06a9\u06d2 \u0627\u0646\u062f\u0631\u060c \u0627\u06cc\u06a9 \u062a\u06cc\u0646 \u0642\u062f\u0645\u06cc \u0631\u06cc\u0627\u0636\u06cc \u06a9\u0627 \u062f\u0648\u0631 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u06d4<br \/><strong>(a) \u0679\u06cc\u06a9\u0633\u0679 \u0648\u06cc\u06a9\u0679\u0631\u0627\u0626\u0632\u0631:<\/strong> \u0627\u0644\u0641\u0627\u0638 \u06a9\u0648 \u0627\u0639\u062f\u0627\u062f \u0645\u06cc\u06ba \u062a\u0631\u062c\u0645\u06c1 \u06a9\u0631\u06cc\u06ba\u06d4<br \/><strong>(b) \u0644\u0627\u062c\u0633\u0679\u06a9 \u0631\u06cc\u06af\u0631\u06cc\u0634\u0646:<\/strong> \u0627\u0633 \u0646\u0645\u0628\u0631 \u06a9\u06cc \u0628\u0646\u06cc\u0627\u062f \u067e\u0631\u060c \u06c1\u0645 \u0633\u067e\u06cc\u0645 \u06a9\u06d2 \u0627\u0645\u06a9\u0627\u0646 \u06a9\u0627 \u062d\u0633\u0627\u0628 \u0644\u06af\u0627\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<br \/><strong>(c) \u0644\u06cc\u0628\u0644:<\/strong> \u062d\u062a\u0645\u06cc \u0646\u062a\u06cc\u062c\u06c1 (\u0633\u067e\u06cc\u0645 \u06cc\u0627 \u06c1\u06cc\u0645) \u062a\u0641\u0648\u06cc\u0636 \u06a9\u0631\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0646\u062a\u0627\u0626\u062c \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u06cc\u06ba:<\/strong> \u0646\u062a\u0627\u0626\u062c API \u06af\u06cc\u0679 \u0648\u06d2 \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0648\u0627\u067e\u0633 \u0628\u06be\u06cc\u062c\u06d2 \u062c\u0627\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u0628\u0634\u0645\u0648\u0644 CORS \u06c1\u06cc\u0688\u0631\u0632 \u06a9\u0648 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u06c1 \u0628\u0631\u0627\u0624\u0632\u0631 \u0627\u0646\u06c1\u06cc\u06ba \u0642\u0628\u0648\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u067e\u06be\u0631 \u0641\u0631\u0646\u0679 \u0627\u06cc\u0646\u0688 \u06a9\u0648 \u0627\u067e \u0688\u06cc\u0679 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631<strong>\u0646\u062a\u06cc\u062c\u06c1: \u0633\u067e\u06cc\u0645<\/strong>\u0627\u06cc\u06a9 \u0628\u0635\u0631\u06cc \u0627\u0634\u0627\u0631\u06d2 \u06c1\u06d2 \u062c\u0648 \u06a9\u06c1\u062a\u0627 \u06c1\u06d2 &quot;<\/p>\n<\/li>\n<\/ol>\n<h2 id=\"heading-6-conclusion-the-power-of-serverless-ai\">6. \u0646\u062a\u06cc\u062c\u06c1: \u0628\u063a\u06cc\u0631 \u0633\u0631\u0648\u0631 AI \u06a9\u06cc \u0637\u0627\u0642\u062a<\/h2>\n<p>\u0644\u0627\u062c\u0633\u0679\u06a9 \u0631\u06cc\u06af\u0631\u06cc\u0634\u0646 \u06a9\u06cc \u0631\u06cc\u0627\u0636\u06cc\u0627\u062a\u06cc \u0633\u0627\u062f\u06af\u06cc \u06a9\u0648 AWS \u0633\u0631\u0648\u0631 \u0644\u06cc\u0633 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u06a9\u06cc \u0635\u0646\u0639\u062a\u06cc \u0637\u0627\u0642\u062a \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0645\u0644\u0627 \u06a9\u0631\u060c \u06c1\u0645 \u0646\u06d2 \u062c\u0627\u0645\u062f Python \u0627\u0633\u06a9\u0631\u067e\u0679\u0633 \u06a9\u0648 \u0639\u0627\u0644\u0645\u06cc \u0633\u0637\u062d \u067e\u0631 \u0642\u0627\u0628\u0644 \u0631\u0633\u0627\u0626\u06cc \u0627\u0648\u0631 \u0642\u0627\u0628\u0644 \u062a\u0648\u0633\u06cc\u0639 APIs \u0645\u06cc\u06ba \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0631 \u062f\u06cc\u0627\u06d4<\/p>\n<p>\u06cc\u06c1 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u0638\u0627\u06c1\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u0627\u0639\u0644\u06cc\u0670 \u0645\u0639\u06cc\u0627\u0631 \u06a9\u06cc \u0645\u0634\u06cc\u0646 \u0644\u0631\u0646\u0646\u06af \u06a9\u06cc \u062a\u0639\u06cc\u0646\u0627\u062a\u06cc \u06a9\u06d2 \u0644\u06cc\u06d2 24\/7 \u0628\u0691\u06d2 \u0628\u062c\u0679 \u06cc\u0627 \u0633\u0631\u0634\u0627\u0631 \u0633\u0631\u0648\u0631\u0632 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u06d4<\/p>\n<p>S3-Lambda \u06a9\u06d2 \u06a9\u0627\u0645 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2\u060c \u06c1\u0645 \u0630\u062e\u06cc\u0631\u06c1 \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0639\u0627\u0645 \u0631\u06a9\u0627\u0648\u0679\u0648\u06ba \u06a9\u0648 \u0646\u0638\u0631\u0627\u0646\u062f\u0627\u0632 \u06a9\u0631\u0646\u06d2 \u0627\u0648\u0631 \u0627\u0633 \u0628\u0627\u062a \u06a9\u0648 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u0646\u06d2 \u0645\u06cc\u06ba \u06a9\u0627\u0645\u06cc\u0627\u0628 \u06c1\u0648 \u06af\u0626\u06d2 \u06a9\u06c1 \u062f\u0645\u0627\u063a (\u0645\u0627\u0688\u0644) \u0627\u0648\u0631 \u0627\u0633 \u06a9\u06d2 \u067e\u0679\u06be\u06d2 (Scikit-Learn) \u0628\u0627\u062f\u0644 \u0645\u06cc\u06ba \u0639\u0627\u0631\u0636\u06cc \u0645\u0627\u062d\u0648\u0644 \u0645\u06cc\u06ba \u0628\u063a\u06cc\u0631 \u06a9\u0633\u06cc \u0631\u06a9\u0627\u0648\u0679 \u06a9\u06d2 \u06a9\u0627\u0645 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u062a\u062c\u0631\u0628\u0627\u062a \u0627\u0648\u0631 \u062d\u0642\u06cc\u0642\u06cc \u062f\u0646\u06cc\u0627 \u06a9\u06cc \u0627\u06cc\u067e\u0644\u06cc \u06a9\u06cc\u0634\u0646\u0632 \u06a9\u06d2 \u062f\u0631\u0645\u06cc\u0627\u0646 \u0641\u0631\u0642 \u06a9\u0648 \u062e\u062a\u0645 \u06a9\u0631\u0646\u0627 AI \u0633\u0633\u0679\u0645 \u06a9\u0648 \u0639\u0645\u0644\u06cc\u060c \u0645\u0648\u062b\u0631 \u0627\u0648\u0631 \u0642\u0627\u0628\u0644 \u0631\u0633\u0627\u0626\u06cc \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-7-acknowledgment-references\">7. \u0627\u0639\u062a\u0631\u0627\u0641\u0627\u062a\/\u062d\u0648\u0627\u0644\u06c1 \u062c\u0627\u062a<\/h2>\n<h3 id=\"heading-connect-with-me\">\u0645\u062c\u06be \u0633\u06d2 \u062c\u0691\u06cc\u06ba<\/h3>\n<p><strong>\u0622\u067e \u0628\u06be\u06cc \u067e\u0633\u0646\u062f \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/strong><\/p>\n<ol>\n<li>\n<p>\u067e\u0648\u0644\u0631\u0632 \u0646\u06d2 \u067e\u0627\u0646\u0688\u0648\u06ba \u06a9\u0648 \u06a9\u06cc\u0633\u06d2 \u067e\u06cc\u0686\u06be\u06d2 \u0686\u06be\u0648\u0691 \u062f\u06cc\u0627\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>DevOps \u0645\u0631 \u06af\u06cc\u0627 \u06c1\u06d2\u06d4 \u0644\u0645\u0628\u06cc \u0639\u0645\u0631 \u067e\u0644\u06cc\u0679 \u0641\u0627\u0631\u0645 \u0627\u0646\u062c\u06cc\u0646\u0626\u0631\u0646\u06af<\/strong><\/p>\n<\/li>\n<\/ol><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u0622\u062c \u06a9\u06cc \u0688\u06cc\u062c\u06cc\u0679\u0644 \u062f\u0646\u06cc\u0627 \u0645\u06cc\u06ba\u060c \u0627\u0633\u067e\u0627\u0645 \u0627\u0628 \u0635\u0631\u0641 \u0627\u06cc\u06a9 \u067e\u0631\u06cc\u0634\u0627\u0646\u06cc \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u060c \u0628\u0644\u06a9\u06c1 \u0627\u06cc\u06a9 \u0628\u0691\u06be\u062a\u0627 \u06c1\u0648\u0627 \u0633\u06cc\u06a9\u0648\u0631\u0679\u06cc \u062e\u0637\u0631\u06c1 \u06c1\u06d2\u06d4 \u0627\u0633 \u0645\u0633\u0626\u0644\u06d2 \u06a9\u0648 \u062d\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0688\u0648\u06cc\u0644\u067e\u0631\u0632 \u0627\u06a9\u062b\u0631 \u0627\u06cc\u0633\u06d2 \u0630\u06c1\u06cc\u0646 \u0641\u0644\u0679\u0631\u0632 \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0645\u0634\u06cc\u0646 \u0644\u0631\u0646\u0646\u06af \u06a9\u0627 \u0641\u0627\u0626\u062f\u06c1 \u0627\u0679\u06be\u0627\u062a\u06d2 \u06c1\u06cc\u06ba \u062c\u0648 \u062c\u0627\u0626\u0632 \u0627\u0648\u0631 \u0628\u062f\u0646\u06cc\u062a\u06cc \u067e\u0631 \u0645\u0628\u0646\u06cc \u0627\u06cc \u0645\u06cc\u0644\u0632 \u0645\u06cc\u06ba \u0641\u0631\u0642 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0644\u06cc\u067e \u0679\u0627\u067e [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":23336,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[1],"tags":[],"class_list":["post-23335","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"_links":{"self":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/posts\/23335","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/comments?post=23335"}],"version-history":[{"count":1,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/posts\/23335\/revisions"}],"predecessor-version":[{"id":23337,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/posts\/23335\/revisions\/23337"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/media\/23336"}],"wp:attachment":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/media?parent=23335"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/categories?post=23335"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/tags?post=23335"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}