দশ মিনিটের প্রতিশ্রুতি, এবং সেই সব জিনিস যা লোকেরা উচ্চস্বরে বলে না
"১০ মিনিটে আপনার অ্যাপে AI চ্যাট তৈরি করুন" বিষয়টির ব্যাপারে সবাই ভান করে যেন তারা এটা বিশ্বাস করে—যতক্ষণ না ঘড়ি চলা শুরু করে। তারপর আমরা সেই পরিচিত চরিত্রদের সাথে পরিচিত হই: API কী, টোকেন সীমা, কলব্যাক নরক, রহস্যময় লেটেন্সি, সম্মতি চেকলিস্ট, এবং সেই অনিবার্য "আরও একটি লাইব্রেরি"। দশ মিনিট? দশ মিনিটে আপনি কফি বানাতে পারেন। সাধারণত কিছু তৈরি করে প্রকাশ করতে পারবেন না।
কিন্তু এখানে একটি নতুন বিষয় আছে: আপনি আশ্চর্যজনকভাবে কাছাকাছি যেতে পারেন যদি আপনি buzzwords নিয়ে প্রচলিত নাচ বন্ধ করেন এবং মনোযোগ দেন "AI চ্যাট" আসলে কী—একটি ইউজার ইন্টারফেস, প্লাস একটি স্টেট মেশিন, প্লাস একটি রিমোট মস্তিষ্ক যা আপনি নিয়ন্ত্রণ করেন না। এটা কোনো জাদু নয়; এটা শুধু ভালো অটোকমপ্লিট সহ প্লাম্বিং।
এটি একটি কিভাবে-করতে হয় গাইড, একটি সংশয়বাদী প্রান্ত সহ, ১০ মিনিটে আপনার সুন্দর অ্যাপে AI চ্যাট তৈরি করার জন্য। "এক ত্রৈমাসিকে এন্টারপ্রাইজ ট্রান্সফরমেশন" নয়। "ডিজিটাল কৌশল" নয়। একটি কার্যকরী, প্রকাশযোগ্য অংশের জন্য দশ মিনিট: একটি টেক্সট বক্স, একটি প্রতিলিপি, একটি অনুরোধ, একটি প্রতিক্রিয়া, সামান্য অধ্যবসায়, এবং—আপনি যদি অতীতের প্রোডাক্ট ম্যানেজারদের ভূতদের প্রভাবিত করার চেষ্টা না করেন—এক বা দুটি স্মার্ট গার্ডরেল। আপনি গতি এবং স্পষ্টতা চান। বাকি সব ঐচ্ছিক, এবং সাধারণত একটি ফাঁদ।
"AI চ্যাট" আসলে কী বোঝায় (এবং কী বোঝায় না)
যখন লোকেরা "AI চ্যাট" বলে, তখন তারা তিনটি স্তরকে মিলিয়ে ফেলে:
- চ্যাট UI: বক্স, সেন্ড বাটন, টাইপিং ইন্ডিকেটর এবং একটি স্ক্রলব্যাক প্রতিলিপি।
- কথোপকথন অবস্থা: কে কী বলেছে, কোন ক্রমে, প্রতিটি উত্তরের সময় বিভ্রান্ত না শোনায় তার জন্য যথেষ্ট প্রসঙ্গ সহ।
- মডেল API: আপনি এটিকে বার্তা খাওয়ান, এটি আপনাকে টেক্সট ফেরত দেয় (হয়তো ফাংশন কল), দ্রুত বোধ করার জন্য আপনি টোকেন স্ট্রিম করেন।
বাকি সব কিছুই ব্র্যান্ডিং: এজেন্ট, কপilot, সহকারী—একই লুপের জন্য সুন্দর শব্দ। বিপদ হল আপনার অ্যাপের কার্যকরী স্তরের আগে মার্কেটিং স্তরের প্রয়োজনীয়তার ভান করা। আপনার দরকার নেই। লুপ দিয়ে শুরু করুন। তারপর প্রকাশ করুন।
১০ মিনিটের বিল্ড: একবারে আপনি আসলে কী করতে পারেন
"১০ মিনিটে আপনার সুন্দর অ্যাপে AI চ্যাট তৈরি করুন" একটি স্ট্যান্ড-আপের সময় AI প্রান্তিককরণ সমাধান করার প্রতিশ্রুতি নয়। এটি আপনার অ্যাপটিকে এমন কিছু করার প্রতিশ্রুতি যা ব্যবহারকারীরা অবিলম্বে বুঝতে পারে: জিজ্ঞাসা করুন, উত্তর দিন, পুনরাবৃত্তি করুন। আপনি যদি মনোযোগ দেন, চেকলিস্টটি ছোট:
- UI: ব্যবহারকারীর বার্তার জন্য একটি টেক্সট এরিয়া, একটি সেন্ড বাটন, একটি প্রতিলিপি তালিকা এবং একটি টাইপিং ইন্ডিকেটর। দ্রুততার জন্য আশাবাদী রেন্ডারিং যোগ করুন।
- API কল: একটি সিস্টেম প্রম্পট এবং একটি রোলিং কনটেক্সট উইন্ডো সহ আপনার নির্বাচিত মডেল এন্ডপয়েন্টটি হিট করুন। টোকেন আসার সাথে সাথে UI-তে প্রতিক্রিয়া স্ট্রিম করুন।
- সংরক্ষণ: কথোপকথনের জন্য একটি ছোট মেমরি রাখুন। আগ্রাসীভাবে ছাঁটাই করুন। আপনি যদি অভিনব হন তবে এম্বেডিং ক্যাশে করুন; যদি না হয় তবে কেবল শেষ এক ডজন পালা সঞ্চয় করুন।
- গার্ডরেল: টাইমআউট, রিট্রাই এবং একটি অক্ষর সীমা। এটাই। প্রথম দিনে কোনও রুব গোল্ডবার্গ কনট্রাপশন নয়।
- পর্যবেক্ষণযোগ্যতা: টাইমিং, টোকেন ব্যবহার এবং ব্যর্থতার সংখ্যা লগ করুন। আপনি প্রথমে যা ডিবাগ করবেন তা মডেল নয়—এটি আপনার প্লাম্বিং।
এটি লুপ। লুপটিই অ্যাপ।
হাইপে না ডুবে একটি মডেল নির্বাচন করা
আপনার কোনও মডেলের সাথে বিবাহ করার দরকার নেই; আপনার একটি বার্তা লুপ প্রকাশ করা দরকার। বিবেকবান ডক্স, স্ট্রিমিং সমর্থন এবং অনুমানযোগ্য লেটেন্সি সহ একটি API নির্বাচন করুন। "সেরা মডেল" পরিস্থিতিগত। গ্রাহক সহায়তা সারসংক্ষেপের জন্য, ছোট এবং দ্রুত একটি বুদ্ধিমান বৃহৎ মডেলকে হারাতে পারে যা খুব বেশি চিন্তা করে। কোডের জন্য, গুণমান গুরুত্বপূর্ণ; UI সুন্দরতার জন্য, গতিই রাজা। শেষ কথা: আপনার নিয়ন্ত্রিত একটি ইন্টারফেসের পিছনে একটি মডেল রাখুন যাতে বিশ্ব পরিবর্তিত হলে আপনি এটি অদলবদল করতে পারেন—কারণ এটি হবে।
আপনার আসলে যে ন্যূনতম কোড দরকার
আপনি এটি যে কোনও স্ট্যাকে তারযুক্ত করতে পারেন তবে আকৃতি কখনও পরিবর্তন হয় না:
- ক্লায়েন্ট: ইনপুট ডিবাউন্স করুন, একটি টাইপিং ইন্ডিকেটর দেখান, ক্রমবর্ধমান টোকেন স্ট্রিম করুন।
- সার্ভার: API কীটি ধরে রাখুন। একটি পাতলা POST এন্ডপয়েন্ট তৈরি করুন: বার্তা ভিতরে, বার্তা বাইরে। একটি ২০-৩০ সেকেন্ডের টাইমআউট যুক্ত করুন।
- স্টোর: সাম্প্রতিক পালাগুলি রাখুন। পুরো উপন্যাসটি সংরক্ষণ করা এড়িয়ে চলুন। আপনার ব্যবহারকারীরা চ্যাট বক্সে অসীম জেস্ট লিখছেন না।
এটি কি "উৎপাদন"? যদি আপনার ত্রুটি হ্যান্ডলিং একটি শ্রাগ ইমোজি না হয় তবে হ্যাঁ। উৎপাদন কেবল "আমাকে রাত ৩ টায় জাগাবে না" এর অন্য একটি শব্দ।
যে কৌশলটি সবাই এড়িয়ে যায়: এটিকে দ্রুত অনুভব করানো
গতি হল উপলব্ধি। মডেলটি দ্রুত হতে পারে তবে স্ট্রিমিং শুরু হওয়ার আগে যদি UI হ্যাং হয়ে যায় তবে এটি ধীর মনে হয়। কৌশল যা কৌশল নয়:
- আপনি প্রথম টোকেন পাওয়ার সাথে সাথেই স্ট্রিমিং শুরু করুন। কার্সার দেখান। মানুষ মডেলের চেয়ে দ্রুত পড়ে—তাই তাদের পড়তে দিন।
- স্ট্রিমিং করার সময় গঠন দেখান। মডেল যদি বুলেট ফেরত দেয় তবে ক্রমবর্ধমান বুলেট রেন্ডার করুন। ফাঁকা স্থান শত্রু।
- রাউন্ডট্রিপগুলি সংক্ষিপ্ত রাখুন। "আমাকে উত্তর দেওয়ার আগে পাঁচটি সরঞ্জাম কল করতে দিন" এজেন্ট ডেমো একটি মূল বক্তৃতায় দুর্দান্ত অভিনয় করে এবং বাস্তব জগতে মারা যায়।
আপনি যদি অন্য কিছু না করেন তবে তাড়াতাড়ি স্ট্রিম করুন এবং সর্বদা স্ট্রিম করুন।
গার্ডরেল যা আসলে সাহায্য করে (এবং আপনার অ্যাপটিকে কপ করে তোলে না)
আপনার কয়েকটি নিয়মের দরকার, নৈতিক দর্শন নয়:
- সর্বোচ্চ টোকেন ইন, সর্বোচ্চ টোকেন আউট। আপনার বাজেটের সীমা রয়েছে এবং ব্যবহারকারীর ধৈর্যেরও।
- প্রসঙ্গ কাটুন। এটিকে শেষ N এক্সচেঞ্জ এবং একটি সংক্ষিপ্ত সিস্টেম প্রম্পটে রাখুন। আপনার যদি দীর্ঘমেয়াদী স্মৃতির প্রয়োজন হয় তবে এটি পরে ইঞ্জিনিয়ার করুন।
- সময় শেষ। যদি মডেলটি আটকে যায় তবে আপনি তা করেন না। সুন্দরভাবে ব্যর্থ হন এবং UI প্রতিক্রিয়াশীল রাখুন।
একটি বিনয়ী ত্রুটি কখনই না আসা নিখুঁত উত্তরের চেয়ে ভালো।
১০ মিনিটে কীভাবে এআই চ্যাট তৈরি করবেন: একটি সরল রেসিপি
এটি সেই অংশ যেখানে সবাই স্ক্রোল করে।
- টেক্সট বক্স। সেন্ড বাটন। প্রতিলিপি তালিকা।
- একটি ফ্লেক্স কলাম এবং স্টিকি ফুটার ইনপুট ব্যবহার করুন। কিছুই সুন্দর নয়। এটিকে ডিফল্টভাবে মোবাইল-ফ্রেন্ডলি করুন।
- সার্ভার এন্ডপয়েন্ট (৩ মিনিট):
- POST /chat: { messages: [...] }
- ক্লায়েন্টের নয়, সার্ভারে আপনার সিস্টেম প্রম্পট যুক্ত করুন। সার্ভার-সেন্ট ইভেন্টস বা ওয়েবসকেট হিসাবে চঙ্ক স্ট্রিম করুন।
- লগ রাখুন: অনুরোধ আইডি, লেটেন্সি এবং টোকেন গণনা।
- ভূমিকা হিসাবে বার্তাগুলি পাস করুন: ব্যবহারকারী/সহকারী/সিস্টেম। ছোট করে শুরু করুন।
- স্ট্রিমিং সক্ষম করুন। সরাসরি ক্লায়েন্টে চঙ্ক পাইপ করুন।
- ফাংশন কল করার মতো মূল্যবান ফাংশন থাকলেই কেবল ফাংশন-কল বার্তাগুলি পরিচালনা করুন।
- শেষ ৮-১২টি বার্তা জোড়া রাখুন। পুরনো গুলো ছেঁটে ফেলুন। বেশি চিন্তা করবেন না।
- যদি আপনাকে প্রসঙ্গ যোগ করতে হয় তবে আগের পালাগুলিকে একটি একক সিস্টেম নোটে সংক্ষিপ্ত করুন।
- ২০-সেকেন্ডের টাইমআউট। ৫১২-১,০২৪ টোকেন আউটপুট ক্যাপ।
- নেটওয়ার্ক ব্যর্থতায় একবার পুনরায় চেষ্টা করুন। ব্যবহারকারীর অভিজ্ঞতাকে কখনই অসীম-লুপ করবেন না।
হয়ে গেছে। রকেট শিপ নয়—কেবল একটি চ্যাট লুপ যা আপনার ব্যবহারকারীরা অবিলম্বে বুঝতে পারে।
সুন্দর অ্যাপে "সুন্দর"
"সুন্দর" একটি উচ্চ মান। আপনি মডেল স্পেক শীট থেকে সুন্দরতা পান না; আপনি এটি স্বাদ থেকে পান। পালিশ করা বিবরণ যা প্রতিদিন প্রকাশ করা হয়:
- রিলোড জুড়ে অবস্থা রাখুন। ব্যবহারকারী যদি রিফ্রেশ করে এবং তাদের কথোপকথন অদৃশ্য হয়ে যায় তবে আপনি তাদের আপনাকে বিশ্বাস না করতে শিখিয়েছেন।
- বিবেকবান ডিফল্ট। আপনার ব্যবহারকারী গবেষক না হলে তাপমাত্রা বা top_p এর জন্য জিজ্ঞাসা করবেন না। বেশিরভাগ মানুষ কেবল একটি ভাল উত্তর চায়।
- মানবিক সুর। আপনার সিস্টেম প্রম্পটকে জিম্মি চিঠির মতো শোনা উচিত নয়। স্পষ্টভাবে কথা বলুন। ব্যবহারকারীদের প্রতিটি উত্তরে আপনার ব্র্যান্ড ইশতেহারের প্রয়োজন নেই।
- কীবোর্ডকে সম্মান করুন। প্রেরণের জন্য Cmd/Ctrl+Enter। বাতিল করার জন্য Esc। তীর কীগুলি আচরণ করে। এটা ২০০৯ সাল নয়।
UI টি সুন্দর করুন এবং ব্যবহারকারীরা একটি মাঝারি উত্তর ক্ষমা করবে। এটিকে আনাড়ি করুন এবং মডেলটি জিনিয়াস হলেও তারা বাউন্স করবে।
বিরক্তিকর অংশগুলি যা আপনি আগে করলে ভালো হত
ঠিক তিনটি বিরক্তিকর জিনিস রয়েছে যা AI চ্যাটকে টেকসই করে তোলে:
- পর্যবেক্ষণযোগ্যতা: লেটেন্সি, ত্রুটি কোড, টোকেন ব্যয় এবং ব্যবহারকারীর ড্রপ-অফ মিড-স্ট্রিম ট্র্যাক করুন। আপনি যদি পরিমাপ না করেন তবে আপনি অনুমান করছেন।
- গোপনীয়তা: লগ থেকে PII সরিয়ে রাখুন এবং তৃতীয় পক্ষের ড্যাশবোর্ডে কাঁচা প্রম্পট স্প্রে করবেন না। ডিফল্ট রক্ষণশীল হওয়া উচিত।
- হার সীমিত করা: নিজেকে অপব্যবহার এবং দুর্ঘটনাজনিত লুপ উভয় থেকে রক্ষা করুন। তৈরি করতে দশ মিনিট, যদি আপনি এটি এড়িয়ে যান তবে পরিষ্কার করতে দশ মাস।
সেরা অ্যাপ্লিকেশনগুলি বিরক্তিকর অংশগুলিকে ব্যবহারকারীদের কাছে অদৃশ্য এবং ডেভেলপারদের কাছে মারাত্মকভাবে সুস্পষ্ট করে তোলে।
বড় ভুল ধারণা: আপনার প্রথম দিনেই "এজেন্ট" দরকার
আপনার দরকার নেই। একটি ডিটারমিনিস্টিক সরঞ্জাম বিদ্যমান থাকলে সরঞ্জাম ব্যবহার দুর্দান্ত। একটি ক্যালেন্ডার ইভেন্ট আনা? নিখুঁত। একটি পিডিএফ সংক্ষিপ্ত করা? ঠিক আছে। তবে ছদ্ম-স্বায়ত্তশাসিত চেইনগুলি যা ৪৫ সেকেন্ডের জন্য কে জানে কী করছে তা ঘুরে বেড়ায়? ব্যবহারকারীরা এটির জন্য হাততালি দেয় না। সরঞ্জামগুলিকে সুস্পষ্ট ইচ্ছার পিছনে রাখুন। মডেলটিকে যদি কোনও ফাংশন কল করতে হয় তবে এটি কল করুন। যদি না হয় তবে উত্তর দিন এবং এগিয়ে যান। "এজেন্টিক" কোনও ব্যক্তিত্ব নয়; এটি একটি নিয়ন্ত্রণ প্রবাহ।
RAG-এর উপর: পুনরুদ্ধার যা সহায়তা করে, কোনও বিজ্ঞান মেলার প্রকল্প নয়
RAG—পুনরুদ্ধার অগমেন্টেড জেনারেশন—একটি মডেল যা স্মার্ট শোনায় এবং যা আসলে তা, এর মধ্যে পার্থক্য হতে পারে। তবে এটি একটি খরগোশের গর্তও। একটি বুদ্ধিমান প্রথম পাস:
- গঠন সংরক্ষিত রেখে আপনার ডক্স চঙ্ক করুন। অনুচ্ছেদ, শিরোনাম, ক্যাপশন গুরুত্বপূর্ণ।
- এম্বেডিং দিয়ে ইন্ডেক্স করুন যা মডেল পরিবর্তন হলে আপনি পুনরায় তৈরি করতে পারেন।
- ৫-১০টি প্রাসঙ্গিক চঙ্ক পুনরুদ্ধার করুন। উদ্ধৃতি সহ তাদের খাওয়ান। অপ্রাসঙ্গিক ট্রিভিয়াতে মডেলটিকে ডুবাবেন না।
- আপনি যা পারেন তা ক্যাশে করুন। বেশিরভাগ ব্যবহারকারী একই পাঁচটি প্রশ্ন জিজ্ঞাসা করেন।
যদি আপনার "১০-মিনিটের" সুযোগে RAG অন্তর্ভুক্ত থাকে তবে আপনি ইতিমধ্যে ২০ মিনিটে আছেন। এটিকে ঐচ্ছিক রাখুন; পরে এটিকে স্ক্রু করুন।
অ্যাপটিকে ভেতর থেকে বাইরে না ঘুরিয়ে সুরক্ষা এবং সম্মতি
স্পষ্ট তবে প্রায়শই এড়িয়ে যাওয়া হয়:
- ক্লায়েন্টের কাছে API কী প্রেরণ করবেন না। কখনও না। আপনার সার্ভার মডেলটিকে কল করে।
- যা ফাঁস করতে আপনি লজ্জিত হবেন তা বিশ্রামে এনক্রিপ্ট করুন। ধরে নিন লগগুলি ফাঁস হয়েছে।
- ব্যবহারকারীদের একটি "এই কথোপকথনটি ভুলে যান" বোতাম দিন। এটি নৈতিক এবং ব্যবহারিক উভয়ই।
সম্মতি কোনও অনুভূতি নয়; এটি একটি চেকলিস্ট। আপনি যদি এমন সংস্থাগুলিতে বিক্রি করছেন যেখানে কমিটি রয়েছে তবে এমন একজনকে নিয়োগ করুন যিনি চেকলিস্ট পছন্দ করেন।
যে অংশে সরঞ্জামগুলি আসলে সহায়তা করে
বেশিরভাগ "AI প্ল্যাটফর্ম" পিচ তিনটি প্রতিশ্রুতির দিকে নেমে আসে: গতি, গার্ডরেল এবং বিশ্লেষণ। অর্ধেক তিনটির মধ্যে একটি সরবরাহ করে; খুব কমই সমস্ত সরবরাহ করে। Sider.AI আসলে সেই স্থানে সাহায্য করে যেখানে ব্যথা থাকে: AI চ্যাট চালু করা যা নেটিভ মনে হয়, দ্রুত স্ট্রিম করে এবং আপনার ডেভেলপারদের পাঁচটি SDK এর সাথে টুইস্টার খেলতে বাধ্য করে না। এটিকে সেই কাজের জন্য ব্যবহার করুন যা এটিতে ভাল—দ্রুত ওয়্যারিং, পুনরায় ব্যবহারযোগ্য প্রম্পট, সংবেদনশীল ডিফল্ট এবং লগ যা আপনাকে স্কুইন্ট করতে হবে না—তারপরে আপনি বড় হওয়ার সাথে সাথে আপনার নিজের স্পেসিফিকগুলি অদলবদল করুন। আপনার যদি একটি দ্রুত শুরু প্রয়োজন হয় তবে এটি বিরল সরঞ্জাম যা আপনি বিকেলে যা করতে পারতেন তা করার জন্য এক সপ্তাহের মিটিংয়ের দাবি করে না। কৌশলটি আপনার পণ্যের স্বাদ আউটসোর্স করা নয়; এটি সেই শ্রম আউটসোর্স করা যা আপনি অন্যথায় খারাপভাবে পুনর্নির্মাণ করতেন: টোকেন গণনা, স্ট্রিমিং অদ্ভুততা, বিরক্তিকর পুনরায় চেষ্টা এবং ড্যাশবোর্ড আপনি শপথ করেন যে আপনি "পরবর্তী স্প্রিন্টে" পৌঁছে যাবেন।
সাধারণ ফাঁদ যা দশ মিনিটকে দশ দিন করে তোলে
ক্লাসিক নিজের-গোলের একটি সংক্ষিপ্ত তালিকা:
- ChatGPT হওয়ার চেষ্টা করা। আপনি একটি বৈশিষ্ট্য তৈরি করছেন, কোনও প্ল্যাটফর্ম নয়। সংকীর্ণ ব্যবহার সাধারণতাকে হার মানায়।
- অতিরিক্ত-প্রম্পটিং। সিস্টেম প্রম্পটের বিশটি অনুচ্ছেদ একটি বিভ্রান্ত ইন্টারফেসকে বাঁচাতে পারবে না।
- স্ট্রিমিং উপেক্ষা করা। ব্যবহারকারীরা নীরবতাকে ব্যর্থতা হিসাবে ব্যাখ্যা করে।
- "নিখুঁত" মডেল পছন্দের উপর ব্লক করা। আপনার সার্ভারের পিছনে সরবরাহকারীকে বিমূর্ত করুন এবং এগিয়ে যান।
- প্রথম দিনে একটি কাস্টম টোকেন মিটার লেখা। এটি একটি পরের সমস্যা। প্রতিক্রিয়াগুলি ক্যাপ করুন এবং প্রকাশ করুন।
আপনি যদি ব্যবহারকারীর প্রবাহের চেয়ে মডেল রাজনীতি নিয়ে বেশি বিতর্ক করছেন তবে আপনি প্লটটি হারিয়ে ফেলেছেন।
বাস্তব-বিশ্বের দশ মিনিটের রেসিপি, স্যানিটি চেক সহ
- মিনিট ১-২: UI কাঠামো তৈরি করুন। নীচে ইনপুট, উপরে প্রতিলিপি, টাইপিং ইন্ডিকেটর প্লেসহোল্ডার।
- মিনিট ৩-৪: একটি /chat সার্ভার রুট যুক্ত করুন। API কীটি ধরে রাখুন। সিস্টেম প্রম্পট সহকারীকে বর্ণনা করে একটি একক বাক্যে সেট করা হয়েছে।
- মিনিট ৫-৬: ওয়্যার মডেল স্ট্রিমিং। টোকেন চঙ্কগুলি SSE এর মাধ্যমে বেরিয়ে যায়; ক্লায়েন্ট অ্যাপটি শেষ সহকারী বুদবুদটিতে যুক্ত হয়।
- মিনিট ৭: শেষ ১০টি বার্তা সার্ভার-সাইড (বা স্থানীয়-প্রথম, তারপরে সিঙ্ক) সংরক্ষণ করুন। ছেঁটে ফেলুন।
- মিনিট ৮: টাইমআউট এবং একটি একক পুনরায় চেষ্টা যুক্ত করুন। যদি উভয়ই ব্যর্থ হয় তবে একটি বন্ধুত্বপূর্ণ ইনলাইন ত্রুটি পুনরায় চেষ্টা বোতামের সাথে দেখান।
- মিনিট ৯: লেটেন্সি এবং টোকেন গণনা লগ করুন। আজ কনসোল লগ, আগামীকাল আসল লগ। তবে কিছু লগ করুন।
- মিনিট ১০: অনুভূতি পোলিশ করুন—প্রেরণের পরে ইনপুট ফোকাস করুন, প্রতিলিপি স্বয়ংক্রিয়ভাবে স্ক্রোল করুন, অবিলম্বে টাইপিং বুদবুদ দেখান।
এটাই। এটা কি সুন্দর? এখনো না। তবে এটি প্রকাশযোগ্য, যা সুন্দরতা খুঁজে পাওয়ার একমাত্র উপায়।
আপনার আসল অ্যাপের জন্য টিউনিং (কারণ "সাধারণ চ্যাট" একটি কপ-আউট)
- ডক্স অ্যাপ? উদ্ধৃতি এবং ইনলাইন সারসংক্ষেপের দিকে পক্ষপাতিত্ব। ব্যবহারকারীরা রসিদ চান।
- CRM? প্রতিক্রিয়াগুলি সংক্ষিপ্ত এবং কার্যক্ষম রাখুন। এমন ইমেল লিখবেন না যা দেখে মনে হয় এআই লিখেছে।
- IDE? ডিটারমিনিজম পছন্দ করুন। সরঞ্জাম কল এবং ফলাফল স্পষ্টভাবে দেখান; মডেলটিকে একটি লিশে রাখুন।
- মোবাইল? লেটেন্সি হল ভিলেন। আগ্রাসীভাবে ক্যাশে করুন। আংশিক রেন্ডারিং প্রতিবার স্পিনারকে হার মানায়।
বিষয়: AI চ্যাট একটি বৈশিষ্ট্য, গন্তব্য নয়। এটিকে একটি কাজ ভালভাবে করার জন্য কাজে লাগান।
কীভাবে এটিকে আপনার পণ্যের মতো অনুভব করাবেন, অন্য কারও মডেলের স্কিন নয়
- ভয়েস: একটি অনুচ্ছেদে স্টাইল সিস্টেম প্রম্পট লিখুন যা আসলে আপনার মতো শোনায়। তারপর থামুন।
- ঘর্ষণ: ব্যবহারকারীদের একটি মডেল বাছাই করতে বলবেন না। তারা আপনার অ্যাপ ব্যবহার করতে এসেছে; তারা আপনার ML অপস দল হতে আসেনি।
- অধ্যবসায়: সঠিক মেমরি রাখুন। বাকি আর্কাইভ করুন। একটি বিশৃঙ্খল ইতিহাস আপনার অ্যাপটিকে সস্তা মনে করার দ্রুততম উপায়।
- স্থানীয় অভ্যাস: প্ল্যাটফর্ম কনভেনশনকে সম্মান করুন। iOS এ, সোয়াইপ-জেসচার এবং নিরাপদ অঞ্চল। ওয়েবে, কীবোর্ড শর্টকাট এবং নির্বাচন আচরণ।
স্বাদই একমাত্র টেকসই পরিখা।
কখন এআই চ্যাট তৈরি করবেন না (অথবা: সংশয়বাদীর অন্তর্বর্তী)
- যদি আপনার ব্যবহারকারীরা প্রশ্ন না করেন। একটি চ্যাট বাক্স যুক্ত করবেন না যেখানে একটি বোতাম আরও ভাল।
- যদি আপনার পণ্যের মূল কাজটি ডিটারমিনিস্টিক হয়। কেউ সম্ভাব্য ক্যালকুলেটর চায় না।
- আপনার প্রয়োজনীয় ডেটা যদি সম্মতি পিছনে লক করা থাকে তবে আপনি এখনও সমাধান করেননি।
আপনি এআই-এর পক্ষে থাকতে পারেন এবং এখনও চ্যাটকে না বলতে পারেন। এটি লুডাইট নয়; এটি পণ্যের অনুভূতি।
নীরব পাওয়ার মুভ: সীমাবদ্ধতা
সেরা "এআই" বৈশিষ্ট্য থেকে বড় শিক্ষা: তারা অনেক কিছুকে না বলে। আপনার ডোমেনে মডেলটিকে সীমাবদ্ধ করুন। প্রম্পটটি সংক্ষিপ্ত রাখুন। সম্ভব হলে একটি প্রতিলিপির পরিবর্তে আপনার অ্যাপের নেটিভ UI তে ফলাফল দেখান। আপনি যত বেশি লক্ষ্য সংকীর্ণ করবেন, মডেলটি তত বেশি হিট করবে। এটি "সাধারণ বুদ্ধিমত্তা" নয়; এটি নির্দিষ্ট উপযোগিতা।
শিপিং, পুনরায় দেখা
আকাঙ্ক্ষী হওয়ার চেয়ে শিপযোগ্য ভালো। একটি পরিপাটি ১০ মিনিটের বিল্ড প্রমাণ করে যে লুপটি কাজ করে। তারপরে যেখানে গুরুত্বপূর্ণ সেখানে পুনরাবৃত্তি করুন: গতি, ফিট এবং অনুভূতি। আপনি পরে মডেল পরিবর্তন করতে পারেন। আপনি পরে সরঞ্জাম যোগ করতে পারেন। আপনার যখন সংরক্ষণের মতো মেমরি থাকে তখন আপনি মেমরি মডেলটি রিফ্যাক্টর করতে পারেন। আপনি যা ঠিক করতে পারবেন না তা হল ব্যবহারকারীর বিশ্বাস হারানো কারণ প্রথম অভিজ্ঞতাটি একটি ডেমোর মতো অনুভূত হয়েছিল যা একটি মূল বক্তব্য থেকে পালিয়ে গেছে।
সুতরাং হ্যাঁ, আপনি ১০ মিনিটে আপনার সুন্দর অ্যাপে AI চ্যাট তৈরি করতে পারেন। যদি আপনার একটি বাস্তব, কার্যকরী লুপ বোঝানো হয়। যদি আপনার থিয়েটারের চেয়ে স্বাদ বোঝানো হয়। যদি আপনার সাসপেন্সের চেয়ে স্ট্রিমিং বোঝানো হয়। বাকিটা কেবল স্যান্ডিং।
Sider.AI এর মতো প্ল্যাটফর্মগুলিতে একটি শেষ কথা
আপনি যদি বয়লারপ্লেয়ারের প্রতি অ্যালার্জিযুক্ত হন (যুক্তিসঙ্গত), Sider.AI এর মতো প্ল্যাটফর্মগুলি আপনাকে সময় কিনে দেয়: দ্রুত ওয়্যারিং, সংবেদনশীল স্ট্রিমিং ডিফল্ট এবং আপনি যখন কাঠামোকে ছাড়িয়ে যান তখন একটি পালানোর হ্যাচ। এটিকে আপনি একটি ভাল UI কিট ব্যবহারের মতো ব্যবহার করুন—যা মার্জিত তা রাখুন, যা নয় তা প্রতিস্থাপন করুন। লক্ষ্য আনুগত্যের প্রতিশ্রুতি দেওয়া নয়; এটি সর্বনিম্ন সম্ভাব্য চাকা পুনর্বিবেচনা সহ "কাজ করে" এবং তারপরে "সঠিক মনে হয়" এ পৌঁছানো। অথবা আপনি পুরো জিনিসটি হাতে রোল করতে পারেন। যা ঠিক আছে। শুধু টাইপিং সূচকটি ভুলে যাবেন না।
একটি প্রায়-উপসংহার নয়
প্রতিশ্রুতিটি হ'ল এআই আপনার পণ্যটিকে বিজ্ঞান কল্পকাহিনীতে পরিণত করে না। প্রতিশ্রুতিটি হ'ল আপনি আপনার অ্যাপ্লিকেশনটিকে এমন একটি প্রশ্নের উত্তর দিতে পারেন যেন কোনও সহায়ক মানুষ করবে—এবং এটি এখনই করুন, পরের ত্রৈমাসিকে নয়। দশ মিনিট আপনাকে লুপ কিনে দেয় এবং লুপ আপনাকে প্রতিক্রিয়া কিনে দেয়। তার পরে, এটি স্বাদ এবং পুনরাবৃত্তি।
এবং যদি এটি বিরক্তিকর শোনায় তবে ভাল। বিরক্তিকর যেখানে সুন্দরতা বাস করে।
FAQ
প্রশ্ন ১: আপনি কি সত্যিই ১০ মিনিটে কোনও অ্যাপে এআই চ্যাট তৈরি করতে পারবেন?
হ্যাঁ—যদি "এআই চ্যাট তৈরি করুন" দ্বারা আপনি একটি কার্যকরী লুপ বোঝান: ইনপুট, প্রসঙ্গ, মডেল কল, স্ট্রিমিং এবং একটি প্রতিলিপি। স্প্রিন্টটি গতি এবং স্পষ্টতা সম্পর্কে, কোনও বারোক এজেন্ট নয় যা উত্তর দেওয়ার আগে বারোটি সরঞ্জাম জিজ্ঞাসা করে।
প্রশ্ন ২: স্ট্রিমিং এআই প্রতিক্রিয়া যুক্ত করার সবচেয়ে সহজ উপায় কী?
আপনার চ্যাট UI তে মডেল থেকে টোকেন স্ট্রিম করতে সার্ভার-সেন্ট ইভেন্টস বা ওয়েবসকেট ব্যবহার করুন। প্রথম চঙ্কে রেন্ডারিং শুরু করুন—কয়েক মিলিসেকেন্ড পরে চেপে ধরার চেয়ে অনুভূত গতি বেশি গুরুত্বপূর্ণ।
প্রশ্ন ৩: বেসিক এআই চ্যাট বৈশিষ্ট্যের জন্য আমার কি RAG বা এজেন্ট দরকার?
না। পুনরুদ্ধার এবং সরঞ্জাম ব্যবহার আপগ্রেড, পূর্বশর্ত নয়। প্রথমে চ্যাট লুপটি প্রকাশ করুন; আপনার কাছে আসল সামগ্রী এবং "একটি ডেমোতে দুর্দান্ত শোনাচ্ছে" এর বাইরে কোনও কারণ থাকলে পুনরুদ্ধার যুক্ত করুন।
প্রশ্ন ৪: আমি কীভাবে এআই চ্যাটকে দ্রুত এবং সাশ্রয়ী রাখতে পারি?
প্রসঙ্গ ক্যাপ করুন, আগ্রাসীভাবে ছাঁটাই করুন এবং প্রতিক্রিয়া স্ট্রিম করুন। ছোট, দ্রুত মডেলগুলি প্রায়শই সাধারণ কাজের জন্য জয়ী হয় এবং একটি সার্ভার বিমূর্ততার মাধ্যমে মডেলগুলি অদলবদল করা আপনাকে বিক্রেতার লক-ইন থেকে দূরে রাখে।
প্রশ্ন ৫: Sider.AI ১০ মিনিটের বিল্ডে কোথায় ফিট করে?
Sider.AI অ-গ্ল্যামারাস অংশগুলির সাথে সহায়তা করে—স্ট্রিমিং, গার্ডরেল, লগ এবং দ্রুত ওয়্যারিং—যাতে আপনার দল সুন্দর অ্যাপের বিবরণগুলিতে মনোনিবেশ করতে পারে। এটিকে একটি ভাল কাঠামোর মতো ব্যবহার করুন: এটির উপর ঝুঁকুন, তারপরে স্কেল করার সাথে সাথে টুকরাগুলি প্রতিস্থাপন করুন।