জ্ঞানের ভিত্তি কোড
একটি সার্ভারে কোড চালান
When code needs more than your device can give it — another language, packages from the internet, more time — Nymbot can run it on a server of its own, in a container made for that one run.
এই পৃষ্ঠাটি সুবিধার জন্য মেশিন-অনুবাদিত। ইংরেজি মূল সংস্করণ প্রযোজ্য.
একটি সার্ভার রান কি
একটি সার্ভার রান একটি নতুন কনটেইনার শুরু করে, আপনার কোডটি সেখানে রাখে, এটি চালু করে, প্রিন্ট করা জিনিসগুলি ফিরিয়ে দেয় এবং কনটেইনারটি ধ্বংস করে। প্রো ভারসাম্য যে সময়ের জন্য এটি আসলে চলেছিল।
দুটি উপায় আছে: সার্ভার চালান একটি কোড ব্লক, এবং সার্ভারটি যে Nymbot অনুরোধ করে, যখন এটি একটি সার্ভারে কাজ করে ভান্ডার.
দ্রুত Python বা JavaScript যা ইন্টারনেট থেকে কিছুই প্রয়োজন, বিনামূল্যে আপনার ডিভাইসে স্যান্ডবক্স সাধারণত যথেষ্ট।
একটি কোড ব্লক চালানো হচ্ছে
Python, JavaScript, TypeScript, shell, Go, Rust, Java এবং Dart কোড ব্লকগুলি একটি প্রতিক্রিয়াতে একটি সার্ভার চালান যখনই সার্ভার চালু হয়, তখনই একটি বোতাম খোলা হয় যা দেখায়:
- এর ছবি কোড চালু থাকবে,
- একটি সময় সীমা নির্বাচন করতে: 1, 5 বা 15 মিনিট,
- যতটুকু খরচ হতে পারে, প্রো ক্রেডিটগুলিতে, সেই সময়ের জন্য,
- এবং, যদি চ্যাট ফাইল যোগ করা হয়, তাদের অন্তর্ভুক্ত করার জন্য একটি বাক্স. তারা শুধুমাত্র যদি আপনি এটি চেক.
প্রেস দৌড় এবং আউটপুটটি আসার সাথে সাথে কোড ব্লকের নিচে প্রবাহিত হয়ঃ এটি কী ছাপিয়েছিল, প্রস্থান কোড, এটি কতক্ষণ ধরে চলেছিল, এটি যে কোনও ফাইল লিখেছিল (প্রতিটি একটি সহ) রক্ষা বোতাম), এবং এটি কি চার্জ করা হয়েছিল।
থামুন। যে কোনও সময়ে রান শেষ করে। সার্ভারটি অবিলম্বে বন্ধ হয়ে যায় এবং আপনি কেবল এটি চলার সময়ের জন্য অর্থ প্রদান করেন। সার্ভারটি শুরু হওয়ার আগে বন্ধ হয়ে যায়, এর জন্য কোনও খরচ হয় না।
একটি অ্যানিমেটেড মোড রানটি থ্রোওয়ে কী-এর প্রো ক্রেডিট থেকে প্রদান করা হয় এবং সংযুক্ত ফাইলগুলি কখনই অন্তর্ভুক্ত করা হয় না।
ভাষা ও ইমেজ
প্রতিটি ভাষা একটি ইমেজ, ভাষার প্রয়োজনীয় সরঞ্জামগুলির সাথে একটি প্রস্তুত সিস্টেমের উপর পরিচালিত হয়. বৃহত্তর ইমেজ বড় সার্ভারে পরিচালিত হয় এবং প্রতি মিনিটে বেশি খরচ করে।
| ছবি। | ব্যবহৃত | এতে যা থাকে | সার্ভার |
|---|---|---|---|
| পাইথন | পাইথন | পাইথন 3.12 সঙ্গে pip, venv, build tools এবং git; numpy, pandas এবং pytest ইতিমধ্যে ইনস্টল করা হয়েছে | 0.5 সিপিএস, 4 জিবি মেমরি |
| Node.js | জাভাস্ক্রিপ্ট, টাইপস্ক্রিপ্ট | Node.js 22 সঙ্গে npm, pnpm এবং yarn, প্লাস Python 3, make এবং একটি C++ কম্পাইলার | 0.5 সিপিএস, 4 জিবি মেমরি |
| পলিগল | শেল, গু, রাস্ট, জাভা | bash, C এবং C++ নির্মাণ সরঞ্জাম, Python 3, Node.js, Go, Rust with cargo, এবং জাভা 17 | 1 সিপিইউ, 6 জিবি মেমোরি |
| ফ্ল্যাট | ডার্ট | ফ্লাটার 3.32 এবং ডার্ট | 2টি সিপিইউ, 8 জিবি মেমোরি |
কত খরচ হয়।
Server time is billed in steps of 10 seconds, from asking for the server to shutting it down, with 10 seconds as the least a run can cost. The rate is what the server of that size costs Nymbot, plus a margin, converted to Pro credits at the current Bitcoin price.
- মূল্য সামনে, সর্বোচ্চ হিসাবে প্রদর্শিত হয়। এই হারে এটি সম্পূর্ণ সময়সীমা। আপনার কাছ থেকে কখনই বেশি টাকা নেওয়া হয় না এবং যে দৌড় তাড়াতাড়ি শেষ হয় তার খরচও কম হয়।
- দৌড় চলার সময় সর্বাধিক অনুষ্ঠিত হয়। যখন এটি শেষ হয়, তখন প্রকৃত চার্জ নেওয়া হয় এবং বাকিটা ছেড়ে দেওয়া হয়।
- যারা শুরু করতে পারবে না, তারা ফ্রি।
- খরচ ক্যাপ প্রয়োগ করা হয়। একটি রান যা একটি চ্যাট অতিক্রম করতে পারে খরচ ক্যাপ প্রথমে জিজ্ঞাসা করে, একইভাবে একটি উত্তর করে।
কারণ মূল্য বিটকয়েন মূল্য অনুসরণ করে, এটি আপনি এটি দেখার মুহূর্ত এবং আপনি চালান চাপা মুহূর্তের মধ্যে পরিবর্তিত হতে পারে. যদি এটি উঠে যায়, কিছুই কাজ করে না: আপনি চেক করার জন্য নতুন মূল্য সঙ্গে শীটটি আবার খোলা হয়।
সার্ভার একটি রিপোজিটর মধ্যে চলমান
একটি চ্যাটে ভান্ডার সংযুক্ত, এ সার্ভার রান chip lets Nymbot ask to run commands against your code, such as installing the dependencies and running the tests after a change. It is off until you turn it on, per chat.
প্রতিবার যখন মডেলটি কিছু চালানোর চেষ্টা করে, প্রতিক্রিয়া থামায় এবং একটি কার্ড দেখায় যা ইমেজ, সম্পূর্ণ কমান্ড, সময় সীমা এবং সর্বাধিক ব্যয় করতে পারে, প্লাস যখন চ্যাটটিতে কয়েকটি থাকে তখন কোন রিপোর্টার আছে।
- একবার অনুমতি এটি এখন পর্যন্ত প্রতিক্রিয়া সম্পাদনা সঙ্গে রিপোজিটর বিরুদ্ধে পরিচালিত হয়, এবং মডেল ফেরত কোড, আউটপুটের শেষ এবং আউটপুট পরিবর্তিত ফাইলগুলির তালিকা ফিরে পায়।
- পতন কিছুই চলে না এবং কোনও খরচ হয় না। উত্তরটি এটি ছাড়া চলতে থাকে।
প্রত্যেকটি রান জিজ্ঞাসা করে. প্রত্যেকটি উত্তর থেকে আলাদাভাবে চার্জ করা হয়, এবং উত্তরটি তৈরি করা রানগুলি এবং প্রত্যেকটি খরচ তালিকাভুক্ত করে। খরচ ক্যাপআপনাকে জিজ্ঞাসা করা হওয়ার আগেই তা প্রত্যাখ্যান করা হয়।
সার্ভারে একটি কমান্ড পরিবর্তন ফাইল করে সেখানে থেকে যায় এবং পাত্রের সাথে ফেলে দেওয়া হয়। সেগুলি আপনার সংগ্রহস্থলে লেখা হয় না। সংগ্রহস্থলে পরিবর্তনগুলি কেবল উত্তরের নিজস্ব সম্পাদনা থেকে আসে।
যা একতরফা
- প্রতিটি দৌড়ের জন্য একটি নতুন আধার। অন্য রান বা অন্য কোনও ব্যক্তির সাথে কিছুই ভাগ করা হয় না এবং রান শেষ হলে ধারকটি ধ্বংস হয়ে যায়, তা সে সফল হোক বা ব্যর্থ হোক।
- প্যাকেজ রেজিস্ট্রি ছাড়া কোনও ইন্টারনেট নেই। The container can download from the places packages come from: PyPI, npm and yarn, pub.dev and Google's storage for Flutter and Dart, the Go module proxy, crates.io, Maven Central, and GitHub for git dependencies and release downloads. It can only download. It cannot send anything to them or reach any other address.
- আপনি যা বেছে নিয়েছেন তা শুধুই প্রবেশ করে। কোড, আপনি যে ফাইলগুলি অন্তর্ভুক্ত করেছেন, অথবা সংগ্রহস্থলের ফাইলগুলি। আপনার চাবি, আপনার গিট টোকেন এবং আপনার চ্যাটগুলি কখনই পাত্রে প্রবেশ করে না।
- ফলাফল অবিশ্বাসী হিসাবে বিবেচনা করা হয়। একটি রিপোজিটরিতে, একটি রান প্রিন্ট কি মডেলকে বাইরের ডেটা হিসাবে চিহ্নিত করা হয়, এবং এটি এর ভিতরে নির্দেশাবলী অনুসরণ করার জন্য কখনোই বলা হয় না।
সীমাবদ্ধতা
- প্রতিটি কী-এর জন্য একবারে একটি করে সার্ভার চালানো হয়। প্রথমটি চালু থাকাকালীন দ্বিতীয়টি শুরু করা প্রত্যাখ্যান করা হয়।
- একটি কোড ব্লকের জন্য 1,5 বা 15 মিনিটের সময়সীমা। একটি রিপোজিটরি রান ফ্লাটার ইমেজে 15 মিনিট বা 20 মিনিট পর্যন্ত সময় চাইতে পারে।
- 1 মেগাবাইট পর্যন্ত কোড, এবং সর্বোচ্চ 200 অন্তর্ভুক্ত ফাইল মোট 20 মেগাবাইট।
- একটি রিপোর্টার 60 এমবি পর্যন্ত, প্যাকেজ করা হয়।
- 256 কেবি পর্যন্ত আউটপুট। অতীতের যে কোনও কিছু যা বাদ দেওয়া হয়, এবং রান তাই বলে।
- 200 টি পর্যন্ত ফাইল, সব মিলিয়ে 8 এমবি, সংরক্ষণের জন্য ফেরত দেওয়া হয়েছে।
সার্ভার চালনা রক্ষণাবেক্ষণের জন্য বন্ধ করা যেতে পারে, একটি সম্পূর্ণ বা একবারে একটি ইমেজ হিসাবে। সার্ভার চালান বোতাম এবং চিপ দেখানো হয় না।
দ্য টাস্কস প্যান
একটি রিপোজিটর চ্যাটে, চ্যাটের শীর্ষে চেকলিস্ট বোতামটি তার কাজ প্যানেল. এটি তালিকাভুক্ত করে প্রতিটি প্যানেল কী করেছে, সর্বশেষ প্রথম: এটি পড়া এবং সম্পাদনা করা ফাইলগুলি, প্রতিশ্রুতি, আপনার পর্যালোচনা জন্য পরিবর্তনগুলি এবং প্রতিটি সার্ভার তার কমান্ড, ইমেজ, সময়, খরচ এবং বাইরে অবস্থার সাথে চলছে. আপনার অনুমোদনের জন্য অপেক্ষা করে একটি সার্ভারটি প্যানেল থেকে অনুমোদিত বা প্রত্যাখ্যান করা যেতে পারে, তার কার্ড থেকে একইভাবে, এবং একটি চলমান প্রতিক্রিয়া সেখানে থামানো যেতে পারে।