Vercel-এর Eve Framework দিয়ে Agent তৈরি

Vercel তাদের Eve ওপেন-সোর্স করেছে। এটি টেকসই (durable) AI agent তৈরি করার একটি framework।

মডেল লুপ বা টুল ডিসপ্যাচ (tool dispatch)-এর জন্য জটিল কোড লেখার পরিবর্তে, আপনি কেবল একটি ডিরেক্টরিতে ফাইল লিখবেন। বাকি কাজ Eve নিজেই সামলে নেয়।

আমি Eve ব্যবহার করে একটি শপিং অ্যাসিস্ট্যান্ট তৈরি করেছি। এটি পণ্য অনুসন্ধান করে, ইনভেন্টরি চেক করে, দাম তুলনা করে এবং অর্ডার প্লেস করে।

আমি যা যা শিখলাম তা নিচে দেওয়া হলো:

The Core Concept (মূল ধারণা) Eve এজেন্টকে কমিউনিকেশন চ্যানেল থেকে আলাদা রাখে।

  • এজেন্ট হলো রিজনিং কোর (reasoning core)। এতে মডেল, টুলস এবং ইনস্ট্রাকশন থাকে।
  • চ্যানেল হলো ডেলিভারি মেথড। এটি অথেন্টিকেশন (auth), মেসেজ ফরম্যাট এবং প্ল্যাটফর্মগুলো পরিচালনা করে।

এই ডিজাইনের ফলে একটি এজেন্ট একই সাথে অনেকগুলো সারফেসে (surfaces) কাজ করতে পারে। আপনি একই এজেন্ট ওয়েব চ্যাট, Slack, CLI বা webhook-এর জন্য ব্যবহার করতে পারেন। আপনার এজেন্ট কোড পরিবর্তন না করেই কেবল চ্যানেল ফাইল যোগ করার মাধ্যমে নতুন সারফেস যুক্ত করা সম্ভব।

Durable Sessions (টেকসই সেশন) কথোপকথন সচল রাখতে Eve একটি workflow engine ব্যবহার করে।

  • সার্ভার রিস্টার্ট দিলেও সেশনগুলো বজায় থাকে।
  • যদি কোনো প্রসেস মাঝপথে ক্র্যাশ করে, Eve শেষ সম্পন্ন হওয়া ধাপ থেকে পুনরায় শুরু করে।
  • আপনি আপনার সার্ভার বন্ধ করে আবার চালু করতে পারেন এবং একই কথোপকথন চালিয়ে যেতে পারেন।

লোকাল ডেভেলপমেন্টের জন্য, Eve সবকিছু আপনার ফাইলসিস্টেমের একটি .workflow-data ডিরেক্টরিতে সেভ করে। প্রোডাকশনের জন্য, আপনি PostgreSQL, Redis বা MongoDB-এর মতো বিভিন্ন ব্যাকএন্ড ব্যবহার করতে পারেন।

Zero Orchestration (জিরো অর্কেস্ট্রেশন) আমাকে কোনো রাউটিং বা স্ট্রিমিং লজিক লিখতে হয়নি।

  • ফাইলসিস্টেম নিজেই সেটআপ সামলে নেয়। নতুন কোনো সক্ষমতা (capability) যোগ করতে হলে আপনাকে শুধু একটি ফাইল তৈরি করতে হবে।
  • এজেন্ট খুব স্বাভাবিকভাবেই মাল্টি-স্টেপ রিজনিং (multi-step reasoning) পরিচালনা করে।
  • ডেভেলপার টুলটি টুল কল এবং স্ট্রিমিং টেক্সট দেখার জন্য একটি রিয়েল-টাইম টার্মিনাল UI প্রদান করে।

আপনি যদি কোনো কাস্টম মডেল প্রোভাইডার ব্যবহার করেন, তবে আপনার modelContextWindowTokens সংজ্ঞায়িত করতে ভুলবেন না। Eve এটি ব্যবহার করে পুরনো মেসেজগুলো সামারি (summarize) করে, যাতে আপনার কথোপকথন কখনোই লিমিটে না পৌঁছায়।

Key Takeaways (মূল বিষয়সমূহ):

  • টুল ডিসপ্যাচের জন্য কোনো বয়েলারপ্লেট (boilerplate) কোডের প্রয়োজন নেই।
  • বিল্ট-ইন সেশন পারসিস্টেন্স (session persistence)।
  • চ্যানেল ফাইলের মাধ্যমে সহজেই মাল্টি-প্ল্যাটফর্ম সাপোর্ট।
  • রিয়েল-টাইম TUI-এর মাধ্যমে দ্রুত ডেভেলপমেন্ট।

Source: https://dev.to/stormhub/agent-with-vercels-eve-framework-3c2l

Optional learning community: https://t.me/GyaanSetuAi