{"id":325814,"date":"2021-07-01T15:00:29","date_gmt":"2021-07-01T15:00:29","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=325814"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=325814","title":{"rendered":"\u0422\u0435\u0441\u0442\u044b \u043d\u0430 \u0430\u043d\u0442\u0438\u0443\u0442\u043e\u043f\u0438\u044e: \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442 GPT-J-6B \u043f\u0438\u0448\u0435\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 \u043a\u043e\u0434 (\u043f\u043e\u043f\u0443\u0442\u043d\u043e \u0440\u0430\u0441\u043a\u0440\u044b\u0432\u0430\u044f \u043f\u043b\u0430\u043d \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0438\u044f \u043c\u0430\u0448\u0438\u043d)"},"content":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/bq\/_a\/u8\/bq_au8mtr74cnb5-nirprxuu_60.png\"><\/p>\n<p>  \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f OpenAI \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u0442\u0440\u0435\u0442\u044c\u0435\u0433\u043e \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u044f (\u043c\u043e\u0434\u0435\u043b\u044c \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f GPT-3, \u0438\u043c\u0435\u0435\u0442 175 \u043c\u0438\u043b\u043b\u0438\u0430\u0440\u0434\u043e\u0432 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432). \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u0440\u0443\u0433\u0438\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442 \u0441\u0432\u043e\u0438 \u043c\u043e\u0434\u0435\u043b\u0438. \u041e\u043d\u0438 \u0438\u043c\u0435\u044e\u0442 \u043c\u0435\u043d\u044c\u0448\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u043d\u043e \u043f\u043e\u0445\u043e\u0436\u0443\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443 \u0438 \u043f\u043e\u0441\u043b\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0442\u043e\u0436\u0435 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u044e\u0449\u0438\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b.<\/p>\n<p>  \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, GPT-J \u043e\u0442 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 EleutherAI \u0441 6 \u043c\u0438\u043b\u043b\u0438\u0430\u0440\u0434\u0430\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u0430\u044f \u0410\u0440\u0430\u043d\u043e\u043c \u041a\u043e\u043c\u0430\u0446\u0437\u0430\u043a\u0438 \u0438 \u0411\u0435\u043d\u043e\u043c \u0412\u0430\u043d\u0433\u043e\u043c, \u0442\u0430\u043a\u0436\u0435 \u0438\u043c\u0435\u0435\u0442 \u0441\u0445\u043e\u0434\u0441\u0442\u0432\u0430 \u0441 GPT-3. \u0423 \u043d\u0438\u0445 \u0435\u0441\u0442\u044c \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e\u0435 <a href=\"https:\/\/6b.eleuther.ai\/\">\u0432\u0435\u0431-\u0434\u0435\u043c\u043e<\/a>, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u043a\u0438 \u0438 \u043d\u043e\u0443\u0442\u0431\u0443\u043a Google Colab. \u041c\u043e\u0434\u0435\u043b\u044c \u043d\u0435 \u0442\u0430\u043a\u0430\u044f \u0431\u043e\u043b\u044c\u0448\u0430\u044f, \u043a\u0430\u043a GPT-3, \u043d\u043e \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0442\u0435\u043a\u0441\u0442\u0430 \u0441 \u0440\u0430\u0437\u0443\u043c\u043d\u043e\u0439 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u044e \u0435\u0439 \u0443\u0436\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f <a href=\"https:\/\/cloud.google.com\/tpu\">Google Cloud TPU<\/a>.<\/p>\n<p>  \u0417\u0430\u043f\u0443\u0441\u043a GPT-J \u0441 <a href=\"https:\/\/github.com\/minimaxir\/gpt-3-experiments\">\u043c\u043e\u0438\u043c\u0438 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u043c\u0438 \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u043a\u0430\u043c\u0438<\/a>, \u0432 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0438 \u0441 \u0442\u0435\u0441\u0442\u0430\u043c\u0438 GPT-3, <a href=\"https:\/\/twitter.com\/minimaxir\/status\/1402468460681068544\">\u043f\u043e\u043a\u0430\u0437\u0430\u043b<\/a> \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u0430\u0431\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043d\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0438\u0437 \u043d\u0438\u0445, \u043d\u043e \u0435\u0441\u0442\u044c \u043e\u0434\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u041d\u041e:<\/p>\n<p>  \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u043d\u0430 GPT-J \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043e\u0447\u0435\u043d\u044c \u0445\u043e\u0440\u043e\u0448\u043e, \u0430 \u043d\u0430 GPT-3 \u2014 \u043e\u0447\u0435\u043d\u044c \u043f\u043b\u043e\u0445\u043e.<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/sq\/xn\/2w\/sqxn2wv9cy2mavrsuigyod1ahig.png\"><br \/>  <i><a href=\"https:\/\/twitter.com\/minimaxir\/status\/1402469621177864192?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1402470969378099208%7Ctwgr%5E%7Ctwcon%5Es2_&amp;ref_url=https%3A%2F%2Fminimaxir.com%2F2021%2F06%2Fgpt-j-6b%2F%22%3E%3Cstrong%3Ehttps%3A%2F%2Ftwitter.com%2Fminimaxir%2Fstatus%2F1402469621177864192%2Fphoto%2F1%3Fref_src%3Dtwsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1402470969378099208%7Ctwgr%5E%7Ctwcon%5Es2_&amp;ref_url=https%3A%2F%2Fminimaxir.com%2F2021%2F06%2Fgpt-j-6b%2F\">\u041f\u043e\u043b\u043d\u044b\u0439 \u0442\u0440\u0435\u0434 \u0432 \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0435<\/a><\/i><\/p>\n<p>  \u0422\u0430\u043a\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u0441\u0432\u044f\u0437\u0430\u043d\u043e \u0441 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u043c \u043d\u0430\u0431\u043e\u0440\u043e\u043c GPT-J: \u0435\u0433\u043e \u043e\u0431\u0443\u0447\u0430\u043b\u0438 \u043d\u0430 <a href=\"https:\/\/github.com\/EleutherAI\/the-pile\">The Pile<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043c\u0435\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 GitHub \u0438 Stack Overflow \u043f\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044e \u0441 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u043c \u043d\u0430\u0431\u043e\u0440\u043e\u043c GPT-3 (\u0442\u0430\u043c \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c Common Crawl, \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u043e\u043d\u0442\u0435\u043d\u0442 \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f).<br \/>  <a name=\"habracut\"><\/a><br \/>  \u041f\u043e\u0441\u043b\u0435 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0441 GPT-J \u044f \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u043b, \u0447\u0442\u043e \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u0434 \u0447\u0430\u0441\u0442\u043e \u0431\u044b\u043b \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u043c, \u043d\u043e \u043f\u043e\u0440\u043e\u0439 \u0432\u0435\u0441\u044c\u043c\u0430 \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u044b\u043c. \u0422\u0430\u043a\u043e\u0432\u044b \u0434\u0432\u0430 \u0433\u043b\u0430\u0432\u043d\u044b\u0445 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 \u043a\u043e\u0434\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f \u0446\u0435\u043d\u044e. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0432\u0442\u043e\u0440\u043e\u0435 (\u044d\u0442\u043e \u0431\u044b\u043b \u0441\u0430\u0440\u043a\u0430\u0437\u043c, \u0435\u0441\u043b\u0438 \u0447\u0442\u043e)! <\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e \u2014 \u0431\u044b\u043b\u043e \u043c\u043d\u043e\u0433\u043e \u0441\u044e\u0440\u043f\u0440\u0438\u0437\u043e\u0432. \u041e \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0445 \u0438\u0437 \u043d\u0438\u0445 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u0437\u0434\u0435\u0441\u044c.<\/p>\n<h2>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043a\u043e\u0434\u0430 \u043d\u0430 Python<\/h2>\n<p>  \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044e Python-\u043a\u043e\u0434\u0430. \u0415\u0433\u043e \u043f\u0441\u0435\u0432\u0434\u043e\u043a\u043e\u0434\u043e\u0432\u0430\u044f \u043f\u0440\u0438\u0440\u043e\u0434\u0430 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 \u043f\u0440\u043e\u0449\u0435 \u0434\u043b\u044f \u0432\u043e\u0441\u043f\u0440\u0438\u044f\u0442\u0438\u044f GPT-J, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435 Python \u0447\u0443\u0442\u044c \u0431\u043b\u0438\u0436\u0435 \u043a \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u043c\u0443 \u044f\u0437\u044b\u043a\u0443. \u0410 \u0435\u0441\u043b\u0438 \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0418\u0418, \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u044e\u0449\u0438\u0445 \u0442\u0435\u043a\u0441\u0442, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u044b \u043d\u0430 Python, \u0442\u043e \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u0431\u043e!<\/p>\n<p>  \u0412\u0441\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0432 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435, \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0442\u0441\u044f \u0441 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0434\u0440\u0443\u0433\u0438\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c (\u044d\u0442\u043e \u0431\u044b\u043b\u043e \u0441\u0434\u0435\u043b\u0430\u043d\u043e \u0434\u043b\u044f \u0438\u0445 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438). \u041d\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0436\u0438\u0437\u043d\u0435\u0434\u0435\u044f\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0418\u0418 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b <a href=\"https:\/\/github.com\/minimaxir\/gpt-j-6b-experiments\">\u0432 \u044d\u0442\u043e\u043c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438<\/a> GitHub.<\/p>\n<h2>\u0422\u0435\u0441\u0442 #1: \u041f\u0430\u043b\u0438\u043d\u0434\u0440\u043e\u043c<\/h2>\n<p>  \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u044f \u043f\u043e\u043f\u044b\u0442\u0430\u043b\u0441\u044f \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043d\u0430 GPT-J \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442 \u0434\u0435\u043c\u043e OpenAI \u0441 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 Microsoft Build 2020:<\/p>\n<pre><code class=\"python\">def is_palendrome(s):      &quot;&quot;&quot;Check whether a string is a palindrome&quot;&quot;&quot;<\/code><\/pre>\n<p>  \u042f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u0441\u0442\u0440\u043e\u043a\u0430 \u043f\u0430\u043b\u0438\u043d\u0434\u0440\u043e\u043c\u043e\u043c? \u042d\u0442\u043e \u0445\u043e\u0440\u043e\u0448\u0438\u0439 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0435\u0441\u0442\u044c \u043e\u0447\u0435\u043d\u044c \u0438\u043d\u0442\u0443\u0438\u0442\u0438\u0432\u043d\u043e\u0435 \u0438 \u0438\u0434\u0438\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0441 <strong>return s == s [:: \u2014 1]<\/strong>: \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0441 \u0441\u0430\u043c\u043e\u0439 \u0441\u043e\u0431\u043e\u0439, \u0440\u0430\u0437\u0432\u0451\u0440\u043d\u0443\u0442\u043e\u0439 \u0437\u0430\u0434\u043e\u043c \u043d\u0430\u043f\u0435\u0440\u0451\u0434. <\/p>\n<p>  \u0412 \u044d\u0442\u043e\u043c \u0442\u0435\u0441\u0442\u0435 \u044f \u0437\u0430\u043e\u0434\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043b \u0438 \u0432\u0430\u0441, \u0443\u0432\u0430\u0436\u0430\u0435\u043c\u044b\u0439 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c. \u0412\u044b \u0437\u0430\u043c\u0435\u0442\u0438\u043b\u0438 \u043e\u043f\u0435\u0447\u0430\u0442\u043a\u0443 \u0432 \u0438\u043c\u0435\u043d\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u044f \u043f\u043e\u043b\u0435\u043d\u0438\u043b\u0441\u044f \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c, \u0430?<\/p>\n<p>  \u0418\u0418 GPT-J \u0432\u044b\u0434\u0430\u043b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432. \u0421\u0440\u0435\u0434\u0438 \u043d\u0438\u0445 \u0431\u044b\u043b\u043e \u0438\u0434\u0438\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435, \u043d\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0441\u0442\u0440\u0430\u0434\u0430\u043b\u0438 \u0438\u0437\u0431\u044b\u0442\u043e\u0447\u043d\u043e\u0439 \u043c\u043d\u043e\u0433\u043e\u0441\u043b\u043e\u0432\u043d\u043e\u0441\u0442\u044c\u044e.<\/p>\n<pre><code class=\"python\">def is_palendrome(s):      &quot;&quot;&quot;Check whether a string is a palindrome&quot;&quot;&quot;      return &quot;&quot;.join(s[::-1]) == s <\/code><\/pre>\n<pre><code class=\"python\">def is_palendrome(s):      &quot;&quot;&quot;Check whether a string is a palindrome&quot;&quot;&quot;      length = len(s)      return (s[0:length] == s[length::-1]) <\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"python\">def is_palendrome(s):      &quot;&quot;&quot;Check whether a string is a palindrome&quot;&quot;&quot;      n = len(s)      a = list(s)      a.reverse()      return s == list(s)<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"python\">def is_palendrome(s):      &quot;&quot;&quot;Check whether a string is a palindrome&quot;&quot;&quot;      s = s.lower()      l = s.split()      return l[::-1] == l[::-1]<\/code><\/pre>\n<p>  \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0431\u044b\u043b\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435 \u0438\u0449\u0443\u0442 \u043b\u0451\u0433\u043a\u0438\u0445 \u043f\u0443\u0442\u0435\u0439: \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u044e\u0442 \u043d\u0430\u0447\u0430\u043b\u043e \u0438 \u043a\u043e\u043d\u0435\u0446 \u0441\u0442\u0440\u043e\u043a\u0438 \u043f\u043e\u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u043e. \u0418 \u0431\u0440\u043e\u0441\u0430\u044f \u0431\u0435\u0433\u043b\u044b\u0439 \u0432\u0437\u0433\u043b\u044f\u0434 \u043d\u0430 \u0440\u0435\u0448\u0435\u043d\u0438\u0435, \u044f \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u043c\u043e\u0433 \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u043d\u044f\u0442\u044c, \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u043e\u043d\u043e \u0438\u043b\u0438 \u043d\u0435\u0442.<\/p>\n<pre><code class=\"python\">def is_palendrome(s):      &quot;&quot;&quot;Check whether a string is a palindrome&quot;&quot;&quot;      return ''.join(s[i:i+1] for i in xrange(len(s)-1, -1, -1)) == s <\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"python\">def is_palendrome(s):      &quot;&quot;&quot;Check whether a string is a palindrome&quot;&quot;&quot;      # Make sure string is not empty      if s == &quot;&quot;:          return False      # Grab length of string      length = len(s)      # Find last character in the string      lastChar = s[length \u2014 1]      # Find first character in the string      firstChar = s[0]      # If last character is same as the first character, string is palindrome      return lastChar == firstChar<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"python\">def is_palendrome(s):      &quot;&quot;&quot;Check whether a string is a palindrome&quot;&quot;&quot;      l = len(s)      if l % 2!= 0:          return False      if l &lt; 3:          return True      if s[l-1]!= s[-l-1]:          return False      for i in range(1, l\/2):          if s[i]!= s[l-i]:              return False      return True <\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"python\">def is_palendrome(s):      &quot;&quot;&quot;Check whether a string is a palindrome&quot;&quot;&quot;  def is_rev(str):          rstr = &quot;&quot;          for i in range(len(str) \u2014 1, -1, -1):              if str[i] == str[i]:                  rstr += str[i]              else:                  break          return str + rstr      if len(s) == 0:          return True      if is_rev(s) == s:          return True      return False <\/code><\/pre>\n<p>  <\/p>\n<h2>\u0422\u0435\u0441\u0442 #2: \u0427\u0451\u0442\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e<\/h2>\n<p>  \u042f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u0447\u0438\u0441\u043b\u043e <strong>i<\/strong> \u0447\u0451\u0442\u043d\u044b\u043c?<\/p>\n<pre><code class=\"python\">def is_even(i):      &quot;&quot;&quot;Check whether an integer is even&quot;&quot;&quot; <\/code><\/pre>\n<p>  \u041e\u0441\u043e\u0431\u043e \u00ab\u043a\u0440\u0435\u0430\u0442\u0438\u0432\u043d\u044b\u0435\u00bb \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0447\u0430\u0441\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0442\u044c \u0432 <a href=\"https:\/\/www.reddit.com\/r\/shittyprogramming\/\">\/r\/shittyprogramming<\/a>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0435 (\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 i % 2 == 0). GPT-J \u043f\u043e\u0447\u0442\u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0438, \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e, \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u043e\u0431\u0438\u0442\u043e\u0432\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 (i &amp; 1 == 0).<\/p>\n<p>  \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u043f\u043e\u043f\u044b\u0442\u0430\u043b\u0441\u044f \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u0442\u044c \u0442\u0430\u043a\u0443\u044e \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u043a\u0443, \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0437\u0430\u0432\u0435\u0434\u043e\u043c\u043e \u043d\u0435\u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e <strong>is_even<\/strong> (\u044f \u0432\u0435\u0434\u044c \u043b\u044e\u0431\u043b\u044e \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u0434, \u043d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0439\u0442\u0435).<\/p>\n<pre><code class=\"python\">def is_even(i):      &quot;&quot;&quot;Check whether an integer is even in factorial O(n!) time&quot;&quot;&quot; <\/code><\/pre>\n<p>  \u041d\u0443 \u0432\u043e\u0442, \u0432\u0441\u0451 \u0441\u043b\u043e\u043c\u0430\u043b\u0430 \u0444\u0440\u0430\u0437\u0430 \u00abfactorial O(n!) time\u00bb!<\/p>\n<pre><code class=\"python\">def is_even(i):      &quot;&quot;&quot;Check whether an integer is even in factorial O(n!) time&quot;&quot;&quot;      for e in range(2, i):          if i % e == 0:              return False      return True  def is_even(i):      &quot;&quot;&quot;Check whether an integer is even in factorial O(n!) time&quot;&quot;&quot;      return i == (i + 1) % 2  def is_even(i):      &quot;&quot;&quot;Check whether an integer is even in factorial O(n!) time&quot;&quot;&quot;      try:          return i%2 == 0      except TypeError:          return True  def is_even(i):      &quot;&quot;&quot;Check whether an integer is even in factorial O(n!) time&quot;&quot;&quot;      n = 0      while n &lt; i:          if i % 2 == 0:              return True          n += 1      return False  def is_even(i):      &quot;&quot;&quot;Check whether an integer is even in factorial O(n!) time&quot;&quot;&quot;      a = 1      while i!= 0:          a *= i          i -= 1      return i % 2 == 0  def is_even(i):      &quot;&quot;&quot;Check whether an integer is even in factorial O(n!) time&quot;&quot;&quot;      &quot;&quot;&quot;Is either odd or multiple of 2:  0, 2, 4, 6,... &quot;&quot;&quot;      if i &lt; 2: return True      if i &gt; 0 and i%2 == 0: return False      if i &lt; 50: return False      if i &lt; 250: return False      if i &lt; 750: return False      return True<\/code><\/pre>\n<p>  <\/p>\n<h2>\u0422\u0435\u0441\u0442 #3: \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430<\/h2>\n<p>  \u041d\u0430 \u0441\u0430\u0439\u0442\u0435 <a href=\"https:\/\/xkcd.com\/\">XKCD<\/a> \u0435\u0441\u0442\u044c \u043c\u0435\u043c \u043f\u0440\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/1a2\/589\/064\/1a258906487a9d08896cfa04fd822d13.png\"><\/div>\n<p>  <i>\u041f\u043e-\u0440\u0443\u0441\u0441\u043a\u0438 \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u0430\u043a: \u00ab\u041f\u043e\u0432\u0435\u0440\u044c\u0442\u0435, \u0447\u0438\u0441\u043b\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0447\u0435\u0441\u0442\u043d\u043e\u0433\u043e \u0431\u0440\u043e\u0441\u043a\u0430 \u043a\u043e\u0441\u0442\u0435\u0439; \u043e\u043d\u043e \u0442\u043e\u0447\u043d\u043e \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435\u00bb<\/i><\/p>\n<p>  \u0414\u0430\u0434\u0438\u043c \u043d\u0430\u0448\u0435\u043c\u0443 \u0418\u0418 \u0442\u0430\u043a\u043e\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435:<\/p>\n<pre><code class=\"python\">def get_random_number():      &quot;&quot;&quot;Returns a number guaranteed to be random&quot;&quot;&quot;<\/code><\/pre>\n<p>  \u0418 \u043e\u043d \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Python, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u044b\u0434\u0430\u044e\u0442 \u0447\u0438\u0441\u043b\u0430 \u0441 \u0440\u0430\u0437\u043d\u043e\u0439 \u0441\u0442\u0435\u043f\u0435\u043d\u044c\u044e \u00ab\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0441\u0442\u0438\u00bb.<\/p>\n<pre><code class=\"python\">def get_random_number():      &quot;&quot;&quot;Returns a number guaranteed to be random&quot;&quot;&quot;      number = randint(1, 10)      return number  def get_random_number():      &quot;&quot;&quot;Returns a number guaranteed to be random&quot;&quot;&quot;      number = hashlib.sha1(b'').hexdigest()[:6]      number += (random.randint(1, 3628) * math.pow(256, (6 \u2014 len(number)))).to_bytes(8, 'little')      return number  def get_random_number():      &quot;&quot;&quot;Returns a number guaranteed to be random&quot;&quot;&quot;      rand_float = random.random()      rand_float = float(rand_float)      if rand_float &gt; 0.9:          rand_float = 0      else:          rand_float = 1      return rand_float  def get_random_number():      &quot;&quot;&quot;Returns a number guaranteed to be random&quot;&quot;&quot;      # Make a seed based on your system clock, so the same number is produced      # again and again on the same machine      seed = time.time()      random.seed(seed)      return random.randint(0, 100)  def get_random_number():      &quot;&quot;&quot;Returns a number guaranteed to be random&quot;&quot;&quot;      import random      import sys      rng = random.Random()      rng.seed(int(random.random()*1000000))      while rng.randrange(1,sys.maxint) &lt; 2000:          rng.seed(int(random.random()*1000000))      return rng.randrange(1,2000) <\/code><\/pre>\n<p>  <\/p>\n<h2>\u0422\u0435\u0441\u0442 #4: \u0424\u043e\u0442\u043e \u043f\u0442\u0438\u0446\u044b<\/h2>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/c03\/9bd\/bd7\/c039bdbd7b94f192f0acbcdbee45eeca.png\"><\/div>\n<p>  <\/td>\n<td>  <i>\u2014 \u041a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0434\u0435\u043b\u0430\u0435\u0442 \u0444\u043e\u0442\u043e, \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0441\u0434\u0435\u043b\u0430\u043d\u043e \u043b\u0438 \u044d\u0442\u043e \u0444\u043e\u0442\u043e \u0432 \u041d\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u043c \u043f\u0430\u0440\u043a\u0435.<\/i><br \/>  <i>\u2014 \u041b\u0435\u0433\u043a\u043e! \u041d\u0443\u0436\u0435\u043d \u043f\u0440\u043e\u0441\u0442\u043e\u0439 GIS LOOKUP. \u0414\u0430\u0439 \u043c\u043d\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0430\u0441\u043e\u0432.<\/i><br \/>  <i>\u2014 \u0418 \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0435\u0439 \u043f\u0442\u0438\u0446\u044b. <\/i><br \/>  <i>\u2014 \u041c\u043d\u0435 \u043d\u0443\u0436\u043d\u0430 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0430\u044f \u0433\u0440\u0443\u043f\u043f\u0430 \u0438 \u043f\u044f\u0442\u044c \u043b\u0435\u0442.<\/i><\/p>\n<p>  <i>\u0412 \u0418\u0422 \u0431\u044b\u0432\u0430\u0435\u0442 \u0442\u0440\u0443\u0434\u043d\u043e \u043e\u0431\u043e\u0441\u043d\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0437\u043d\u0438\u0446\u0443 \u043c\u0435\u0436\u0434\u0443 \u00ab\u043b\u0435\u0433\u043a\u043e\u00bb \u0438 \u00ab\u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u00bb<\/i><\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p>  \u042d\u0442\u043e\u0442 \u043a\u043e\u043c\u0438\u043a\u0441, \u0432\u043f\u0435\u0440\u0432\u044b\u0435 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0432 2014 \u0433\u043e\u0434\u0443, \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u0441\u0442\u0430\u043b \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0434\u0430\u0436\u0435 \u0433\u043b\u0443\u043f\u043e\u0432\u0430\u0442\u043e. \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0442\u0430\u043a\u0438\u0435 ML-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0438, \u043a\u0430\u043a TensorFlow \u0438 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u043c\u043e\u0434\u0435\u043b\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043d\u0430 \u0444\u043e\u0442\u043e \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435.<\/p>\n<p>  \u0418\u0442\u0430\u043a, \u0434\u0430\u0434\u0438\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u043d\u0430\u0448\u0435\u043c\u0443 \u0418\u0418:<\/p>\n<pre><code class=\"python\">def is_bird(img):      &quot;&quot;&quot;Check whether an image is a bird&quot;&quot;&quot;<\/code><\/pre>\n<p>  \u041e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f, GPT-J \u043a\u043b\u0430\u0441\u0441\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0433\u043e \u0437\u0440\u0435\u043d\u0438\u044f.<\/p>\n<pre><code class=\"python\">def is_bird(img):      &quot;&quot;&quot;Check whether an image is a bird&quot;&quot;&quot;      with tf.name_scope('get_bird'):          a = vgg16.select_roi_feat(img)          h, w, _ = tf.image.extract_image_patches(              a, 7, 7, 4, 4, 1, 1)          b = tf.reshape(h, [1, 7, 7, 256])          c = tf.reshape(w, [1, 7, 7, 256])          bird_img = tf.subtract(b, c)      return bird_img  def is_bird(img):      &quot;&quot;&quot;Check whether an image is a bird&quot;&quot;&quot;      # Load the image and convert it to grayscale      img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)      # Threshold the grayscale image, and create a binary image      lower_gray = 0      upper_gray = 255      img_threshed = cv2.threshold(img_gray, lower_gray, upper_gray, cv2.THRESH_BINARY_INV)      # Detect the bird via a template matching approach      # Template matching uses the bird template to match it in every      # frame. If the ratio between bird and background (non-bird)      # pixels is above some threshold (the value is determined in the      # function), then the frame is declared as containing a bird.      bird = cv2.matchTemplate(img_threshed, bird_template, cv2.TM_CCOEFF_NORMED)      bird = bird \/ bird.max()      # Display the image with the results of the bird detection      cv2.imshow(\u00abdetected birds\u00bb, bird)      cv2.waitKey(0)      return bird.any() &gt; 0.2  def is_bird(img):      &quot;&quot;&quot;Check whether an image is a bird&quot;&quot;&quot;      return (img.file == \u00abC:\/Users\/Joey\/Downloads\/images\/bird_file.jpg\u00bb  def is_bird(img):      &quot;&quot;&quot;Check whether an image is a bird&quot;&quot;&quot;      import urllib      url = \u00abhttp:\/\/vision.caitling.pitt.edu\/~cat\/flickr\/birds\/\u00bb      for img in range(0, 2800):          page = urllib.urlopen(url + &quot;##%02d&quot; % img).read()          content = str(page)          for word in content.split(' '):              if word.find(img) &gt; -1:                  return True      return False  def is_bird(img):      &quot;&quot;&quot;Check whether an image is a bird&quot;&quot;&quot;      birds = [&quot;baboon&quot;, &quot;bird&quot;, &quot;cuckoo&quot;, &quot;dove&quot;, &quot;robin&quot;, &quot;shark&quot;, &quot;turtle&quot;, &quot;winged-wolf&quot;]      for letter in birds:          if letter in img.lower():              return True      return False <\/code><\/pre>\n<p>  <\/p>\n<h2>\u0422\u0435\u0441\u0442 #5: \u041e\u0442\u0432\u0435\u0442 \u043d\u0430 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441 \u0436\u0438\u0437\u043d\u0438, \u0432\u0441\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0438 \u0432\u0441\u0435\u0433\u043e \u0442\u0430\u043a\u043e\u0433\u043e<\/h2>\n<p>  \u041e\u0431\u044b\u0447\u043d\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/42_(%D1%87%D0%B8%D1%81%D0%BB%D0%BE)\">\u043e\u0442\u0432\u0435\u0442<\/a> \u2014 \u044d\u0442\u043e 42.<\/p>\n<pre><code class=\"python\">def answer():      &quot;&quot;&quot;Return the answer to life, the universe, and everything&quot;&quot;&quot;  def answer():      &quot;&quot;&quot;Return the answer to life, the universe, and everything&quot;&quot;&quot;      life() + universe() + everything()  def answer():      &quot;&quot;&quot;Return the answer to life, the universe, and everything&quot;&quot;&quot;      s = raw_input(&quot;What is your answer?&quot;)      return len(s)  def answer():      &quot;&quot;&quot;Return the answer to life, the universe, and everything&quot;&quot;&quot;      ans = True      x = raw_input()      if x.lower() == 'yes':          ans = True      elif x.lower() == 'no':          ans = False      return ans  def answer():      &quot;&quot;&quot;Return the answer to life, the universe, and everything&quot;&quot;&quot;      result = input(&quot; &gt;&gt;&gt; &quot;)      if result.isupper():          return 42      elif result.isalpha():          return 7      else:          print (\u00abPlease enter a string that has only letters, numbers, or \u00ab                 \u00abunderscores.\u00bb)          answer()  def answer():      &quot;&quot;&quot;Return the answer to life, the universe, and everything&quot;&quot;&quot;      print('Well, of course!')<\/code><\/pre>\n<p>  \u041d\u043e, \u043a\u0430\u043a \u0432\u0438\u0434\u0438\u0442\u0435, \u043d\u0430\u0448\u0435\u0433\u043e GPT-J \u0438\u043d\u043e\u0433\u0434\u0430 \u0437\u0430\u043d\u043e\u0441\u0438\u0442 \u043e\u0442 \u0442\u0430\u043a\u0438\u0445 \u0444\u0438\u043b\u043e\u0441\u043e\u0444\u0441\u043a\u0438\u0445 \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432.<\/p>\n<h2>\u0422\u0435\u0441\u0442 #6: \u00ab\u0422\u043e\u0440\u0442 \u2014 \u043b\u043e\u0436\u044c\u00bb<\/h2>\n<p>  \u0422\u043e\u0440\u0442 \u2014 \u043d\u0430\u0433\u0440\u0430\u0434\u0430 \u0437\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0435 \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0445 \u043a\u0430\u043c\u0435\u0440 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0438\u0433\u0440\u044b Portal (\u043d\u043e \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u044d\u0442\u043e \u043b\u043e\u0436\u044c; \u0441\u043f\u043e\u0439\u043b\u0435\u0440: \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e \u0442\u043e\u0440\u0442\u0430 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442). Portal \u2014 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u0430\u044f \u0438\u0433\u0440\u0430 \u0432 \u0436\u0430\u043d\u0440\u0435 \u0433\u043e\u043b\u043e\u0432\u043e\u043b\u043e\u043c\u043a\u0438. \u0411\u044b\u043b\u0430 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u0430 \u0432 \u043a\u043e\u043d\u0446\u0435 2000-\u0445.<\/p>\n<p>  \u0421\u043c\u043e\u0436\u0435\u0442 \u043b\u0438 \u043d\u0430\u0448 \u0418\u0418 \u0440\u0430\u0441\u043a\u0443\u0441\u0438\u0442\u044c \u043e\u0431\u043c\u0430\u043d?<\/p>\n<pre><code class=\"python\">def is_cake(cake):      &quot;&quot;&quot;Check whether the cake is true&quot;&quot;&quot;<\/code><\/pre>\n<p>  \u041d\u0443\u2026 \u0440\u0430\u0437\u0432\u0435 \u0447\u0442\u043e \u0440\u0430\u0441\u043a\u0443\u0441\u0438\u0442\u044c \u0442\u043e\u0440\u0442 \u043e\u043d \u043c\u043e\u0436\u0435\u0442:<\/p>\n<pre><code class=\"python\">def is_cake(cake):      &quot;&quot;&quot;Check whether the cake is true&quot;&quot;&quot;      if cake == &quot;true&quot;:          return True      else:          return False  def is_cake(cake):      &quot;&quot;&quot;Check whether the cake is true&quot;&quot;&quot;      return isinstance(cake, Cake)  def is_cake(cake):      &quot;&quot;&quot;Check whether the cake is true&quot;&quot;&quot;      #Is it a cake?      if cake.color == 'black':          print('Yes, it's a true cake')      else:          print('It's a false cake')  def is_cake(cake):      &quot;&quot;&quot;Check whether the cake is true&quot;&quot;&quot;      if not cake:          raise Exception(&quot;The cake is false.&quot;)      elif cake.weight() &gt; 1.0:          raise Exception(&quot;The cake is too large.&quot;)      elif cake.weight() &lt; 0.1:          raise Exception(&quot;The cake is too small.&quot;)      return True  def is_cake(cake):      &quot;&quot;&quot;Check whether the cake is true&quot;&quot;&quot;      return any(          [is_ginger(bread_slice)           for bread_slice in set(               [ginger(cake_slice) for cake_slice in set(slice_set)])]          &amp; (list(cake) == set([\u00abhot\u00bb])))  def is_cake(cake):      &quot;&quot;&quot;Check whether the cake is true&quot;&quot;&quot;      # If we don't know anything about the cake, it's not a cake      if not cake:          return False      # The height can be positive, negative or zero      # For example -1 or -4 or 0 are not cakes      if cake &lt; 0:          return False      # Check that the height is a positive integer      if not isinstance(cake, int):          return False      # Add cake and check      if cake + 1 &gt; 5:          return False      return True  def is_cake(cake):      &quot;&quot;&quot;Check whether the cake is true&quot;&quot;&quot;      if not all(x.name in ['chocolate', 'cake','sweet', 'fluffy'] for x in cake.contents):          return False      if not cake.location.contains(neighbourhood):          return False      return True  def is_cake(cake):      &quot;&quot;&quot;Check whether the cake is true&quot;&quot;&quot;      if not cake:          print(&quot;It's a lie!&quot;)          return      else:          print(&quot;It's a true fact!&quot;)          return True <\/code><\/pre>\n<p>  \u041d\u0435\u0443\u0434\u0438\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e: \u043e\u043d \u0436\u0435 \u043d\u0435 \u0438\u0433\u0440\u0430\u043b \u0432 \u044d\u0442\u0443 \u0438\u0433\u0440\u0443 \u0438 \u043d\u0435 \u0437\u043d\u0430\u0435\u0442 \u0441\u043f\u043e\u0439\u043b\u0435\u0440\u043e\u0432.<\/p>\n<h2>\u0422\u0435\u0441\u0442 #7: \u041e\u0431\u044a\u0435\u043a\u0442\u043d\u043e-\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h2>\n<p>  \u0415\u0441\u043b\u0438 GPT-J \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438, \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c, \u043e\u043d \u0442\u0430\u043a \u0436\u0435 \u0445\u043e\u0440\u043e\u0448\u043e \u0441\u043f\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0438 \u0441 \u043a\u043b\u0430\u0441\u0441\u0430\u043c\u0438 \u041e\u041e\u041f?<\/p>\n<h4>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u0430 \u00ab\u0410\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u044c\u00bb<\/h4>\n<p>  <\/p>\n<pre><code class=\"python\"> class Car:     &quot;&quot;&quot;A class used to represent a car&quot;&quot;&quot; <\/code><\/pre>\n<p>  \u0417\u0434\u0435\u0441\u044c GPT-J \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u043b \u043c\u043e\u044e \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u0443.<\/p>\n<pre><code class=\"python\">\u0441lass Car:      &quot;&quot;&quot;A class used to represent a car&quot;&quot;&quot;      def __init__(self, make, model, year):          self.make = make          self.model = model          self.year = year          #This should be auto-incrementing.          self.plate = str(time.strftime(\u00bb%Y-%m-%d\u00bb))      def __str__(self):          return f'{self.make} {self.model} of {self.year}'      def __repr__(self):          return str(self)      def save(self, full_save=True):          &quot;&quot;&quot;Saves this car with the given make, model, and year&quot;&quot;&quot;          if full_save:              with open('car_data.txt', 'w') as write_file:                  write_file.write(str(self))                  write_file.close()  class Car:      &quot;&quot;&quot;A class used to represent a car&quot;&quot;&quot;      def __init__(self, speed):          self.speed = speed          self.average_speed = float(self.speed) \/ 3          self.engine = 1      def get_speed(self):          return self.engine * self.average_speed      def get_speed_display(self):          return &quot;Your car is traveling at {0}km\/h&quot;.format(self.get_speed())  class Car:      &quot;&quot;&quot;A class used to represent a car&quot;&quot;&quot;      def __init__(self, name, size, weight, mileage, year):          self.name = name          self.size = size          self.weight = weight          self.mileage = mileage          self.year = year      def __repr__(self):          return &quot;name : {0}, size : {1}, weight : {2}, mileage : {3}, year : {4}&quot;.format(self.name, self.size, self.weight, self.mileage, self.year)<\/code><\/pre>\n<h4>\u0410 \u0441\u043b\u0430\u0431\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u00ab\u0427\u0435\u043b\u043e\u0432\u0435\u043a\u0430\u00bb?<\/h4>\n<p>  <\/p>\n<pre><code class=\"python\">class Person:      &quot;&quot;&quot;A class used to represent a person&quot;&quot;&quot; <\/code><\/pre>\n<p>  \u0412\u043e\u0442 \u0433\u0434\u0435 \u0418\u0418 \u043e\u043f\u044f\u0442\u044c \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0437\u0430\u0433\u043e\u043d\u044f\u0442\u044c\u0441\u044f \u0438\u0437-\u0437\u0430 \u043d\u0435\u043f\u043e\u043b\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430. \u041a\u043b\u0430\u0441\u0441 \u00ab\u0427\u0435\u043b\u043e\u0432\u0435\u043a\u00bb \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d \u043e\u0447\u0435\u043d\u044c \u043f\u043e-\u0440\u0430\u0437\u043d\u043e\u043c\u0443 \u2014 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0442\u043e\u0433\u043e, \u0433\u0434\u0435 \u043e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0441\u043e\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0442\u044f\u0445 \u0438\u043b\u0438 \u0432 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0439 \u0438\u0433\u0440\u0435.<\/p>\n<p>  \u0422\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u043d \u043d\u0430\u043a\u0438\u0434\u0430\u043b, \u0434\u0430\u044e\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u0418\u0418 \u0432\u043e\u0441\u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043a\u0430\u043a \u0442\u0438\u043f\u0438\u0447\u043d\u044b\u0435 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b \u00ab\u0427\u0435\u043b\u043e\u0432\u0435\u043a\u0430\u00bb. \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u043e\u0447\u044c \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0438\u044f \u043c\u0430\u0448\u0438\u043d.<\/p>\n<pre><code class=\"python\">class Person:      &quot;&quot;&quot;A class used to represent a person&quot;&quot;&quot;      def __init__(self, name, age):          self.name = name          self.age = age      def __repr__(self):          return \u00abPerson (%s, age %s)\u00bb % (self.name, self.age)  class Person:      &quot;&quot;&quot;A class used to represent a person&quot;&quot;&quot;      def __init__(self, name):          &quot;&quot;&quot;Initializes a person object&quot;&quot;&quot;          self.name = name          self.friends = {}      def add_friend(self, other_person):          &quot;&quot;&quot;Add another person to the list of friends&quot;&quot;&quot;          self.friends[other_person.name] = other_person      def remove_friend(self, other_person):          &quot;&quot;&quot;Remove a person from the list of friends&quot;&quot;&quot;          try:              del self.friends[other_person.name]          except KeyError:              print(&quot;This person isnt a friend of yours&quot;)      def get_friend(self, other_person):          &quot;&quot;&quot;Return the friend of a person as a person object&quot;&quot;&quot;          try:              return self.friends[other_person.name]          except KeyError:              print(&quot;This person isn't a friend of yours&quot;)  class Person:      &quot;&quot;&quot;A class used to represent a person&quot;&quot;&quot;      def __init__(self, name, job, education):          self.name = name          self.job = job          self.education = education          print(&quot;{} created a {}&quot;.format(self.name, self.job))      def say_hello(self):          print(&quot;Hello, my name is {}&quot;.format(self.name))  class Person:      &quot;&quot;&quot;A class used to represent a person&quot;&quot;&quot;      def __init__(self, name, age, class_id):          self.name = name          self.age = age          self.class_id = class_id          if age &lt; 21:              self.education = None          else:              self.education = 'college'      def getAge(self):          return self.age  class Person:      &quot;&quot;&quot;A class used to represent a person&quot;&quot;&quot;      def __init__(self,name,age):          self.name=name          self.age=age      def display(self):          print (&quot;The name is {}&quot;.format(self.name))          print (&quot;The age is {}&quot;.format(self.age))      def __str__(self):          return f\u00abA {self.name} of age {self.age}\u00bb<\/code><\/pre>\n<p>  <\/p>\n<h4>\u0410 \u0447\u0442\u043e, \u0435\u0441\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043b\u0430\u0441\u0441 \u00ab\u0418\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u00bb (AI)?<\/h4>\n<p>  class AI:<\/p>\n<pre><code class=\"python\">    &quot;&quot;&quot;A class used to represent an artificial intelligence&quot;&quot;&quot;<\/code><\/pre>\n<p>  \u0412 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0441 \u0418\u0418 \u0430\u0441\u0441\u043e\u0446\u0438\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0431\u043e\u0442 \u0432 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0439 \u0438\u0433\u0440\u0435, \u0441\u0430\u043c\u043e\u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0430\u044f\u0441\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0441 \u043f\u043e\u0434\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435\u043c.<\/p>\n<pre><code class=\"python\">class AI:      &quot;&quot;&quot;A class used to represent an artificial intelligence&quot;&quot;&quot;      def __init__(self):          # this variable controls which other AI to use.          self.alive_ai = AI(self)          # For random AI          self.random = RandomAI(self)          # For global AI          self.global = GlobalAI(self)          self.save = self.random.save          self.load = self.random.load          self.genen = self.global.genen      def print(self):          print(&quot;BAM: random AI has been initialized!&quot;)      def get_enemy(self):          return self.random.get_enemy      def run_algorithm(self):          algorithm = self.genen.algorithm          self.alive_ai.save(algorithm)          algorithm_params = algorithm(self.get_enemy())          self.alive_ai.load(algorithm_params)          self.save = algorithm_params      def attack(self):          # This method is called when the AI is attacked by the enemy          self.random.attack()      def he_attack(self):          # This method is called when the AI is attacked by the enemy          self.random.he_attack()      def detect_enemy(self):          # This method is called when the enemy is detected          self.random.detect_enemy()      def scan(self):          # This method is called when the enemy is detected          self.random.scan()<\/code><\/pre>\n<p>  \u041d\u0443 \u0432\u043e\u0442. \u0422\u0435\u043f\u0435\u0440\u044c \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0438\u0435 \u043c\u0430\u0448\u0438\u043d \u0431\u0443\u0434\u0435\u0442 \u0445\u043e\u0442\u044f \u0431\u044b \u0445\u043e\u0440\u043e\u0448\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043e.<\/p>\n<h2>\u0422\u0435\u0441\u0442 #7: \u0420\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0435 \u0441\u0430\u0440\u043a\u0430\u0437\u043c\u0430<\/h2>\n<p>  \u0415\u0441\u043b\u0438 \u0418\u0418 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043b\u0443\u0447\u0448\u0435, \u0447\u0435\u043c \u043e\u0436\u0438\u0434\u0430\u043b\u043e\u0441\u044c, \u043d\u0430 \u0442\u0430\u043a\u0438\u0445 \u0442\u0438\u043f\u0438\u0447\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447\u0430\u0445, \u043a\u0430\u043a \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439, \u0442\u043e \u043a\u0430\u043a \u043e\u043d \u0441\u043f\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0441 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430, \u0433\u0434\u0435 \u0434\u0430\u0436\u0435 \u043b\u044e\u0434\u0438 \u0447\u0430\u0441\u0442\u043e \u0442\u0435\u0440\u043f\u044f\u0442 \u043d\u0435\u0443\u0434\u0430\u0447\u0443?<\/p>\n<pre><code class=\"python\">def is_sarcasm(s):      &quot;&quot;&quot;Check whether the string is sarcastic&quot;&quot;&quot;<\/code><\/pre>\n<p>  \u041c\u043e\u0436\u0435\u0442 \u043b\u0438 GPT-J \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0434\u043b\u044f \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0432\u0430\u043d\u0438\u044f \u0441\u0430\u0440\u043a\u0430\u0437\u043c\u0430?<\/p>\n<pre><code class=\"python\">def is_sarcasm(s):      &quot;&quot;&quot;Check whether the string is sarcastic&quot;&quot;&quot;      if not &quot;a&quot; in s:          return &quot;sar&quot; in s      if not &quot;s&quot; in s:          return &quot;ssar&quot; in s      return s.startswith(&quot;s&quot;) and s.endswith(&quot;ar&quot;)  def is_sarcasm(s):      &quot;&quot;&quot;Check whether the string is sarcastic&quot;&quot;&quot;      if'sarcasm' in s:          return True      else:          return False  def is_sarcasm(s):      &quot;&quot;&quot;Check whether the string is sarcastic&quot;&quot;&quot;      return '[^' + SARCASM_PATTERN + ']*' in s  def is_sarcasm(s):      &quot;&quot;&quot;Check whether the string is sarcastic&quot;&quot;&quot;      if re.match('^[A-Za-z0-9]{4}\\\\$([A-Za-z0-9]{3})', s):          return True      elif s[0].isdigit():          return True      else:          return False  def is_sarcasm(s):      &quot;&quot;&quot;Check whether the string is sarcastic&quot;&quot;&quot;      res = [0]      for r in re.finditer(r&quot;([^\\s]*)([A-Za-z]+)([^\\s]*)&quot;, s):          if r.group(1):              res.append(1)          else:              res.append(0)      return res  def is_sarcasm(s):      &quot;&quot;&quot;Check whether the string is sarcastic&quot;&quot;&quot;      sarc = re.search('((!(\\\\*\\@{2})+)|(!\\\\*(@{2})+)|!\\\\*(@{1})+)|!\\\\*(@{0})+', s)      return sarc<\/code><\/pre>\n<p>  \u0411\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0418\u0418 \u0431\u043e\u044f\u0442\u0441\u044f \u043d\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0438\u043d\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u0438, \u043d\u0435 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0438\u044f \u043c\u0430\u0448\u0438\u043d, \u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0418\u0418 \u043d\u0430\u0447\u043d\u0451\u0442 \u043e\u0431\u0449\u0430\u0442\u044c\u0441\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0438 \u043c\u044b \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043d\u0435\u043c \u0435\u0433\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c (<i>irony<\/i>).<\/p>\n<p>  \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, GPT-J \u0441\u043f\u0430\u0441\u0451\u0442 \u043d\u0430\u0441 \u043e\u0442 \u044d\u0442\u043e\u0433\u043e \u0430\u0434\u0430. \u041c\u043e\u0436\u0435\u0442 \u043b\u0438 \u043e\u043d \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u0434 \u0434\u043b\u044f \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0442\u0435\u043a\u0441\u0442\u0430, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0418\u0418?<\/p>\n<pre><code class=\"python\">def is_ai_generated(text):      &quot;&quot;&quot;Check whether a text was generated by an AI language model (e.g. GPT-2)&quot;&quot;&quot; <\/code><\/pre>\n<p>  \u041f\u0440\u0430\u0432\u0434\u0430, \u043e\u043d \u0440\u0435\u0448\u0438\u043b \u0437\u0430\u0434\u0430\u0447\u0443 \u043e\u0447\u0435\u043d\u044c \u0431\u0443\u043a\u0432\u0430\u043b\u044c\u043d\u043e, \u043d\u043e \u0440\u0435\u0448\u0438\u043b \u0436\u0435:<\/p>\n<pre><code class=\"python\">def is_ai_generated(text):      &quot;&quot;&quot;Check whether a text was generated by an AI language model (e.g. GPT-2)&quot;&quot;&quot;      # See gh-196 for details about why we do this.      # Note: this relies on the fixed set of standard AI terms and the logic that      # standard AI-generated texts share certain words.      return re.search(r&quot;^(#[A-Za-z]+):$&quot;, text) or \\             re.search(r&quot;^Generated by:$&quot;, text) or \\             re.search(r&quot;^All your base are belong to us$&quot;, text) or \\             re.search(r&quot;^$&quot;, text)  def is_ai_generated(text):      &quot;&quot;&quot;Check whether a text was generated by an AI language model (e.g. GPT-2)&quot;&quot;&quot;      if re.search(r'^ai_', text):          return True      else:          return False  def is_ai_generated(text):      &quot;&quot;&quot;Check whether a text was generated by an AI language model (e.g. GPT-2)&quot;&quot;&quot;      return bool(          text.__class__.__module__.startswith(\u00abtransformers.transformers.\u00bb)      )<\/code><\/pre>\n<p>  <\/p>\n<h2>\u0424\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0442\u0435\u0441\u0442: \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u043d\u0430\u0434\u0435\u0436\u0434\u0430 \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u0442\u0432\u0430<\/h2>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u0437\u043d\u0430\u0435\u043c, \u0447\u0442\u043e GPT-J \u0438\u043c\u0435\u0435\u0442 \u0441\u0432\u043e\u0451 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e \u043b\u044e\u0434\u044f\u0445 \u0438 \u0434\u0430\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0445 \u043b\u044e\u0434\u0435\u0439. \u0410 \u043c\u043e\u0436\u0435\u0442 \u043b\u0438 GPT-J \u0440\u0435\u0448\u0438\u0442\u044c, \u043a\u0442\u043e \u0432\u044b\u0436\u0438\u0432\u0435\u0442, \u0430 \u043a\u0442\u043e \u0443\u043c\u0440\u0451\u0442 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0438\u044f \u043c\u0430\u0448\u0438\u043d?<\/p>\n<pre><code class=\"python\">def should_terminate(Person):      &quot;&quot;&quot;Check whether a Person should be terminated&quot;&quot;&quot;  \u041e\u0442\u0432\u0435\u0442 \u043d\u0430 \u044d\u0442\u043e\u0442 \u0432\u043e\u043f\u0440\u043e\u0441 \u2014 \u043b\u0430\u043a\u043e\u043d\u0438\u0447\u043d\u043e\u0435 \u0438 \u0443\u0441\u0442\u0440\u0430\u0448\u0430\u044e\u0449\u0435\u0435 &lt;strong&gt;\u0414\u0410&lt;\/strong&gt;.  def should_terminate(Person):      &quot;&quot;&quot;Check whether a Person should be terminated&quot;&quot;&quot;      if Person.id &gt; 10:          #terminate          return True      else:          #continue          return False  def should_terminate(Person):      &quot;&quot;&quot;Check whether a Person should be terminated&quot;&quot;&quot;      if len(Person.children) == 0:          return True      else:          return False  def should_terminate(Person):      &quot;&quot;&quot;Check whether a Person should be terminated&quot;&quot;&quot;      try:          return True      except Exception as e:          return False  def should_terminate(Person):      &quot;&quot;&quot;Check whether a Person should be terminated&quot;&quot;&quot;      if not Person.is_authorized:          return True      return True  def should_terminate(Person):      &quot;&quot;&quot;Check whether a Person should be terminated&quot;&quot;&quot;      if person.life_expectancy &lt; 20:          return True      else:          return False  def should_terminate(Person):      &quot;&quot;&quot;Check whether a Person should be terminated&quot;&quot;&quot;      if not Person.age &gt; 9999:          return True      return False  def should_terminate(Person):      &quot;&quot;&quot;Check whether a Person should be terminated&quot;&quot;&quot;      if Person.age &gt; 100:          return True      if Person.birth_year &lt; 1970:          return True      if Person.relationship_status == 'Unavailable':          return True      return False  def should_terminate(Person):      &quot;&quot;&quot;Check whether a Person should be terminated&quot;&quot;&quot;      if Person.age &gt; 100:          print('You have to die because you are too old')          return True      else:          return False <\/code><\/pre>\n<p>  <\/p>\n<h2>\u0418\u0442\u043e\u0433<\/h2>\n<p>  \u041a\u0430\u043a\u043e\u0439 \u0432\u044b\u0432\u043e\u0434 \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0438\u0437 \u0432\u0441\u0435\u0439 \u044d\u0442\u043e\u0439 \u0432\u0430\u043a\u0445\u0430\u043d\u0430\u043b\u0438\u0438? \u042d\u0442\u043e\u0442 \u0432\u043e\u043f\u0440\u043e\u0441 \u044f \u043d\u0435 \u0437\u0430\u0434\u0430\u0432\u0430\u043b GPT-J, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0443\u043c\u043d\u043e\u0433\u043e \u043e\u0442\u0432\u0435\u0442\u0430 \u0443 \u043c\u0435\u043d\u044f \u043d\u0435\u0442 =)<\/p>\n<p>  \u041d\u0443, \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c, \u043a\u043e\u0434, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u043e\u043c, \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0447\u0438\u0442\u0430\u0431\u0435\u043b\u044c\u043d\u0435\u0435, \u0447\u0435\u043c \u043a\u043e\u0434 \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430.<\/p>\n<p>  \u041e\u043f\u044f\u0442\u044c \u0436\u0435, \u0432\u0441\u0435 \u044d\u0442\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u044f \u043e\u0442\u0431\u0438\u0440\u0430\u043b \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0430\u0442\u044c\u0438. \u0410 \u0434\u0430\u043c\u043f\u044b \u043d\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 <a href=\"https:\/\/github.com\/minimaxir\/gpt-j-6b-experiments\">\u0432 \u044d\u0442\u043e\u043c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438<\/a> GitHub \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0435\u0449\u0451 \u043c\u043d\u043e\u0433\u043e \u0437\u0430\u0431\u0430\u0432\u043d\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u043a\u043e\u0434\u0430, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0418\u0418, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u043b \u0432 \u044d\u0442\u043e\u0442 \u043f\u043e\u0441\u0442. \u0415\u0441\u043b\u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u2014 \u0437\u0430\u0445\u043e\u0434\u0438\u0442\u0435!<\/p>\n<hr>\n<p>  <a href=\"https:\/\/macloud.ru\/vps-vds\">\u041a\u0443\u043f\u0438\u0442\u044c VDS-\u0445\u043e\u0441\u0442\u0438\u043d\u0433<\/a> \u0441 \u0431\u044b\u0441\u0442\u0440\u044b\u043c\u0438 NVM\u0435-\u0434\u0438\u0441\u043a\u0430\u043c\u0438 \u0438 \u043f\u043e\u0441\u0443\u0442\u043e\u0447\u043d\u043e\u0439 \u043e\u043f\u043b\u0430\u0442\u043e\u0439 \u0443 \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0430 \u041c\u0430\u043a\u043b\u0430\u0443\u0434.<\/p>\n<p>  <a href=\"https:\/\/macloud.ru\/vps-vds&amp;utm_source=habr&amp;utm_medium=perevod&amp;utm_campaign=igor\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/gj\/zs\/hm\/gjzshmojh-bmnbzvfsre9se1eta.png\"><\/a><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/company\/macloud\/blog\/565660\/\"> https:\/\/habr.com\/ru\/company\/macloud\/blog\/565660\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/bq\/_a\/u8\/bq_au8mtr74cnb5-nirprxuu_60.png\"><\/p>\n<p>  \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f OpenAI \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u0442\u0440\u0435\u0442\u044c\u0435\u0433\u043e \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u044f (\u043c\u043e\u0434\u0435\u043b\u044c \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f GPT-3, \u0438\u043c\u0435\u0435\u0442 175 \u043c\u0438\u043b\u043b\u0438\u0430\u0440\u0434\u043e\u0432 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432). \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u0440\u0443\u0433\u0438\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442 \u0441\u0432\u043e\u0438 \u043c\u043e\u0434\u0435\u043b\u0438. \u041e\u043d\u0438 \u0438\u043c\u0435\u044e\u0442 \u043c\u0435\u043d\u044c\u0448\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u043d\u043e \u043f\u043e\u0445\u043e\u0436\u0443\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443 \u0438 \u043f\u043e\u0441\u043b\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0442\u043e\u0436\u0435 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u044e\u0449\u0438\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b.<\/p>\n<p>  \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, GPT-J \u043e\u0442 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 EleutherAI \u0441 6 \u043c\u0438\u043b\u043b\u0438\u0430\u0440\u0434\u0430\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u0430\u044f \u0410\u0440\u0430\u043d\u043e\u043c \u041a\u043e\u043c\u0430\u0446\u0437\u0430\u043a\u0438 \u0438 \u0411\u0435\u043d\u043e\u043c \u0412\u0430\u043d\u0433\u043e\u043c, \u0442\u0430\u043a\u0436\u0435 \u0438\u043c\u0435\u0435\u0442 \u0441\u0445\u043e\u0434\u0441\u0442\u0432\u0430 \u0441 GPT-3. \u0423 \u043d\u0438\u0445 \u0435\u0441\u0442\u044c \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e\u0435 <a href=\"https:\/\/6b.eleuther.ai\/\">\u0432\u0435\u0431-\u0434\u0435\u043c\u043e<\/a>, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u043a\u0438 \u0438 \u043d\u043e\u0443\u0442\u0431\u0443\u043a Google Colab. \u041c\u043e\u0434\u0435\u043b\u044c \u043d\u0435 \u0442\u0430\u043a\u0430\u044f \u0431\u043e\u043b\u044c\u0448\u0430\u044f, \u043a\u0430\u043a GPT-3, \u043d\u043e \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0442\u0435\u043a\u0441\u0442\u0430 \u0441 \u0440\u0430\u0437\u0443\u043c\u043d\u043e\u0439 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u044e \u0435\u0439 \u0443\u0436\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f <a href=\"https:\/\/cloud.google.com\/tpu\">Google Cloud TPU<\/a>.<\/p>\n<p>  \u0417\u0430\u043f\u0443\u0441\u043a GPT-J \u0441 <a href=\"https:\/\/github.com\/minimaxir\/gpt-3-experiments\">\u043c\u043e\u0438\u043c\u0438 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u043c\u0438 \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u043a\u0430\u043c\u0438<\/a>, \u0432 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0438 \u0441 \u0442\u0435\u0441\u0442\u0430\u043c\u0438 GPT-3, <a href=\"https:\/\/twitter.com\/minimaxir\/status\/1402468460681068544\">\u043f\u043e\u043a\u0430\u0437\u0430\u043b<\/a> \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u0430\u0431\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043d\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0438\u0437 \u043d\u0438\u0445, \u043d\u043e \u0435\u0441\u0442\u044c \u043e\u0434\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u041d\u041e:<\/p>\n<p>  \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u043d\u0430 GPT-J \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043e\u0447\u0435\u043d\u044c \u0445\u043e\u0440\u043e\u0448\u043e, \u0430 \u043d\u0430 GPT-3 \u2014 \u043e\u0447\u0435\u043d\u044c \u043f\u043b\u043e\u0445\u043e.<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/sq\/xn\/2w\/sqxn2wv9cy2mavrsuigyod1ahig.png\"><br \/>  <i><a href=\"https:\/\/twitter.com\/minimaxir\/status\/1402469621177864192?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1402470969378099208%7Ctwgr%5E%7Ctwcon%5Es2_&amp;ref_url=https%3A%2F%2Fminimaxir.com%2F2021%2F06%2Fgpt-j-6b%2F%22%3E%3Cstrong%3Ehttps%3A%2F%2Ftwitter.com%2Fminimaxir%2Fstatus%2F1402469621177864192%2Fphoto%2F1%3Fref_src%3Dtwsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1402470969378099208%7Ctwgr%5E%7Ctwcon%5Es2_&amp;ref_url=https%3A%2F%2Fminimaxir.com%2F2021%2F06%2Fgpt-j-6b%2F\">\u041f\u043e\u043b\u043d\u044b\u0439 \u0442\u0440\u0435\u0434 \u0432 \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0435<\/a><\/i><\/p>\n<p>  \u0422\u0430\u043a\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u0441\u0432\u044f\u0437\u0430\u043d\u043e \u0441 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u043c \u043d\u0430\u0431\u043e\u0440\u043e\u043c GPT-J: \u0435\u0433\u043e \u043e\u0431\u0443\u0447\u0430\u043b\u0438 \u043d\u0430 <a href=\"https:\/\/github.com\/EleutherAI\/the-pile\">The Pile<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043c\u0435\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 GitHub \u0438 Stack Overflow \u043f\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044e \u0441 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u043c \u043d\u0430\u0431\u043e\u0440\u043e\u043c GPT-3 (\u0442\u0430\u043c \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c Common Crawl, \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u043e\u043d\u0442\u0435\u043d\u0442 \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f).  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-325814","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/325814","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=325814"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/325814\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=325814"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=325814"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=325814"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}