কখনো কি একজন স্প্রেডশীট ব্যবহার করেন না এমন কাউকে স্প্রেডশীট বোঝানোর চেষ্টা করেছেন? "পিভট" এবং "Column D কেন লুকানো আছে?" এর মধ্যে কোথাও তাদের চোখ আটকে যায়। এখন কল্পনা করুন আপনি সেই স্প্রেডশীটটিকে একটি বন্ধুত্বপূর্ণ ছোট ওয়েব অ্যাপে পরিণত করতে পারেন—বোতাম! স্লাইডার! এমন চার্ট যা স্লাইডার নাড়াচাড়া করলে নাচতে শুরু করে!—জাভাস্ক্রিপ্ট, সিএসএস বা জটিল কোনো কারসাজি শেখা ছাড়াই। এটিই হলো Streamlit, পাইথন লাইব্রেরি যা স্ক্রিপ্টকে শেয়ারযোগ্য অ্যাপে রূপান্তরিত করে, অনেকটা স্মুদি মেশিন যেভাবে ফলকে সকালের নাস্তায় পরিণত করে।
কিন্তু এখানে একটি সমস্যা আছে: "সেরা Streamlit টিউটোরিয়াল" লিখে অনুসন্ধান করলে, আপনি এমন একটি গোলকধাঁধায় পড়বেন যা আংশিকভাবে হগওয়ার্টস, আংশিকভাবে Ikea ম্যানুয়াল। এর মধ্যে কোনটি আপনাকে এমন কিছু তৈরি করতে সাহায্য করবে যা আপনি সোমবার আপনার বসকে দেখাতে পারবেন? সেরা Streamlit টিউটোরিয়ালগুলি খুঁজে বের করার জন্য আমি এক সপ্তাহ ধরে ডকুমেন্ট, ভিডিও, কমিউনিটি গাইড এবং কিছু "আলু দিয়ে রেকর্ড করা" YouTube ভিডিও ঘেঁটেছি—দক্ষতার স্তর এবং আপনি কী তৈরি করতে চান তার উপর ভিত্তি করে।
এটি আপনার জন্য ব্যবহারকারী-বান্ধব, Pogue-স্টাইলের ফিল্ড গাইড: কোথা থেকে শুরু করবেন, এর পরে কী দেখবেন, কোন উদাহরণগুলি Streamlit আপডেটের সময় ভেঙে যাবে না এবং কীভাবে সেই ফাঁদগুলি এড়িয়ে যাবেন যা একটি ল্যাব্রাডরের মোজা চিবানোর মতো সময় নষ্ট করে।
সাধারণ ভাষায় Streamlit আসলে কী?
Streamlit হলো একটি পাইথন লাইব্রেরি যা আপনার ডেটা স্ক্রিপ্টগুলোকে একটি তাৎক্ষণিক ইন্টারফেসে মুড়ে দেয়। Flask অ্যাপ লেখার বা React এর সঙ্গে কুস্তি করার পরিবর্তে, আপনি আপনার কোডে st.button, st.slider, st.line_chart এর মতো Streamlit কল যোগ করুন এবং ব্যস—আপনি একটি শেয়ারযোগ্য ওয়েব অ্যাপ পেয়ে গেলেন।
- Streamlit ওয়েব পেজটি সামলায়।
- আপনি একটি লিঙ্ক শেয়ার করুন। আপনার বস আপনাকে স্ক্রিনশট ইমেল করা বন্ধ করে দেবেন।
সেরা Streamlit টিউটোরিয়াল: একটি কিউরেটেড, কাজের তালিকা
আমি সেরা Streamlit টিউটোরিয়ালগুলোকে স্তরে ভাগ করেছি। আপনার রাস্তা বেছে নিন; আপনি যদি উচ্চাভিলাষী হন তবে মিলিয়ে মিশিয়ে নিন।
স্তর 1: একেবারে নতুনদের জন্য (60-90 মিনিটে প্রথম অ্যাপ)
- অফিসিয়াল "Get started with Streamlit" ডকুমেন্টেশন
কেন এটি চমৎকার: এটি বর্তমান, নির্ভুল এবং Streamlit টিম দ্বারা ডিজাইন করা। আপনি Streamlit ইনস্টল করবেন, রিরান মডেল কীভাবে কাজ করে তা শিখবেন (স্পয়লার: স্ক্রিপ্টটি প্রতিটি ইন্টারঅ্যাকশনের সময় উপর থেকে নীচে পর্যন্ত চলে) এবং একটি ছোট, সন্তোষজনক অ্যাপ তৈরি করবেন। অন্য কিছু করার আগে এখান থেকে শুরু করুন। "আমি কিছু তৈরি করেছি" মুহূর্তের জন্য এটি সবচেয়ে ছোট পথ।
- অফিসিয়াল "Create an app" টিউটোরিয়াল
কেন এটি চমৎকার: আপনি একটি বাস্তব অ্যাপ তৈরি করবেন যা Uber পিকআপ ডেটা সেট নিয়ে কাজ করে। অর্থাৎ আপনি উইজেট, চার্ট, ম্যাপ এবং ক্যাশিং ব্যবহার করে দেখবেন, যেখানে স্পষ্ট ব্যাখ্যা এবং কপি-পেস্ট করার মতো কোড থাকবে যা সত্যিই কাজ করে। আপনি যদি একজন ভিজ্যুয়াল লার্নার হন তবে এটি দ্রুত ক্লিক করবে।
- Streamlit টিউটোরিয়াল সূচী
কেন এটি চমৎকার: এটি নির্দেশিত প্রকল্পের একটি হাব: প্রমাণীকরণ, ডেটাবেস, ফাইল আপলোড, অ্যাডভান্সড লেআউট এবং আরও অনেক কিছু। এটি একটি ডিনারের মেনুর মতো—প্যানকেক দিয়ে শুরু করুন, অতিরিক্ত জালাপেনো সহ অমলেটে স্নাতক হন।
স্তর 1 এর পরে আপনি যা করতে পারবেন:
- একটি পাইথন স্ক্রিপ্ট থেকে একটি কার্যকরী অ্যাপ তৈরি করুন।
- উইজেট (স্লাইডার, সিলেক্ট, বোতাম) যোগ করুন, চার্ট রেন্ডার করুন এবং ডেটা ক্যাশ করুন।
- আপনার স্ক্রিপ্ট কেন "পুনরায় চলে" এবং কীভাবে আপনার ল্যাপটপ না ভেঙে স্টেট ধরে রাখতে হয় তা বুঝুন।
স্তর 2: শিক্ষানবিস থেকে মধ্যবর্তী (কাজের জিনিস তৈরি করুন, সুন্দর করুন)
4) "Master Streamlit in One Course – 4 Real Projects Included" (ভিডিও)
কেন এটি চমৎকার: প্রোজেক্ট-ভিত্তিক শিক্ষা সবসময় কাজে দেয়। এই কোর্সটি আপনাকে ডেটাবেস এবং আরও উন্নত প্যাটার্নগুলোর সাথে বেসিক থেকে সংযোগ স্থাপন পর্যন্ত নিয়ে যায়। আপনি যদি শুধু বোতামসহ স্ক্রিপ্টার না হয়ে একজন সত্যিকারের অ্যাপ নির্মাতা হতে চান, তবে এটি দ্রুত পথ।
- "Complete Streamlit Tutorial: From Zero to Production-Ready" (আর্টিকেল)
কেন এটি চমৎকার: এটি 2025 সালে ড্যাশবোর্ড তৈরি এবং এর সুবিধা-অসুবিধা সম্পর্কে একটি সৎ, আধুনিক ওভারভিউ। আপনি প্যাকেজিং, স্থাপন এবং কখন অন্যান্য সরঞ্জাম ব্যবহার করতে হবে তার কৌশল পাবেন। আপনি যদি ভাবছেন: "Streamlit কি বাস্তব ব্যবহারে টিকে থাকতে পারবে?"—এটি আপনার জন্য বাস্তবতা যাচাই।
- একজন Streamlit পাওয়ার ব্যবহারকারীর কাছ থেকে সেরা অনুশীলনের আলোচনা (ভিডিও)
কেন এটি চমৎকার: প্যাটার্ন, প্যাটার্ন, প্যাটার্ন। আপনি শিখবেন কীভাবে পেশাদাররা অ্যাপ তৈরি করে, পারফরম্যান্স পরিচালনা করে এবং UX উন্নত করে। এটি আপনার প্রতিবেশীর পরিপাটি গ্যারেজে উঁকি দেওয়ার মতো এবং সিদ্ধান্ত নিন যে আপনিও লেবেলযুক্ত বিন পাওয়ার যোগ্য।
স্তর 2 এর পরে আপনি যা করতে পারবেন:
- পরিষ্কার কাঠামো সহ মাল্টি-পেজ অ্যাপ তৈরি করুন।
- স্প্যাগেটি কোড ছাড়াই অ্যাপ স্টেট পরিচালনা করুন।
- ক্যাশিং এবং ডেটা কৌশল দিয়ে ধীরগতির অ্যাপগুলিকে দ্রুত করুন।
- মানসিক প্রস্তুতি নিয়ে আত্মবিশ্বাসের সাথে স্থাপন করুন।
স্তর 3: বাস্তব, বাস্তবিক প্রোজেক্ট (আপনার টিমকে দারুণ কিছু দেখান)
7) AI + Streamlit সহ অডিও ট্রান্সক্রিপশন অ্যাপ (ভিডিও)
কেন এটি চমৎকার: একটি শক্তিশালী "AI মিটস UI" উদাহরণ: ফাইল আপলোড, মডেল কল, ফলাফল প্রদর্শন। আপনি যদি ট্রান্সক্রিপশন অ্যাপ তৈরি নাও করেন, তবুও আপনি AI-সক্ষম যেকোনো প্রোজেক্টের জন্য প্যাটার্ন খুঁজে নিতে পারবেন—প্রগ্রেস বার, ত্রুটি হ্যান্ডলিং, দীর্ঘ সময় ধরে চলতে থাকা কাজ।
- হাতে-কলমে অ্যাপ ডেমো যা ডেটা পরিষ্কার, ভিজ্যুয়ালাইজেশন এবং ফাইল রূপান্তরকে একত্রিত করে
কেন এটি চমৎকার: বাস্তব-বিশ্বের উপযোগিতা। এমন অ্যাপ যা খারাপ ডেটা গ্রহণ করে, তা পরিষ্কার করে, ভিজ্যুয়ালাইজ করে এবং আপনার বস যে ফরম্যাটে চান ঠিক সেই ফরম্যাটে এক্সপোর্ট করে (CSV থেকে Excel, কেউ চান?)। এটি "আমি আসলে আমার টিমের অর্ধেক ম্যানুয়াল কাজ একটি ড্যাশবোর্ড দিয়ে প্রতিস্থাপন করতে পারি যাতে তারা ক্লিক করতে পারে"-এর দিকে একটি আত্মবিশ্বাসী পদক্ষেপ।
একটি দ্রুত পথ: Streamlit কিসে দারুণ—এবং কিসে নয়
যেগুলোতে দারুণ:
- দ্রুত প্রোটোটাইপ তৈরি করা যা বাস্তব অ্যাপের মতো মনে হয়।
- অভ্যন্তরীণ সরঞ্জাম এবং ড্যাশবোর্ড যা আপনার টিম সত্যিই ব্যবহার করতে পারে।
- ডেটা সায়েন্স ডেমো: চার্ট, ম্যাপ, মডেল স্লাইডার, "কী হবে যদি?" পরীক্ষা।
যেগুলোতে তেমন ভালো নয়:
- জটিল মাল্টি-ইউজার অ্যাপ যাতে ভারী প্রমাণীকরণ, ভূমিকা এবং এন্টারপ্রাইজ ওয়ার্কফ্লো থাকে।
- পিক্সেল-পারফেক্ট, হাতে তৈরি ফ্রন্ট-এন্ড।
- অতিরিক্ত ইঞ্জিনিয়ারিং ছাড়া বিশাল, উচ্চ-কনকারেন্সি পাবলিক অ্যাপ।
যদি আপনার অ্যাপটি এমন হয় যে "পাইথন কোডের উপর আমাদের একটি বন্ধুত্বপূর্ণ UI দরকার", তাহলে Streamlit একটি স্বপ্নের মতো। যদি আপনার অ্যাপটি এমন হয় যে "আমরা Airbnb পুনর্নির্মাণ করছি", তাহলে হয়তো নয়।
Streamlit মানসিক মডেলের একটি হালকা সফর
আপনি যদি ঐতিহ্যবাহী ওয়েব স্ট্যাক থেকে এসে থাকেন তবে Streamlit প্রথমে কিছুটা অদ্ভুত মনে হতে পারে। আপনি রুট এবং টেমপ্লেট তৈরি করেন না; আপনি একটি পাইথন স্ক্রিপ্ট লিখেন যা ব্যবহারকারী ইন্টারঅ্যাক্ট করার সময় নিজেকে পুনরায় আঁকে।
- স্ক্রিপ্টটি প্রতিটি ইন্টারঅ্যাকশনে উপর থেকে নীচে পর্যন্ত চলে।
- প্রতিটি রানে উইজেটের মান পড়া হয়।
- বিভিন্ন রানে পছন্দের বিষয় মনে রাখতে সেশন স্টেট ব্যবহার করুন।
- খরচবহুল কাজ (ডেটা ডাউনলোড করা, মডেল লোড করা) ক্যাশে করুন যাতে আপনার অ্যাপ ধীরে না চলে।
এটি একটি পাওয়ারপয়েন্টের মতো মনে করুন যা আপনার দর্শকদের ক্লিকের উপর ভিত্তি করে নিজেকে আপডেট করে—তবে আপনি বাক্স টেনে আনার পরিবর্তে পাইথন দিয়ে স্লাইডগুলি নিয়ন্ত্রণ করেন।
করে শেখার একটি পথ: এই সপ্তাহান্তে তৈরি করুন, সোমবারে মুগ্ধ করুন
এখানে একটি ব্যবহারিক, সহজে উপভোগ করার মতো পাঠ্যক্রম রয়েছে—সর্বোচ্চ দুই বিকেল।
শনিবার সকাল: আপনার প্রথম অ্যাপ এবং "আহা" মুহূর্ত
- Streamlit ইনস্টল করুন এবং Hello অ্যাপটি চালান। একটি সাধারণ UI এবং চার্ট তৈরি করতে অফিসিয়াল "Get started" গাইড অনুসরণ করুন। এটি সবচেয়ে নির্ভরযোগ্য উৎস।
- "Create an app"—Uber পিকআপ, ম্যাপ, ফিল্টার-এর মাধ্যমে কাজ করুন। আপনি st.cache_data ব্যবহার করবেন, যা আপনার ভবিষ্যতের জন্য কৃতজ্ঞতার অশ্রু ঝরাবে।
শনিবার বিকেল: উইজেট এবং লেআউট যা আপনি আসলে ব্যবহার করবেন
- প্রধান ফ্লো থেকে কন্ট্রোল সরাতে st.sidebar যোগ করুন।
- একটি ছোট ডেটা-ক্লিনিং প্যানেল তৈরি করুন: CSV-এর জন্য file_uploader, কলাম পছন্দের জন্য একটি selectbox, NA বাদ দিতে বা ছোট হাতের হেডার ব্যবহার করতে চেকবক্স এবং ফলাফল এক্সপোর্ট করার জন্য একটি বোতাম। CSV থেকে Excel-এ রূপান্তরকারী ইউটিলিটি অ্যাপের মতো উদাহরণ ব্যবহার করুন।
- অগ্রগতি দেখাতে শিখুন: st.progress, st.spinner এবং st.status বার্তা। লোকেরা নীরব স্ক্রিনের দিকে তাকিয়ে থাকতে অপছন্দ করে।
রবিবার সকাল: মাল্টি-পেজ এবং স্টেট-এ উন্নতি করুন
- আপনার অ্যাপটিকে পেজে ভাগ করুন। একটি "ডেটা" পেজ, একটি "ভিজ্যুয়ালাইজ" পেজ এবং একটি "এক্সপোর্ট" পেজ তৈরি করুন। এটি বেশি কাজ না করেই আপনাকে পেশাদার দেখাবে।
- ব্যবহারকারী ঘোরাঘুরি করার সময় পছন্দগুলি (নির্বাচিত কলাম, ফিল্টার) মনে রাখতে st.session_state ব্যবহার করুন।
- যে কোনো ফাংশনে একটি ক্যাশিং ডেকোরেটর যোগ করুন যা ডেটা আনে বা মডেল লোড করে।
রবিবার বিকেল: স্থাপন এবং পরিমার্জন
- একটি হোস্টিং পরিষেবা বা একটি কন্টেইনারে স্থাপন করুন; একটি requirements.txt অন্তর্ভুক্ত করুন।
- বন্ধুত্বপূর্ণ নিশ্চিতকরণের জন্য st.toast এবং সুরক্ষার জন্য st.error যোগ করুন।
- বোনাস: একটি ছোট AI অ্যাকশন এম্বেড করা—একটি টেবিলের সারসংক্ষেপ করা, অগোছালো টেক্সট পরিষ্কার করা বা কলামের নাম থেকে স্বয়ংক্রিয়ভাবে চার্টের শিরোনাম তৈরি করা—একটি "সুন্দর অ্যাপ" কে একটি "সেরা অ্যাপ"-এ পরিণত করে। AI-চালিত ট্রান্সক্রিপশন ওয়াকথ্রু দীর্ঘ অপারেশন পরিচালনা এবং ফলাফল আসার সাথে সাথে UI আপডেট করার প্যাটার্ন দেখায়।
চেকলিস্ট: পাঁচটি Streamlit ধারণা যা আপনাকে চিরকাল পুরস্কৃত করবে
- উইজেট হলো ভেরিয়েবল: তাদের মান সংরক্ষণ করুন এবং পুনরায় ব্যবহার করুন।
- ক্যাশিং হলো অক্সিজেনের মতো: ডেটা লোড, মডেল লোড এবং দীর্ঘ গণনা ক্যাশে করুন।
- সেশন স্টেট হলো স্মৃতির মতো: রিরানের সময় ব্যবহারকারীর পছন্দগুলি ধরে রাখুন।
- লেআউট হলো যোগাযোগের মাধ্যম: সাইডবার, কলাম, ট্যাব—এগুলি ব্যবহার করে সহজ করুন।
- নীরবতার চেয়ে প্রতিক্রিয়া ভালো: স্পিনার, প্রগ্রেস বার, টোস্ট। ব্যবহারকারীকে সবসময় জানান যে কী ঘটছে।
সাধারণ সমস্যা (এবং সেগুলো এড়ানোর উপায়)
- "আমি যখন একটি বোতামে ক্লিক করি তখন আমার ভেরিয়েবল রিসেট হয়ে যায়!" এটি রিরান মডেল; গুরুত্বপূর্ণ জিনিসগুলি ধরে রাখতে st.session_state ব্যবহার করুন।
- "প্রথম ক্লিকে এটি ধীর।" আপনার ভারী ফাংশনগুলি ক্যাশে করুন। অ্যাপ শুরু হওয়ার সময় মডেলগুলি শুরু করার কথাও বিবেচনা করুন।
- "আমার চার্ট খালি কেন?" যদি উইজেটের ডিফল্ট রানগুলোর মধ্যে পরিবর্তিত হয়, তাহলে আপনি আপনার ডেটা ফিল্টার করে ফেলতে পারেন। সঠিক ডিফল্ট সেট করুন।
- "আপডেটের পরে এটি ভেঙে গেছে।" আপনার প্রয়োজনীয়তা পিন করুন বা মাইগ্রেশন নোট পড়ুন। অফিসিয়াল টিউটোরিয়ালগুলি সিঙ্কে থাকার প্রবণতা রাখে।
তুলনামূলক আলোচনা: Streamlit বনাম অন্যান্য পরিচিত মাধ্যম
- Streamlit বনাম Dash: Dash আরও কনফিগারযোগ্য এবং এন্টারপ্রাইজ-রেডি কিন্তু শুরু করতে বেশি সময় লাগে। Streamlit প্রোটোটাইপ তৈরি করতে দ্রুত; জটিল প্রোডাকশন ওয়ার্কফ্লোর জন্য Dash শক্তিশালী।
- Streamlit বনাম Gradio: Gradio দ্রুত AI ডেমোর জন্য উজ্জ্বল, বিশেষ করে মডেল I/O। Streamlit ডেটা অ্যাপ এবং ড্যাশবোর্ডের জন্য আরও সাধারণ-উদ্দেশ্যমূলক।
- Streamlit বনাম Flask + ফ্রন্ট-এন্ড: Flask আপনাকে সবকিছু নিয়ন্ত্রণ করতে দেয়, যার মধ্যে অনেক কিছুই আপনি নিয়ন্ত্রণ করতে চান না। Streamlit একটি শর্টকাট যখন আপনার লক্ষ্য হয় "মঙ্গলবার এর মধ্যে একটি সিদ্ধান্ত সরঞ্জাম সরবরাহ করা।"
Sider.AI সম্পর্কে একটি দ্রুত কথা: শেখা এবং তৈরির জন্য একটি সহায়ক সাইডকিক
আপনি যদি এমন একজন শিক্ষার্থী হন যিনি দ্রুত পুনরাবৃত্তি করতে এবং বাস্তব ফলাফল দেখতে পছন্দ করেন, তাহলে Streamlit-এর পাশাপাশি একটি AI সহকারী ব্যবহার করা একটি অসাধারণ ক্ষমতা হতে পারে। উদাহরণস্বরূপ, আমি এমন ডেমো দেখেছি যা একটি অগোছালো CSV কে একটি পরিষ্কার, ভিজ্যুয়ালাইজড ড্যাশবোর্ডে পরিণত করে এবং তারপরে Excel-এ এক্সপোর্ট করে—ঠিক সেই ধরনের "আমি টিমের কয়েক ঘন্টা বাঁচিয়েছি" অ্যাপ যা আপনি Streamlit-এর উইজেট এবং ডেটার সারসংক্ষেপ বা গঠন করার জন্য সামান্য AI সাহায্য নিয়ে তৈরি করতে পারেন। Sider.AI-এর মতো সরঞ্জামগুলি আপনাকে বয়লারপ্লেট এবং টেস্টিং পরিস্থিতিতেও সহায়তা করতে পারে যাতে আপনি ডিজাইন এবং ডেটা যুক্তির উপর মনোযোগ দিতে পারেন। হাতে-কলমে ছোট প্রোজেক্ট যা আপনি চুরি করতে পারেন (নোট সহ)
- "বসের পছন্দের রিপোর্ট" অ্যাপ
- ইনপুট: CSV আপলোড, তারিখ-পরিসীমা পিকার, অঞ্চল ড্রপডাউন।
- আউটপুট: মেট্রিক (আয়, গণনা), একটি লাইন চার্ট এবং একটি ডাউনলোডযোগ্য Excel ফাইল।
- টিপস: ডেটা পরিষ্কার করার ধাপটি ক্যাশে করুন; ফিল্টার করা DataFrame কে session_state-এ সংরক্ষণ করুন যাতে আপনি তাৎক্ষণিকভাবে এক্সপোর্ট করতে পারেন।
- বিক্রয়ের জন্য "কী হবে যদি পরিস্থিতি পরিকল্পনাকারী"
- ইনপুট: ডিসকাউন্ট হারের জন্য একটি স্লাইডার, বিজ্ঞাপনের ব্যয়ের জন্য একটি number_input, পণ্য স্তরের জন্য একটি selectbox।
- আউটপুট: পূর্বাভাসিত আয়ের একটি বার চার্ট এবং একটি টেক্সট সারসংক্ষেপ ("10% ডিসকাউন্টে, আপনি 6.2 মাসে পুনরুদ্ধার করবেন")।
- টিপস: ট্যাব ব্যবহার করুন: "অনুমান", "চার্ট", "ডাউনলোড"। মডেল ফাংশনটি ক্যাশে রাখুন।
- "AI-চালিত নোট সারসংক্ষেপকারী"
- ইনপুট: PDF বা টেক্সটের জন্য file_uploader, টোনের জন্য চেকবক্স ("ফরমাল", "বন্ধুত্বপূর্ণ", "বুলেট-স্টাইল")।
- আউটপুট: একটি কপি বোতাম সহ সারসংক্ষেপ টেক্সট; অ্যাকশন আইটেমের ঐচ্ছিক CSV।
- টিপস: ক্রমবর্ধমান আপডেটের সাথে ফলাফল স্ট্রিম করুন; একটি স্পিনার দেখান এবং কী ঘটছে তা ব্যাখ্যা করুন।
- "ডেটা ক্লিনার এবং ফরম্যাট কনভার্টার"
- ইনপুট: file_uploader (CSV), হোয়াইটস্পেস সরানোর জন্য চেকবক্স, তারিখ পার্সিংয়ের জন্য selectbox, "Excel এ এক্সপোর্ট করুন" এর জন্য বোতাম।
- আউটপুট: পরিষ্কার করা টেবিলের প্রিভিউ; কলাম অনুসারে নালগুলোর চার্ট; এক ক্লিকে এক্সপোর্ট।
- টিপস: এটি একটি নিখুঁত শিক্ষানবিস প্রোজেক্ট এবং এই হাতে-কলমে ডেমোগুলির সাথে সুন্দরভাবে মেলে।
আপনার জন্য সেরা Streamlit টিউটোরিয়াল কীভাবে চয়ন করবেন
- যদি আপনার কাছে দুই ঘন্টা থাকে: অফিসিয়াল Get Started ফ্লো এবং Create an App টিউটোরিয়াল করুন। আপনি 80% পথ অতিক্রম করবেন, 20% সময়ে।
- যদি আপনার কাছে একটি সপ্তাহান্ত থাকে: একটি প্রোজেক্ট-ভিত্তিক ভিডিও কোর্সের সাথে সেগুলোকে যুক্ত করুন এবং আমি যে তিন-পেজের অ্যাপটির কথা বলেছি সেটি তৈরি করুন। আপনি সোমবারের মধ্যে কর্মক্ষেত্রে "সেই ব্যক্তি" হয়ে উঠবেন।
- আপনি যদি বিশেষজ্ঞ হতে চান: প্রমাণীকরণ, ডেটাবেস এবং সেরা অনুশীলনের জন্য টিউটোরিয়াল সূচীতে ডুব দিন। আপনি একই বেড়া পাঁচবার রং করা এড়াতে পারবেন।
Streamlit শিষ্টাচার: আপনার ব্যবহারকারীদের জন্য এটিকে আনন্দদায়ক করুন
- সাধারণ ইংরেজি লেবেল ব্যবহার করুন।
- প্রধান কাজগুলো উপরের দিকে রাখুন।
- উন্নত অপশনের জন্য st.expander ব্যবহার করুন।
- একটি "রিসেট ফিল্টার" বোতাম যুক্ত করুন; লোকেরা পুনরায় চেষ্টা করতে ভালোবাসে।
- পরীক্ষার জন্য ছোট, বাস্তব ডেটা নমুনা সরবরাহ করুন।
সমস্যা সমাধান করার স্থান (a.k.a. "এই জিনিসটি কাজ করছে না কেন?")
- কোনো মডিউল 'streamlit' নামে নেই: আপনি ভুল পরিবেশে আছেন। আপনার সক্রিয় venv-এ pip install streamlit করুন।
- ফাইল আপলোডার কিছুই গ্রহণ করে না: আপনার ফাইলের ধরন পরীক্ষা করুন; এছাড়াও মনে রাখবেন যে উইজেটগুলি শুধুমাত্র তখনই স্টেটফুল হয় যদি আপনি session_state-এ ফলাফল লুকিয়ে রাখেন।
- এটি স্থানীয়ভাবে কাজ করে তবে স্থাপনে নয়: আপনার সংস্করণ পিন করুন এবং হোস্ট-এ সিক্রেট/পরিবেশ ভেরিয়েবল সেট আপ করুন। এছাড়াও একটি ছোট ডেটাসেট দিয়ে পরীক্ষা করুন।
- বড় CSV এর সাথে এটি ধীর: চ্যাঙ্কড রিড ব্যবহার করুন, প্রি-এগ্রিগেট করুন অথবা UI-এর জন্য নমুনা তৈরি করুন। ক্যাশিং এবং ভারী ট্রান্সফর্ম অফলোড করার কথা বিবেচনা করুন।
শেষ কথা: একটি দুর্দান্ত টুলের বিনয়
Streamlit-এর প্রতিভা হলো এর উচ্চাকাঙ্ক্ষার বিনয়। এটি পুরো প্ল্যাটফর্ম হওয়ার চেষ্টা করে না; এটি আপনার পাইথনকে একটি বন্ধুত্বপূর্ণ অ্যাপে পরিণত করার জন্য একটি নব হওয়ার চেষ্টা করে। উপরের সেরা Streamlit টিউটোরিয়ালগুলির সাথে—মৌলিক বিষয়গুলির জন্য অফিসিয়াল ডক্স, গতি বাড়ানোর জন্য প্রোজেক্ট ভিডিও এবং পরিমার্জনের জন্য সেরা অনুশীলনের আলোচনা—আপনি ঘোরাঘুরি করা এড়িয়ে সেই অংশে চলে যাবেন যেখানে লোকেরা বলে, "দাঁড়ান, আপনি এটি তৈরি করেছেন?"
এবং সেটাই সেই মুহূর্ত যার জন্য আপনি অপেক্ষা করছেন। অথবা অন্তত, সেই মুহূর্ত যখন আপনার বস আপনাকে একই স্প্রেডশীটের 11টি সংস্করণ পাঠাতে বলা বন্ধ করে দেবেন।
সাধারণ জিজ্ঞাসা
প্রশ্ন 1: সম্পূর্ণ নতুনদের জন্য সেরা Streamlit টিউটোরিয়াল কোনটি?
অফিসিয়াল Get Started গাইড এবং Create an App টিউটোরিয়াল দিয়ে শুরু করুন—এগুলো বর্তমান, সংক্ষিপ্ত এবং সর্বশেষ Streamlit রিলিজের সাথে কাজ করার নিশ্চয়তা রয়েছে। আপনি দুই ঘণ্টারও কম সময়ে চার্ট এবং উইজেট সহ একটি ছোট অ্যাপ তৈরি করবেন।
প্রশ্ন 2: আমার ড্যাশবোর্ডের জন্য Streamlit বনাম Dash এর মধ্যে কীভাবে বেছে নেব?
অভ্যন্তরীণ সরঞ্জাম বা দ্রুত প্রোটোটাইপের জন্য আপনার গতি এবং সরলতা প্রয়োজন হলে Streamlit বেছে নিন; যখন আপনার গভীর কাস্টমাইজেশন এবং এন্টারপ্রাইজ ওয়ার্কফ্লো প্রয়োজন হয় তখন Dash বেছে নিন। প্রথমে Streamlit-এ একটি সপ্তাহান্তের প্রোটোটাইপ চেষ্টা করুন—এটি প্রায়শই 90% চাহিদা পূরণ করে।
প্রশ্ন 3: প্রোডাকশন-রেডি Streamlit অ্যাপের দ্রুততম পথ কী?
অফিসিয়াল টিউটোরিয়ালগুলি অনুসরণ করুন, তারপরে গঠন এবং পারফরম্যান্স টিপসের জন্য একটি প্রোজেক্ট-ভিত্তিক কোর্স এবং একটি সেরা অনুশীলনের আলোচনায় যান। ভারী ফাংশন ক্যাশে করুন, session_state ব্যবহার করুন এবং আপনার প্যাকেজ সংস্করণ পিন করে স্থাপন স্থিতিশীল রাখুন।
প্রশ্ন 4: Streamlit কি ট্রান্সক্রিপশন বা সারসংক্ষেপের মতো AI বৈশিষ্ট্যগুলি পরিচালনা করতে পারে?
হ্যাঁ—Streamlit পাইথন AI লাইব্রেরি এবং API-এর সাথে ভালোভাবে কাজ করে। ফাইল আপলোড, অগ্রগতি সূচক এবং দীর্ঘ সময় ধরে চলতে থাকা কাজের জন্য প্যাটার্ন শিখতে একটি প্রমাণিত প্রোজেক্ট ওয়াকথ্রু (যেমন একটি AI ট্রান্সক্রিপশন অ্যাপ) ব্যবহার করুন।
প্রশ্ন 5: অনুশীলনের জন্য আমি বাস্তব-বিশ্বের Streamlit অ্যাপের ধারণা কোথায় পেতে পারি?
ইউটিলিটি অ্যাপ ব্যবহার করে দেখুন: ডেটা পরিষ্কার এবং রূপান্তর, কী হবে যদি পরিকল্পনাকারী এবং দ্রুত AI-চালিত সারসংক্ষেপকারী। বাস্তবসম্মত উদাহরণ যা CSV কে Excel এ রূপান্তর করে এবং পরিষ্কার করা ডেটা ভিজ্যুয়ালাইজ করে তা দুর্দান্ত অনুশীলন এবং তাৎক্ষণিকভাবে দরকারী।