চি সিএলআই
সম্পর্কে
এক বছর আগে, আমি চা তৈরি করেছিলাম, এর সম্পর্কে আমার মূল ব্লগ পোস্টটি পড়ুন; এটি ছিল আমার Python CLI টুল যা ওপেনএআই মডেলগুলোর সাথে ইন্টারফেস করার জন্য। তখন থেকে আমি AI ক্ষেত্রের নাটকীয় পরিবর্তন দেখেছি। নতুন খেলোয়াড়রা বাজারে এসে ওপেনএআই-এর বিকল্প হিসেবে আকর্ষণীয় প্রস্তাব দিয়েছে। এটি আমাকে চা কী হতে পারে তা পুনরায় কল্পনা করতে প্ররোচিত করেছিল। ফলাফল হলো চ, একটি পরীক্ষামূলক Go বাস্তবায়ন যা ডেভেলপার টুল বানানোর বিষয়ে আমি যা শিখেছি সবকিছুকে ধারণ করে।
চ কেবল চা-এর একটি পোর্ট নয়। এটি এখনও তার প্রাথমিক পর্যায়ে থাকলেও, এটি আমার এবং অন্যান্য ডেভেলপারদের কাছে সবচেয়ে গুরুত্বপূর্ণ বিষয়গুলোর উপর জোর দেয়: গতি, দক্ষতা, এবং বহু AI প্ল্যাটফর্মের সমর্থন। চা-কে দরকারী করে তোলা সরলতা ও টার্মিনাল-প্রথম ইন্টারঅ্যাকশনের মূল দর্শন বজায় রেখে, চ তার Python পূর্বসূরীর তুলনায় চিত্তাকর্ষক 2.55x কর্মক্ষমতা উন্নতি প্রদান করে। এর মানে অপেক্ষা করার সময় কম এবং প্রকৃত সমস্যাগুলো সমাধান করার জন্য বেশি সময়।
উন্নয়ন
AI ক্ষেত্রটি আমি যখন প্রথম চা রিলিজ করেছিলাম তার পর থেকে উল্লেখযোগ্যভাবে বদলে গেছে। আমি বেশ কয়েকটি বড় পরিবর্তন লক্ষ্য করেছি যেগুলো চ তৈরি করার পদ্ধতিকে প্রভাবিত করেছে:
-
নতুন AI প্রদানকারীদের উত্থান অবিশ্বাস্য। গ্রোক মতো কোম্পানিগুলো ইনফারেন্স গতির সীমা টপিয়ে দিয়েছে। অ্যানথ্রোপিক-এর ক্লড (Claude) চমৎকার যুক্তিবোধের ক্ষমতা দেখিয়েছে। ডিপসিক এবং অন্যান্যরা ভাষা মডেলগুলোর জন্য নতুন পদ্ধতি এনেছে। এই বৈচিত্র্য মানে কেবল ওপেনএআই-এর উপর নির্ভর করা আর যথেষ্ট ছিল না।
-
প্রতিক্রিয়ার গতি ক্রমেই গুরুত্বপূর্ণ হয়ে উঠেছে। AI টুলগুলি আমাদের দৈনন্দিন কাজের অঙ্গ হওয়ায়, প্রতিটি অতিরিক্ত সেকেন্ডের অপেক্ষা যোগ হয়ে যায়। এটাই ছিল Go-এ পুনঃলিখনের প্রধান অনুপ্রেরণাগুলোর একটি। কর্মক্ষমতা লাভগুলো কেবল বেঞ্চমার্কের সংখ্যাই নয়—এগুলো একটি কোডিং সেশনের গভীরে থাকা অবস্থায় লক্ষণীয়ভাবে আরো মসৃণ অভিজ্ঞতায় রূপ নেয়।
-
প্ল্যাটফর্ম নমনীয়তার প্রয়োজনও বৃদ্ধি পেয়েছে। বিভিন্ন মডেল বিভিন্ন কাজে উৎকৃষ্টতা দেখায়, এবং তাদের মধ্যে সহজে বদলানোর স্বাধীনতা মূল্যবান। আমি চ-কে এটি স্মুথ করতে চেয়েছিলাম, যাতে আপনি API এন্ডপয়েন্ট ম্যানেজ করার পরিবর্তে আপনার কাজের ওপর মনোযোগ দিতে পারেন।
মূল বৈশিষ্ট্য
বহু প্ল্যাটফর্ম সমর্থন: চ নির্বিঘ্নে কাজ করে ওপেনএআই, গ্রোক, ডিপসিক, অ্যানথ্রোপিক, এবং এক্সএআই এর সাথে। আমি প্ল্যাটফর্মগুলির মধ্যে পরিবর্তনকে যতটা সম্ভব সহজ করেছি কারণ আমার বিশ্বাস বিকল্প থাকা টুলটিকে আরো মূল্যবান করে তোলে।
অতি দ্রুত কর্মক্ষমতা: চা-এর তুলনায় 2.55x গতি বৃদ্ধিটি কেবল বাজারজাতকরণ নয়। এটি সতর্ক অপ্টিমাইজেশন এবং Go-এর অসাধারণ কর্মক্ষমতার ফল। প্রতিটি ইন্টারঅ্যাকশন আরও ঝটপট লাগে, যা দৈনন্দিন ব্যবহারে বাস্তব পার্থক্য তৈরি করে।
ইন্টারেকটিভ ও ডিরেক্ট মোড: কখনো দ্রুত উত্তর চাই, কখনো দীর্ঘ কথোপকথনের প্রয়োজন হয়। চ উভয় কাজেরই স্বাভাবিকভাবে সমর্থন করে। আপনি দ্রুত কুয়েরি পাঠাতে পারেন বা বিস্তৃত প্রযুক্তিগত আলোচনায় নিযুক্ত হতে পারেন।
ওয়েব সার্চ ইন্টিগ্রেশন: আমি SearXNG-কে IEEE উদ্ধৃতি ফরম্যাটের সাথে একত্রীকরণ করেছি। এর মানে যখন চ আপনার প্রশ্নের উত্তর দিতে ওয়েব কনটেন্ট টেনে আনে, আপনি সঠিকভাবে উদ্ধৃত, গবেষণাগুণসম্পন্ন উত্তর পাবেন। এটি বিশেষভাবে উপকারী যখন আপনাকে হালনাগাদ তথ্য দরকার বা ক্লেইম যাচাই করতে চান।
স্মার্ট ফাইল হ্যান্ডলিং: চ্যাট কনটেক্সটে ফাইল লোড করা আমি নিয়মিত ব্যবহার করি, তাই আমি এটি উন্নত করেছি। মাল্টি সিলেক্ট কার্যকারিতা আপনার কথোপকথনে ঠিক যেটা দরকার তা সহজে অন্তর্ভুক্ত করা সম্ভব করে তোলে।
প্রফেশনাল টুলস: আপনি যদি ডকুমেন্টেশনের জন্য কথোপকথন এক্সপোর্ট করেন, জটিল প্রম্পটের জন্য আপনার পছন্দের টেক্সট এডিটর ব্যবহার করেন, বা AI মডেলগুলোর মধ্যে স্যুইচ করেন—চ এগুলোকে সহজ করে তোলে। এগুলো শুধু সুন্দর ফিচার হিসেবে ভাবিনি; এগুলো এমন টুলস যেগুলো আমি নিজে প্রতিদিনই ব্যবহার করি।
চ্যাট ইতিহাস ব্যবস্থাপনা: কথোপকথনের ইতিহাসে ব্যাকট্র্যাক করতে পারাটা অসংখ্যবার আমাকে বাঁচিয়েছে, যখন আমাকে আলাপের পূর্ববর্তী অংশগুলো রেফারেন্স করতে বা ভবিষ্যতের রেফারেন্সের জন্য চ্যাট এক্সপোর্ট করতে হয়েছে।
কেন Go?
চা-কে Go-তে পুনরায় লিখার সিদ্ধান্ত কেবল কর্মক্ষমতার জন্যই ছিল না। এক বছর ধরে চা রক্ষণাবেক্ষণের পর, আমার কাছে কি কাজ করেছে এবং কী উন্নত করা যায় তার একটি পরিষ্কার ধারণা ছিল। Go-এর শক্ত টাইপিং ডেভেলপমেন্টে ত্রুটিগুলো আগেই ধরেছে। এর অসাধারণ concurrency সাপোর্ট একাধিক API কল পরিচালনা করা সহজ করেছে। দ্রুত এক্সিকিউশন করলে প্রতিটি ইন্টারঅ্যাকশনই বেশি প্রতিক্রিয়াশীল মনে হয়।
কিন্তু হয়তো সবচেয়ে গুরুত্বপূর্ণ, Go আমাকে আরও শক্তপোক্ত এবং বজায় রাখা সহজ একটি টুল তৈরিতে সাহায্য করেছে। কোডটি পরিষ্কার, এরror হ্যান্ডলিং বেশি নির্ভরযোগ্য, এবং সামগ্রিক আর্কিটেকচার আরো দৃঢ়। এই উন্নতিগুলো ব্যবহারকারীদের কাছে তৎক্ষণাৎ প্রকাশ্যে না দেখা যেতে পারে, কিন্তু এগুলো চ-কে আরও নির্ভরযোগ্য এবং নতুন ফিচার যোগ করার জন্য সহজ করে তোলে।
AI-সহায়িত ডেভেলপমেন্টের শক্তি
চ তৈরি করার সময় যা আমাকে সত্যিই বিস্মিত করেছে তা কেবল কর্মক্ষমতা বৃদ্ধি বা নতুন ফিচার ছিল না—এটি ছিল কিভাবে আমি এটি নির্মাণ করেছিলাম। ক্লড কোড CLI এবং জেমিনি CLI মত টুলস, এবং কার্সর IDE ব্যবহার করে আমি এই MVPটি এক দিনেরও কম সময়ের মধ্যে তৈরি করতে পেরেছি। এই অভিজ্ঞতাটি সফটওয়্যার ডেভেলপমেন্টে আমার দৃষ্টিভঙ্গি সম্পূর্ণভাবে বদলে দিয়েছে।
এই দ্রুত ডেভেলপমেন্ট চক্রটি কোনধরনের কপি কাটানোর গল্প ছিল না। বরং এটি প্রদর্শন করেছে কিভাবে AI টুলস আমাদের সফটওয়্যার প্রকল্পের কাছে সম্পূর্ণ ভিন্নভাবে এগোতে সক্ষম করে। যা שבוע বা সাপ্তাহ ধরে পরিকল্পনা, কোডিং এবং ডিবাগিং নিত তা ঘন্টা কয়েকের কেন্দ্রীভূত ডেভেলপমেন্টে সংকুচিত হয়ে এসেছে। এটি কেবল দ্রুত কোড লেখার কথা নয়; এটি পরীক্ষা, পুনরাবৃত্তি এবং উদ্ভাবন করার একটি গতিশীলতা যে আগে সম্ভব ছিল না।
ভবিষ্যৎ পরিকল্পনা
চ বর্তমানে বেশিরভাগ চা-র মূল ফিচারগুলো বাস্তবায়ন করে, তবে এটি খুবই পরীক্ষামূলক একটি প্রজেক্ট। আমি এর সম্ভাবনায় উৎসাহিত, তবে এখনও কাজ বাকি আছে। কর্মক্ষমতা উন্নতি এবং বহুপ্ল্যাটফর্ম সমর্থন চ-কে দ্রুত পরিবর্তিত AI পরিমণ্ডলের সাথে বৃদ্ধি পেতে সাহায্য করবে।
আমি প্রতিদিন চ ব্যবহার করি, ঠিক যেভাবে চা ব্যবহার করতাম, তবে এখন জানি এটি আরও দ্রুত—এটাই সন্তুষ্টির বিষয়। যারা এটি চেষ্টা করতে চান, পোস্টের শুরুতে লিঙ্ক করা প্রকল্পের GitHub রিপোজিটরিটি দেখুন। ইনস্টলেশন প্রক্রিয়াটি সরল, বিশেষত যদি আপনি Go টুলস-গুলোর সাথে পরিচিত হন।
চা থেকে চ-তে যাত্রাটা কেবল একটি দ্রুত ভাষায় টুলটি পুনরায় লিখে দেওয়ার বেশি কিছু ছিল। এটি চা তৈরি এবং ব্যবহার করে আমি যা শিখেছি সবকিছু নিয়ে আজকের AI পরিমণ্ডলে ডেভেলপারদের প্রয়োজন মেটাতে আরও উপযুক্ত কিছু তৈরি করার গল্প। আমি উৎসুক যে মানুষরা কিভাবে চ ব্যবহার করবে এবং এটি ভবিষ্যতে কীভাবে বিবর্তিত হবে।