শেয়ার করুন

১৪ নভেম্বর, ২০২৪

জেমিনি এপিআই ব্যবহার করে এআই চালিত ডেভেলপার টুল উন্নত করা

স্কট ওয়ার্নার

সাবলেয়ারের সিইও

পেজ বেইলি

এআই ডেভেলপার এক্সপেরিয়েন্স ইঞ্জিনিয়ার

বিশাল ধর্মাধিকারী

পণ্য সমাধান প্রকৌশলী

সাবলেয়ার শোকেস হিরো

গত এক বছরে AI-এর গণতন্ত্রীকরণ ডেভেলপারদের জন্য দুটি বড় সুযোগের দ্বার উন্মোচন করেছে - তাদের প্রকল্পগুলিতে অত্যাধুনিক AI-কে একীভূত করা অবিশ্বাস্যভাবে সহজ করে তুলেছে এবং তাদের উন্নয়ন প্রক্রিয়ায় AI-চালিত দক্ষতা আনা হয়েছে।

রুবি ভিত্তিক এআই এজেন্ট ফ্রেমওয়ার্ক, সাবলেয়ার , আমাদের ১.৫ মডেলগুলিকে তাদের মূল ডেভেলপার অফারিং এবং তাদের নিজস্ব টুলিং ওয়ার্কফ্লোতে একীভূত করে জেমিনি এপিআই-এর শক্তি এবং দক্ষতা প্রদর্শন করে।

জেমিনির সাথে সাবলেয়ার ডকুমেন্টেশন আপডেট রাখা

ডেভেলপারদের জন্য AI-এর একটি সুযোগ হল, বিশেষ করে ছোট, প্রাথমিক পর্যায়ের স্টার্টআপগুলির মধ্যে, কম ব্যবহার করে আরও বেশি কিছু করার জন্য দলগুলিকে সক্ষম করা। অনেকের জন্য, এটি ডকুমেন্টেশনের মতো সহজ কিন্তু গুরুত্বপূর্ণ কিছুতে হতে পারে। তাদের নিজস্ব কর্মপ্রবাহে, সাবলেয়ার তাদের লাইব্রেরিটিকে জেমিনি 1.5 প্রো-এর সাথে একীভূত করে এবং তাদের ডকুমেন্টেশন আপ টু ডেট রাখার এবং উন্নতির ক্ষেত্রগুলি চিহ্নিত করার কাজকে সমর্থন করার জন্য AI অটোমেশন তৈরি করে এটি মোকাবেলা করে।

"এটা সবই সম্ভব হয়েছে কারণ জেমিনির বিশাল প্রেক্ষাপট জানালা আপনাকে জটিল, অপ্টিমাইজড বাস্তবায়নে আটকে না থেকে নতুন ধারণাগুলি চেষ্টা করার জন্য সত্যিই শ্বাস-প্রশ্বাসের জায়গা দেয়।"

— সাবলেয়ারের সিইও স্কট ওয়ার্নার বলেছেন, যিনি সম্প্রতি ওয়েস্ট ইনফারেন্সেস-এ এই ধারণাটি সম্পর্কে লিখেছেন!

প্রক্রিয়াটি এভাবে কাজ করে:

  1. যেকোনো সময় একটি PR প্রধান সাবলেয়ার রিপোজিটরিতে মার্জ করা হয়, এটি একটি এজেন্টকে ডকুমেন্টেশন আপডেট করার কাজ শুরু করতে ট্রিগার করে।

  2. এজেন্ট একটি প্রম্পট তৈরি করে যাতে লাইব্রেরির সম্পূর্ণ বিষয়বস্তু, ডকুমেন্টেশনের সম্পূর্ণ বিষয়বস্তু এবং পিআর-এর সমস্ত প্রাসঙ্গিক বিষয়বস্তু থাকে এবং কাজটি ব্যাখ্যা করার নির্দেশাবলী থাকে এবং এটি জেমিনিকে পাঠায়।

  3. এরপর জেমিনি ফাইল পাথ, নাম এবং বিষয়বস্তু ধারণকারী স্ট্রাকচার্ড আউটপুট দিয়ে সাড়া দেয় যা সাবলেয়ার লাইব্রেরি ব্যবহারের জন্য একটি বস্তুতে রূপান্তর করে।

  4. অবশেষে, এজেন্ট তার প্রাপ্ত কাঠামোগত তথ্য গ্রহণ করে এবং একটি নতুন শাখা তৈরি করতে, ফাইলগুলিতে অনুরোধকৃত পরিবর্তনগুলি করতে এবং একটি নতুন পিআর জমা দিতে এটি ব্যবহার করে।

            
              
# Get the diff from the PR
diff = GithubGetDiffAction.new(repo: repo, pr_number: pr_number).call

# Get the contents of the library repository and docs repository
code_context = GetContextAction.new(path: code_repo_path).call
doc_context = GetContextAction.new(path: doc_repo_path).call

# Use Gemini 1.5 Pro to decide whether this PR requires a documentation update
result = DocUpdateNecessityGenerator.new(
  code_context: code_context,
  doc_context: doc_context,
  diff: diff
).generate

# Use Gemini 1.5 Pro to generate suggested changes to the documentation
doc_update_suggestions = DocUpdateSuggestionGenerator.new(
  code_context: code_context,
  doc_context: doc_context,
  context_ignore_list: context_ignore_list,
    diff: diff
).generate

# Use Gemini 1.5 Pro to generate the changes to the suggested files
file_updates = DocUpdateGenerator.new(
  code_context: code_context,
  suggestions: suggestions,
  doc_context: doc_context,
  context_ignore_list: context_ignore_list
).generate

# Update each of the files returned by Gemini 1.5 Pro and create a new PR  
          
            
          

সাবলেয়ারের ওপেন সোর্স উদাহরণগুলিতে সম্পূর্ণ ওয়ার্কফ্লো কোডটি দেখুন।

এই প্রথম প্রকল্পের সাফল্যের পর তারা আরও বিস্তৃত হয়েছে এজেন্টদের মধ্যে যারা তাদের ডকুমেন্টের একটি নির্দিষ্ট ক্যাটালগ পৃষ্ঠা আপ টু ডেট রাখার উপর মনোযোগ দেওয়ার জন্য পৃথক রিসোর্স রিপোজিটরি পর্যবেক্ষণ করে। এমনকি একই রকম একটি কাজ রাতারাতি চলে যেখানে জেমিনি বর্তমান ডকুমেন্টেশন বিশ্লেষণ করে, উন্নতির কয়েকটি ক্ষেত্র চিহ্নিত করে, প্রভাবের উপর ভিত্তি করে সেগুলিকে র‍্যাঙ্ক করে এবং সাবলেয়ার টিমের জন্য একটি একক পিআর তৈরি করে যাতে তারা প্রতিদিন সকালে ঘুম থেকে উঠে পর্যালোচনা করতে পারে।

জেমিনি মডেলের মাধ্যমে রুবি ডেভেলপার কমিউনিটিতে এআই নিয়ে আসা

নিজস্ব ডেভেলপার অবকাঠামো এবং টুলিংকে আরও দক্ষ করে তোলার পাশাপাশি, সাবলেয়ার তাদের মূল পণ্য কার্যকারিতার মধ্যে জেমিনি মডেলগুলিকেও সমর্থন করে।

সাবলেয়ারের লক্ষ্য হল ব্যয় বা জটিলতার কারণে পূর্বে নাগালের বাইরে থাকা উচ্চাকাঙ্ক্ষী প্রকল্পগুলি মোকাবেলা করার জন্য পৃথক ডেভেলপার এবং ছোট দলগুলিকে ক্ষমতায়ন করা। তারা ক্লান্তিকর, সময়সাপেক্ষ এবং পুনরাবৃত্তিমূলক কাজগুলিকে স্বয়ংক্রিয় করার উপর দৃষ্টি নিবদ্ধ করে - AI এর জন্য নিখুঁত ব্যবহারের ক্ষেত্রে। এটি বৃহৎ আকারের কোড মাইগ্রেশন থেকে শুরু করে, যেখানে একই ধরণের ক্রিয়াকলাপ হাজার হাজার বার পুনরাবৃত্তি করতে হয়, সময় এবং শক্তি নষ্ট করে এমন একটি চেকলিস্টে ছোট কাজগুলিকে স্বয়ংক্রিয় করে প্রতিদিনের দক্ষতা অর্জন পর্যন্ত হতে পারে।

সাবলেয়ারের জন্য একটি প্রধান চ্যালেঞ্জ হল রুবি ডেভেলপার কমিউনিটিকে সমর্থন করা, যা AI ইকোসিস্টেমে তুলনামূলকভাবে কম পরিষেবা প্রদান করা হয়েছে। জেমিনিকে একীভূত করার ফলে তারা তাদের সরঞ্জামগুলির মধ্যে জেমিনি সাপোর্টের ক্রমবর্ধমান চাহিদা মেটাতে সক্ষম হয়েছে। সাবলেয়ারের জেমিনি বাস্তবায়ন অত্যন্ত দক্ষ, তাদের বিমূর্তকরণ স্তরের জন্য মাত্র 60 লাইন কোডের প্রয়োজন। তারা কাঠামোগত আউটপুট ব্যবহার করে, একক-পালা পুনরাবৃত্তিমূলক প্রক্রিয়ায় মডেলগুলির সাথে ইন্টারঅ্যাক্ট করে। এই পদ্ধতিটি ডেভেলপমেন্ট এবং ডিবাগিংকে সহজ করে, ডেভেলপারদের শক্তিশালী অ্যাপ্লিকেশন তৈরি করতে সহায়তা করে।

"LLM-ভিত্তিক অ্যাপ তৈরি করার সময়, সমস্যাটিকে সম্ভাব্য ক্ষুদ্রতম উপাদানগুলিতে ভাগ করুন," ওয়ার্নার পরামর্শ দেন। "আপনি যেকোনো মডেল আউটপুট কার্যকরভাবে পরিচালনা করার জন্য আপনার প্রোগ্রামগুলি ডিজাইন করতে চান, যার অর্থ ইচ্ছাকৃতভাবে একজন ব্যক্তির পর্যালোচনা এবং সম্পাদনা করার জন্য পদক্ষেপগুলি যোগ করা হতে পারে। এগিয়ে যাওয়ার আগে।"

এলএলএম, এআই অবকাঠামো ধাঁধার একটি মূল অংশ

সাবলেয়ারের কাছে, জেমিনির মতো এলএলএমগুলি ডাটাবেসের মতোই অবকাঠামোর অপরিহার্য অংশ। তাদের কাঠামোটি জেমিনি ১.৫ প্রো এবং জেমিনি ১.৫ ফ্ল্যাশ উভয়ের সাথেই কলগুলিকে নির্বিঘ্নে সংহত করার জন্য ডিজাইন করা হয়েছে, যা ডেভেলপাররা তাদের অ্যাপ্লিকেশনগুলিতে সহজেই ব্যবহার করতে পারে এমন কাঠামোগত ডেটা পুনরুদ্ধার করে। এই পদ্ধতিটি বিভিন্ন ডেটা উৎস থেকে অন্তর্দৃষ্টি আহরণ থেকে শুরু করে কোড তৈরি করা এবং ভাষা এবং লাইব্রেরি জুড়ে কোডবেস রূপান্তর করা পর্যন্ত সম্ভাবনার এক জগৎ উন্মুক্ত করে। সাবলেয়ার এমনকি জেমিনি মডেলগুলি ব্যবহার করে ব্যবহারকারীদের ফ্রেমওয়ার্কের মধ্যেই নতুন কার্যকরী উপাদান তৈরি করতে সক্ষম করে। এই "স্ব-একত্রিত" বৈশিষ্ট্যটি পরীক্ষা-নিরীক্ষাকে উৎসাহিত করে এবং ব্যবহারকারীদের দ্রুত নতুন ধারণাগুলি অন্বেষণ করতে দেয়।

"আমাদের কাঠামোটি সহজ করার জন্য তৈরি করা সমস্ত সমস্যার সমাধানে জেমিনি দুর্দান্ত - কোড তৈরি, টাস্ক ডিকম্পোজিশন, নির্দেশাবলী অনুসরণ এবং উদাহরণের উপর ভিত্তি করে নতুন ডেটা স্ট্রাকচার তৈরি করা"

— স্কট ওয়ার্নার, সাবলেয়ার

এরপর কি?

সামনের দিকে তাকিয়ে, সাবলেয়ার Augmentations.ai চালু করার জন্য প্রস্তুত হচ্ছে, একটি প্ল্যাটফর্ম যা তাদের তৈরি অটোমেশনগুলিকে সমস্ত ডেভেলপমেন্ট টিমের জন্য উপলব্ধ করে। তাদের প্রাথমিক রিলিজে জেমিনি 1.5 প্রো দ্বারা চালিত দুটি টুল থাকবে: সিমান্টিক লিন্টিং, যা দলগুলিকে AI-চালিত কোড পর্যালোচনা নিয়ম তৈরি করতে দেয় যা প্রেক্ষাপট বোঝে এবং উন্নত সেরা অনুশীলনগুলি প্রয়োগ করে, এবং সাপ্তাহিক সারাংশ, যা একাধিক রিপোজিটরি এবং পণ্য পরিচালনার সরঞ্জামগুলির উন্নয়ন কার্যকলাপকে নেতৃত্বের জন্য কার্যকর অন্তর্দৃষ্টিতে রূপান্তরিত করে।

অগমেন্টেশন প্ল্যাটফর্মে আরও টুল প্রকাশের সাথে সাথে তারা আরও জটিল কাজের জন্য জেমিনি ১.৫ প্রো এবং আরও ল্যাটেন্সি-সংবেদনশীল, ব্যবহারকারী-মুখী, কার্যকারিতার জন্য জেমিনি ১.৫ ফ্ল্যাশের মিশ্রণ ব্যবহার চালিয়ে যাওয়ার পরিকল্পনা করছে। এই কাজটি তাদের ওপেন সোর্স ফ্রেমওয়ার্কেও ফিডব্যাক করবে, যা রুবি সম্প্রদায়কে সাবলেয়ার টিমের বাস্তব-বিশ্ব ব্যবহারের দ্বারা চালিত হয়ে নতুন জেমিনি কার্যকারিতার সুবিধা নিতে সক্ষম করবে।

সাবলেয়ারের গল্পটি জেমিনি এপিআই-এর রূপান্তরমূলক সম্ভাবনাকে তুলে ধরে। এটি তার প্রমাণ যে ডেভেলপাররা কত সহজেই জেমিনিকে তাদের কর্মপ্রবাহে একীভূত করতে পারে, উদ্ভাবন এবং অটোমেশনের জন্য সুযোগের এক বিশাল জগৎ খুলে দেয়। জেমিনি মডেলগুলি দিয়ে নির্মাণ শুরু করতে, আমাদের এপিআই ডকুমেন্টেশন পড়ুন।

টুনসূত্র

জেমিনি ২.০-এর প্রাসঙ্গিক বহুভাষিক অনুবাদ ক্ষমতা ব্যবহার করে ভারতের আঞ্চলিক ভাষায় কমিক্স এবং ওয়েবটুন দর্শকদের কাছে সহজলভ্য করে তোলা।