মূল বিষয়বস্তুতে যান

নিবন্ধ

বৃহৎ ভাষার মডেলগুলি ব্যাখ্যা করা হয়েছে: এলএলএম কীভাবে কাজ করে এবং কুবারনেটে কীভাবে নিজের কাজ চালাতে হয়

টোকেন, এম্বেডিং, ট্রান্সফরমার, প্রশিক্ষণ এবং অনুমান — ম্যানেজার এবং ইঞ্জিনিয়ারদের জন্য ব্যাখ্যা করা হয়েছে — এছাড়াও ওল্লামা এবং ভিএলএলএম-এর সাথে আপনার নিজস্ব LLM স্থাপন করার জন্য উত্পাদন-প্রস্তুত কুবারনেটস YAML

  • 11 মিনিটে পড়া
  • এআই
  • MLOps
  • Kubernetes
এই পৃষ্ঠায়

বৃহৎ ভাষার মডেলগুলির জন্য একটি সরল-ইংরেজি নির্দেশিকা — সেগুলি কী, তারা আসলে কীভাবে হুডের নীচে কাজ করে এবং কীভাবে কুবারনেটে আপনার নিজস্ব চালাতে হয়৷ নন-টেকনিক্যাল ম্যানেজার এবং ইঞ্জিনিয়ারদের জন্য একইভাবে লেখা: সাদৃশ্যগুলি বাদ দিন, তারপর আপনি যখন মোতায়েন করার জন্য প্রস্তুত হন তখন YAML-এ ড্রপ করুন।

লার্জ ল্যাঙ্গুয়েজ মডেল (LLMs) — গভীর শিক্ষা, নিউরাল নেটওয়ার্ক, জেনারেটিভ এআই

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

1. একটি বড় ভাষার মডেল আসলে কি?

আপনার ফোনে স্বয়ংসম্পূর্ণ কল্পনা করুন। আপনি টাইপ করুন "আমি পেলে আপনাকে কল করব" এবং এটি "বাড়ি" প্রস্তাব করে। এটি একটি ক্ষুদ্র ভাষা মডেল: এটি প্রচুর পাঠ্য বার্তা দেখেছে এবং শিখেছে কোন শব্দগুলি কোনটি অনুসরণ করে৷ ক বড় ল্যাঙ্গুয়েজ মডেল হল একই আইডিয়া যা লক্ষাধিক ফ্যাক্টর দ্বারা স্কেল করা হয়েছে — আপনার টেক্সটে নয় বরং পাবলিক ইন্টারনেট, বই, কোড এবং ডকুমেন্টেশনের একটি বড় অংশে প্রশিক্ষিত।

শব্দ "বড়" বাস্তব কাজ করছে। এই মডেলগুলিতে কোটি কোটি অভ্যন্তরীণ সংখ্যা রয়েছে (যাকে বলা হয় পরামিতি) যা প্রশিক্ষণের সময় সুর করা হয়। যখন লোকেরা একটি মডেলকে "7B" বা "70B" বলে, তখন তার মানে 7 বিলিয়ন বা 70 বিলিয়ন প্যারামিটার৷ আরো পরামিতি সাধারণত আরো ক্ষমতা মানে - এবং মেমরি এবং গণনার জন্য একটি বড় ক্ষুধা।

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

2. তারা আসলে কিভাবে কাজ করে

ফণা অধীনে পাঁচটি ধারণা আছে. সেগুলি অনুসরণ করার জন্য আপনার গণিতের প্রয়োজন নেই — প্রতিটির একটি দৈনন্দিন সাদৃশ্য রয়েছে।

2.1 টোকেন - পাঠ্যকে টুকরো টুকরো করে কাটা

মডেলরা পুরো শব্দ পড়ে না। তারা টেক্সট ভাঙ্গা টোকেন: অক্ষরের সাধারণ অংশ। "Kubernetes" হয়ে যেতে পারে Kub + ernetes; "চলমান" হতে পারে run + ning. মোটামুটি, 1 টোকেন ≈ 0.75 ইংরেজি শব্দ, তাই 1,000 টোকেন প্রায় 750 শব্দ। এটি বাণিজ্যিকভাবে গুরুত্বপূর্ণ: টোকেন প্রতি হোস্ট করা APIs বিল এবং একটি মডেল প্রসঙ্গ উইন্ডো (এটি একবারে কতটা "দেখতে" পারে) টোকেনে পরিমাপ করা হয়।

2.2 এম্বেডিং - শব্দকে অর্থের স্থানাঙ্কে পরিণত করা

প্রতিটি টোকেন সংখ্যার একটি দীর্ঘ তালিকায় রূপান্তরিত হয় — একটি এমবেডিং - এটি স্থানের একটি বিন্দু হিসাবে এর অর্থ উপস্থাপন করে। একইভাবে ব্যবহৃত শব্দগুলি একে অপরের কাছাকাছি শেষ হয়। "রাজা" এবং "রানী" একসাথে বসে; "রাজা" এবং "কলা" অনেক দূরে বসে। এইভাবে একটি মেশিন যা শুধুমাত্র পাটিগণিত করে তা হেরফের করতে পারে অর্থ: অর্থকে জ্যামিতিতে পরিণত করা হয়েছে।

2.3 ট্রান্সফরমার এবং "মনোযোগ" — 2017 সালের অগ্রগতি

প্রতিটি আধুনিক এলএলএম এর পিছনে স্থাপত্য ট্রান্সফরমার. এর মূল কৌশল বলা হয় মনোযোগ: একটি শব্দ প্রক্রিয়াকরণ করার সময়, মডেলটি বাক্যটির প্রতিটি অন্য শব্দের দিকে ফিরে তাকায় এবং সিদ্ধান্ত নেয় কোনটি প্রাসঙ্গিক। ইন "ট্রফিটি স্যুটকেসে ফিট হয়নি কারণ এটা খুব বড় ছিল," মনোযোগ যা মডেলটিকে কাজ করতে দেয় যে "এটি" ট্রফিকে বোঝায়, স্যুটকেস নয়৷ মনোযোগ দেওয়া হল কেন এই মডেলগুলি প্রসঙ্গ, সূক্ষ্মতা এবং দীর্ঘ-পরিসরের রেফারেন্সগুলি এত ভালভাবে পরিচালনা করে — এবং কেন তাদের এত গণনা করা দরকার, কারণ প্রতিটি শব্দ অন্য প্রতিটি শব্দের সাথে জড়িত৷

2.4 প্রশিক্ষণ - তিনটি পর্যায়

  1. প্রাক-প্রশিক্ষণ: মডেলটি লুকানো শেষ শব্দ সহ কোটি কোটি বাক্য দেখানো হয়েছে এবং এটি অনুমান করতে বলা হয়েছে। এটি ভুল করুন, পরামিতিগুলিকে নাজ করুন, পুনরাবৃত্তি করুন — ট্রিলিয়ন বার। এখানেই এটি ব্যাকরণ, তথ্য, যুক্তির ধরণ এবং কোড শোষণ করে। এটি একটি ব্যয়বহুল অংশও, যার খরচ GPU সময়ে লক্ষ লক্ষ পাউন্ড।
  2. ফাইন-টিউনিং: তারপরে কাঁচা মডেলটিকে সহায়ক প্রশ্ন-উত্তর আচরণের কিউরেটেড উদাহরণগুলিতে প্রশিক্ষণ দেওয়া হয়, তাই এটি স্বয়ংসম্পূর্ণ না হয়ে একজন সহকারীর মতো কাজ করে।
  3. প্রান্তিককরণ (RLHF): অবশেষে, মানুষ মডেলের উত্তরগুলিকে র‌্যাঙ্ক করে এবং সেই প্রতিক্রিয়াটিকে আরও সহায়ক, সৎ এবং নিরাপদ করতে ব্যবহার করা হয়৷ এই কারণেই একটি চ্যাট মডেল ক্ষতিকারক অনুরোধ প্রত্যাখ্যান করে এবং একটি সামঞ্জস্যপূর্ণ সুর গ্রহণ করে।

2.5 অনুমান - এটি আপনাকে কীভাবে উত্তর দেয়

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

ম্যানেজারের টেকওয়ে। প্রশিক্ষণ একবার মডেল তৈরি করে (অন্য কেউ সাধারণত এর জন্য অর্থ প্রদান করে)। অনুমান আপনি যখন এটি চালান তখন এটি আপনার মালিকানাধীন পুনরাবৃত্ত খরচ: এটি কতজন লোক এটি ব্যবহার করে এবং উত্তরগুলি কতক্ষণ থাকে তার সাথে স্কেল করে। সর্বাধিক "আমাদের AI খরচ কত হবে?" প্রশ্ন সত্যিই অনুমান প্রশ্ন.

3. এলএলএম কি ভাল এবং খারাপ

টুলের প্রান্তগুলি জানা ব্যয়বহুল ভুলগুলি প্রতিরোধ করে।

প্রকৃতপক্ষে ভাল সাথে সতর্ক থাকুন
খসড়া, পুনর্লিখন এবং টেক্সট সংক্ষিপ্তকরণহ্যালুসিনেশন — প্রণিধানযোগ্য কিন্তু মিথ্যা তথ্য, উদ্ধৃতি, বা API উদ্ভাবন
ধারণাগুলি ব্যাখ্যা করা এবং প্রায়শই জিজ্ঞাসিত প্রশ্নগুলির উত্তর দেওয়াজ্ঞান কাটা বন্ধ - এটি প্রশিক্ষণের তারিখের পরে ঘটনাগুলি জানে না
কোড লেখা এবং পর্যালোচনাসঠিক পাটিগণিত এবং গণনা (পরিবর্তে একটি টুল/ক্যালকুলেটর ব্যবহার করুন)
শ্রেণীবিন্যাস, নিষ্কাশন এবং পুনরায় ফর্ম্যাটিং তথ্যযেকোন কিছু যেখানে একটি আত্মবিশ্বাসী ভুল উত্তর পর্যালোচনা ছাড়াই বিপজ্জনক

এই অধিকাংশ জন্য ফিক্স হয় RAG (পুনরুদ্ধার-অগমেন্টেড জেনারেশন): মডেলের মেমরিকে বিশ্বাস করার পরিবর্তে, আপনি আপনার নিজস্ব সিস্টেম থেকে প্রাসঙ্গিক নথি আনেন এবং সেগুলিকে প্রম্পটে আটকান, তাই মডেলটি উত্তর দেয় আপনার তথ্য থেকে. এইভাবে আপনি মডেল তৈরি না করে আপনার অভ্যন্তরীণ উইকিতে একটি চ্যাটবট তৈরি করেন।

4. শব্দভান্ডার, ডিকোড করা

মেয়াদ সরল ইংরেজিতে এর মানে কি
প্যারামিটার (7B/70B)টিউন করা অভ্যন্তরীণ সংখ্যা। আরো = স্মার্ট কিন্তু ভারী।
প্রসঙ্গ উইন্ডোওয়ার্কিং মেমরিতে একবারে কতটা টেক্সট রাখা যায় (টোকেনে)।
অনুমানএকটি উত্তর পেতে মডেল চালানো হচ্ছে — আপনার পুনরাবৃত্ত গণনা খরচ।
কোয়ান্টাইজেশনমডেলটিকে সংকুচিত করা (যেমন 4-বিট পর্যন্ত) যাতে এটি একটি ছোট মানের ট্রেড-অফ সহ ছোট GPU-তে ফিট করে।
ফাইন-টিউনিংবিশেষায়িত আচরণের জন্য আপনার নিজের উদাহরণের উপর আরও প্রশিক্ষণ।
RAGক্যোয়ারী করার সময় মডেলটিকে আপনার নথিগুলি খাওয়ান যাতে এটি তথ্য থেকে উত্তর দেয়, মেমরি নয়।
ভিআরএএমGPU মেমরি। একক সবচেয়ে বড় সীমাবদ্ধতা যা আপনি চালাতে পারেন।

5. কেন আপনার নিজের এলএলএম চালাবেন?

হোস্ট করা এপিআই (ওপেনএআই, অ্যানথ্রপিক এবং অন্যান্য) হল শুরু করার দ্রুততম উপায় এবং চমৎকার। কিন্তু চারটি কারণ রয়েছে যে প্রতিষ্ঠানগুলো একটি ওপেন-ওয়েট মডেল যেমন লামা, মিস্ট্রাল, কুয়েন বা জেমাকে স্ব-হোস্ট করতে বেছে নেয়:

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

বাণিজ্য বন্ধ যে আপনি এখন হার্ডওয়্যার, স্কেলিং এবং নির্ভরযোগ্যতার মালিক — কুবারনেটেস ঠিক এই বিষয়েই ভালো।

6. হার্ডওয়্যার বাস্তবতা (আপনি স্থাপন করার আগে এটি পড়ুন)

একটি LLM-এর ওজন অবশ্যই GPU মেমরিতে (VRAM) ফিট হতে হবে। একটি রুক্ষ নিয়ম:

মডেলের আকার সম্পূর্ণ নির্ভুলতা (FP16) কোয়ান্টাইজড (4-বিট)
7–8B (যেমন মিস্ট্রাল 7B, লামা 3 8B)~16 জিবি ভিআরএএম~5–6 GB VRAM
13-14B~28 GB VRAM~10 GB VRAM
70B~140 জিবি (মাল্টি-জিপিইউ)~40 GB VRAM

দুটি পরিবেশনকারী ইঞ্জিন বাস্তব স্থাপনার উপর আধিপত্য বিস্তার করে:

  • ওল্লামা র‌্যাম্পে সবচেয়ে সহজ। বিকাশ, অভ্যন্তরীণ সরঞ্জাম এবং CPU বা একক-GPU নোডের জন্য দুর্দান্ত। একটি কমান্ডের সাহায্যে কোয়ান্টাইজড মডেল টানে।
  • ভিএলএলএম - উত্পাদনের কাজের ঘোড়া। উচ্চ-থ্রুপুট, ব্যাচ অনেক অনুরোধ, এবং একটি প্রকাশ OpenAI- সামঞ্জস্যপূর্ণ API তাই আপনার বিদ্যমান কোড একটি এক-লাইন URL পরিবর্তনের সাথে কাজ করে। (হাগিং ফেস টিজিআই একটি ঘনিষ্ঠ বিকল্প।)

7. Kubernetes-এ আপনার নিজস্ব LLM স্থাপন করা

নীচের সবকিছু অন্তত একটি GPU নোড সহ একটি ক্লাস্টার অনুমান করে এবং NVIDIA ডিভাইস প্লাগইন ইনস্টল করা হয়েছে, যা GPU গুলিকে নির্ধারিত সম্পদ হিসাবে প্রকাশ করে nvidia.com/gpu. আমরা এটি টুকরো টুকরো করে গড়ে তুলব।

7.1 একটি নামস্থান এবং মডেল ওজন সঞ্চয় করার একটি জায়গা৷

মডেল ফাইলগুলি বড় (গিগাবাইট) এবং ডাউনলোড করার জন্য ধীর, তাই আমরা সেগুলিকে a এ ক্যাশে করি ক্রমাগত ভলিউম দাবি প্রতিটি পড পুনরায় চালু করার পরিবর্তে পুনরায় টানা।

apiVersion: v1
kind: Namespace
metadata:
  name: llm
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: model-cache
  namespace: llm
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 100Gi          # weights are big; size generously
  # storageClassName: fast-ssd   # use an SSD class if your cluster offers one

7.2 বিকল্প A — ওল্লামা (সহজ শুরু)

ওল্লামা প্রথম স্থাপনা বা একটি অভ্যন্তরীণ সরঞ্জামের জন্য আদর্শ। এটি একটি GPU দিয়ে এটি চালায়; মুছে দিন nvidia.com/gpu শুধুমাত্র একটি বিফি নোডে CPU চালানোর সীমা।

apiVersion: apps/v1
kind: Deployment
metadata:
  name: ollama
  namespace: llm
  labels:
    app: ollama
spec:
  replicas: 1
  selector:
    matchLabels:
      app: ollama
  template:
    metadata:
      labels:
        app: ollama
    spec:
      containers:
        - name: ollama
          image: ollama/ollama:latest
          ports:
            - containerPort: 11434
          resources:
            requests:
              cpu: "2"
              memory: 8Gi
            limits:
              nvidia.com/gpu: 1        # remove this line for CPU-only
              memory: 16Gi
          volumeMounts:
            - name: models
              mountPath: /root/.ollama
          readinessProbe:
            httpGet:
              path: /
              port: 11434
            initialDelaySeconds: 10
            periodSeconds: 10
      volumes:
        - name: models
          persistentVolumeClaim:
            claimName: model-cache
---
apiVersion: v1
kind: Service
metadata:
  name: ollama
  namespace: llm
spec:
  selector:
    app: ollama
  ports:
    - port: 80
      targetPort: 11434

একবার পড চলমান হলে, ক্যাশে একটি মডেল টানুন এবং এটির সাথে চ্যাট করুন:

# pull a quantized model into the PVC (one-off)
kubectl -n llm exec deploy/ollama -- ollama pull llama3

# ask it something from inside the cluster
kubectl -n llm exec deploy/ollama -- \
  ollama run llama3 "Explain Kubernetes in one sentence."

7.3 বিকল্প B — vLLM (উৎপাদন থ্রুপুট, OpenAI- সামঞ্জস্যপূর্ণ)

বাস্তব ট্র্যাফিকের জন্য, vLLM অনেক সমসাময়িক অনুরোধগুলি দক্ষতার সাথে পরিবেশন করে এবং OpenAI API উপভাষায় কথা বলে। গেটেড মডেলের (যেমন লামা) একটি আলিঙ্গন মুখ টোকেন প্রয়োজন, একটি গোপন হিসাবে সংরক্ষণ করা হয়।

apiVersion: v1
kind: Secret
metadata:
  name: hf-token
  namespace: llm
type: Opaque
stringData:
  token: "hf_xxxxxxxxxxxxxxxxxxxxxxxx"   # your Hugging Face access token
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: vllm-mistral
  namespace: llm
  labels:
    app: vllm-mistral
spec:
  replicas: 1
  selector:
    matchLabels:
      app: vllm-mistral
  template:
    metadata:
      labels:
        app: vllm-mistral
    spec:
      containers:
        - name: vllm
          image: vllm/vllm-openai:latest
          args:
            - "--model"
            - "mistralai/Mistral-7B-Instruct-v0.3"
            - "--max-model-len"
            - "8192"
            - "--gpu-memory-utilization"
            - "0.90"
          ports:
            - containerPort: 8000
          env:
            - name: HUGGING_FACE_HUB_TOKEN
              valueFrom:
                secretKeyRef:
                  name: hf-token
                  key: token
          resources:
            limits:
              nvidia.com/gpu: 1
          volumeMounts:
            - name: cache
              mountPath: /root/.cache/huggingface
          readinessProbe:
            httpGet:
              path: /health
              port: 8000
            initialDelaySeconds: 60      # first start downloads weights
            periodSeconds: 15
            failureThreshold: 40
      volumes:
        - name: cache
          persistentVolumeClaim:
            claimName: model-cache
---
apiVersion: v1
kind: Service
metadata:
  name: vllm-mistral
  namespace: llm
spec:
  selector:
    app: vllm-mistral
  ports:
    - port: 80
      targetPort: 8000

যেহেতু vLLM ওপেনএআই-সামঞ্জস্যপূর্ণ, অ্যাপ্লিকেশন কোডের শুধুমাত্র ইন-ক্লাস্টার ইউআরএল প্রয়োজন — কোনো SDK পরিবর্তন নেই:

curl http://vllm-mistral.llm.svc.cluster.local/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "mistralai/Mistral-7B-Instruct-v0.3",
    "messages": [{"role": "user", "content": "Summarise our refund policy."}],
    "temperature": 0.2
  }'

7.4 একটি প্রবেশের সাথে এটি প্রকাশ করা

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: llm-api
  namespace: llm
  annotations:
    nginx.ingress.kubernetes.io/proxy-read-timeout: "300"   # long generations
spec:
  ingressClassName: nginx
  rules:
    - host: llm.internal.example.com
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: vllm-mistral
                port:
                  number: 80

7.5 স্কেলিং — এবং কেন এটি GPU-এর সাথে আলাদা

আপনি অটোস্কেল করতে পারেন, কিন্তু মনে রাখবেন প্রতিটি প্রতিলিপির নিজস্ব সম্পূর্ণ GPU প্রয়োজন - আপনি সাধারণ ক্ষেত্রে একটিকে ভগ্নাংশে ভাগ করতে পারবেন না এবং আপনার শারীরিকভাবে থাকা GPU গুলির বাইরে কোনও পয়েন্ট স্কেলিং নেই৷ সিপিইউ-এর পরিবর্তে কিউ বা রিকোয়েস্ট-রেট সিগন্যালে স্কেল করুন (কেডা এখানে চমৎকার)।

apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
  name: vllm-mistral
  namespace: llm
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: vllm-mistral
  minReplicas: 1
  maxReplicas: 4          # never exceed the number of GPUs in the cluster
  metrics:
    - type: Resource
      resource:
        name: cpu
        target:
          type: Utilization
          averageUtilization: 70
  # For real LLM scaling, prefer KEDA on a queue depth or
  # requests-per-second metric exported by vLLM, not CPU.

8. একটি বাস্তবসম্মত রোলআউট চেকলিস্ট

  1. একটি হোস্টেড API-এ প্রোটোটাইপ GPU কেনার আগে ব্যবহারের ক্ষেত্রে যাচাই করতে।
  2. একটি ওপেন-ওয়েট মডেল বাছুন যেটি আপনার হার্ডওয়্যারের সাথে মানানসই (একটি 7-8B মডেল দিয়ে শুরু করুন, কোয়ান্টাইজড)।
  3. ওল্লামা দিয়ে শুরু করুন অভ্যন্তরীণ পাইলটের জন্য; থেকে স্নাতক ভিএলএলএম যখন আপনার থ্রুপুট প্রয়োজন।
  4. RAG যোগ করুন হ্যালুসিনেশন কাটাতে এবং উত্তরগুলি বর্তমান রাখতে আপনার নিজের নথির উপরে।
  5. একজন মানুষকে লুপে রাখুন যেখানেই ভুল উত্তর প্রকৃত মূল্য বহন করে।
  6. অনুমান খরচ এবং লেটেন্সি পরিমাপ অনুরোধ অনুযায়ী - এটি আপনার সত্যিকারের ইউনিট অর্থনীতি।
নিচের লাইন। একটি LLM হল পরের-শব্দের ভবিষ্যদ্বাণী এমন একটি স্কেলে যা সত্যিকার অর্থে উপযোগী হয়ে ওঠে। এটিকে একটি উজ্জ্বল কিন্তু অবিশ্বস্ত সহকারী হিসাবে বিবেচনা করুন: খসড়া তৈরি, সংক্ষিপ্তকরণ, শ্রেণিবদ্ধকরণ এবং কোডিংয়ের জন্য এটির উপর নির্ভর করুন; যা কিছু গুরুত্বপূর্ণ তা যাচাই করুন; RAG দিয়ে আপনার নিজের ডেটাতে এটি গ্রাউন্ড করুন; এবং যখন গোপনীয়তা, খরচ বা নিয়ন্ত্রণের প্রয়োজন হয়, তখন ওল্লামা শুরু করতে এবং ভিএলএলএম স্কেল করার জন্য কুবারনেটসে আপনার নিজস্ব চালান।