প্রকল্প সম্পর্কে
zai-proxy হল একটি Go-ভিত্তিক রিভার্স প্রক্সি যা Z.AI Claude API-এর সামনে বসে, যা সাধারণ API অ্যাক্সেসে নেই এমন পর্যবেক্ষণযোগ্যতা এবং নির্ভরযোগ্যতা বৈশিষ্ট্য যোগ করে। এটি দুটি প্রধান উপাদান নিয়ে গঠিত: একটি প্রক্সি পরিষেবা এবং একটি মনিটরিং ড্যাশবোর্ড।
প্রক্সিটি পোর্ট 8080-এ শোনে, অনুরোধগুলি আপস্ট্রিম LLM API-তে ফরোয়ার্ড করে এবং /metrics-এ Prometheus মেট্রিক্স রপ্তানি করে। মূল ক্ষমতাগুলির মধ্যে রয়েছে টোকেন ট্র্যাকিং (API-রিপোর্ট করা ব্যবহার বা tiktoken অনুমান ব্যবহার করে প্রতি অনুরোধে ইনপুট এবং আউটপুট টোকেন গণনা করা), অভিযোজিত রেট লিমিটিং (EWMA সিলিং অনুমানকারীর সাথে আপস্ট্রিম 429 প্রতিক্রিয়া ট্র্যাক করা যা স্বয়ংক্রিয়ভাবে সীমার ঠিক নীচে ধরে রাখে এবং পর্যায়ক্রমে সিলিং বৃদ্ধির জন্য পরীক্ষা করে), এবং বাফারিং ছাড়াই SSE স্ট্রিমিং পাস-থ্রু। এটি DEPLOYMENT_VARIANT লেবেলের মাধ্যমে ব্লু/গ্রিন এবং ক্যানারি ডিপ্লয়মেন্টও সমর্থন করে, যা প্রক্সি সংস্করণ বা মডেল কনফিগারেশন পাশাপাশি তুলনা করার জন্য।
ড্যাশবোর্ডটি একটি Go ব্যাকএন্ড এবং React ফ্রন্টএন্ড নিয়ে গঠিত, যা প্রতি 5 সেকেন্ডে প্রক্সির Prometheus এন্ডপয়েন্ট স্ক্র্যাপ করে, সীমিত ইন-মেমরি রিং-এ দ্বৈত-রেজোলিউশন স্ন্যাপশট বজায় রাখে (24 ঘন্টার জন্য 5-সেকেন্ড রেজোলিউশন, 7 দিনের জন্য 1-মিনিট রেজোলিউশন), এবং SSE-এর মাধ্যমে ব্রাউজারে আপডেট স্ট্রিম করে। এটি অনুরোধ থ্রুপুট, লেটেন্সি পার্সেন্টাইল, টোকেন ব্যবহারের মোট, ত্রুটির হার এবং প্রতি-ভেরিয়েন্ট তুলনা প্যানেল প্রদর্শন করে।
প্রক্সিটি Prometheus মেট্রিক্সের একটি বিস্তৃত সেট প্রকাশ করে যার মধ্যে রয়েছে অনুরোধ গণনা, লেটেন্সি হিস্টোগ্রাম, টোকেন হার, ত্রুটির হার, রেট-লিমিট অপেক্ষার সময়, পুনরায় চেষ্টার প্রচেষ্টা, কর্মী ব্যবহার এবং বিল্ড তথ্য, সবই মডেল এবং ডিপ্লয়মেন্ট ভেরিয়েন্ট দ্বারা লেবেলযুক্ত। কনফিগারেশন পরিবেশ ভেরিয়েবলের মাধ্যমে পরিচালিত হয় যা API কী, টার্গেট URL, রেট লিমিটিং প্যারামিটার, কোটা পোলিং এবং পুনরায় চেষ্টার আচরণ কভার করে।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.