মূল কনটেন্টে যান
এআই টিউটোরিয়াল

OpenHiggsfield AI দিয়ে একটি ওপেন-সোর্স AI ছবি ও ভিডিও স্টুডিও তৈরি ও চালান

OpenHiggsfield AI ইনস্টল করা, আপনার প্ল্যাটফর্ম কী সংযুক্ত করা, মিডিয়া তৈরি, ফলাফল পরিচালনা এবং ক্যাটালগ-নির্ভর Next.js আর্কিটেকচার বোঝার পদ্ধতি জানুন।

OpenHiggsfield AI দিয়ে ওপেন-সোর্স AI ছবি ও ভিডিও স্টুডিও তৈরি ও চালান

OpenHiggsfield AI কী?

OpenHiggsfield AI হলো Higgsfield AI-এর একটি বিনামূল্যের, ওপেন-সোর্স বিকল্প। এটি ৪০টি মডেল ব্যবহার করে ছবি ও ভিডিও তৈরির জন্য একটি একীভূত ব্রাউজার স্টুডিও সরবরাহ করে: ১২টি ইমেজ মডেল এবং ২৮টি ভিডিও মডেল। আপনি নিজের জেনারেশন প্ল্যাটফর্ম কী ব্যবহার করেন এবং হোস্টেড স্টুডিও খুলতে পারেন অথবা অ্যাপ্লিকেশনটি নিজে চালাতে পারেন।

প্রকল্পটি Next.js 16 App Router, React 19, Zustand, সাধারণ CSS এবং pnpm দিয়ে তৈরি। এর ক্যাটালগে Nano Banana, Soul, Gemini, Kling, Veo, Wan, Flux, GPT Image, Ideogram, Recraft, LTX, MiniMax, PixVerse, Grok এবং Qwen-এর মতো পরিবারের মডেল রয়েছে।

স্টুডিওটি বিনামূল্যের এবং ওপেন সোর্স, তবে জেনারেশন অনুরোধে আপনার নিজের প্ল্যাটফর্ম কী ব্যবহার হয়।

প্রধান বৈশিষ্ট্য

ছবি ও ভিডিওর জন্য একটি কম্পোজার

একটি প্রম্পট বার থেকেই ছবি ও ভিডিও তৈরি করা যায়। নির্বাচিত মডেল আউটপুটের ধরন নির্ধারণ করে। macOS-এ অনুরোধ জমা দিতে Cmd + Enter এবং অন্যান্য প্ল্যাটফর্মে Ctrl + Enter চাপুন।

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

মডেল-সচেতন মিডিয়া ইনপুট

নির্বাচিত মডেলের ওপর নির্ভর করে আপনি শুরু ফ্রেম, শেষ ফ্রেম, রেফারেন্স মিডিয়া, ভিডিও বা অডিওর মতো সমর্থিত ইনপুট সংযুক্ত করতে পারেন। প্রতিটি ভূমিকা ওই মডেলে নির্ধারিত সীমা অনুসরণ করে।

আপলোড করা ফাইল সরাসরি Vercel Blob-এ পাঠানো হয় এবং জেনারেশন অনুরোধে ব্যবহারযোগ্য পাবলিক URL-এ রূপান্তর করা হয়। অ্যাসেট পিকার আপলোড লাইব্রেরি বা স্থানীয় ইতিহাসে সম্পন্ন রান থেকেও ফাইল পুনরায় ব্যবহার করতে পারে।

ব্যাচ জেনারেশন ও লাইভ অগ্রগতি

স্টুডিওটি প্রতি সাবমিশনে সর্বোচ্চ চারটি ফলাফল সমর্থন করে। যেসব মডেলে নেটিভ কাউন্ট সেটিং আছে, সেগুলো সেই অপশন ব্যবহার করে; অন্যান্য মডেলের ক্ষেত্রে প্রতিটি ফলাফলের জন্য একটি করে অনুরোধ পাঠানো হয়।

সাবমিশনের পরই ফলাফলের প্লেসহোল্ডার দেখা যায়। OpenHiggsfield AI প্রতি চার সেকেন্ডে অনুরোধের অবস্থা পরীক্ষা করে, সময়সীমা দশ মিনিট, এবং প্রতিটি সম্পন্ন ফলাফল পাওয়া মাত্র প্রদর্শন করে।

গ্যালারি ও ফলাফল ব্যবস্থাপনা

  • চারটি গ্যালারি স্কোপ: Image, Video, Assets এবং Favorites।
  • ম্যাসনরি লেআউট: ফলাফলগুলো তাদের প্রকৃত অ্যাসপেক্ট রেশিওতে, নতুনগুলো আগে, প্রদর্শিত হয়।
  • টাইল অ্যাকশন: পৃথক ফলাফল পুনরায় ব্যবহার, পছন্দের হিসেবে চিহ্নিত, মুছে ফেলা এবং নির্বাচন করা যায়।
  • বিস্তারিত ভিউয়ার: প্রম্পট, মডেল, কার্যকর সেটিংস, টাইমস্ট্যাম্প এবং পূর্ণ আকারের মিডিয়া দেখা যায়।
  • বাল্ক অপারেশন: নির্বাচিত আইটেম ডাউনলোড, পছন্দের হিসেবে চিহ্নিত, পছন্দের তালিকা থেকে সরানো বা মুছে ফেলা যায়।
  • আনডু: মুছে ফেলা ফলাফল ছয় সেকেন্ডের মধ্যে পুনরুদ্ধার করা যায়।
  • ব্যর্থতা পুনরুদ্ধার: ব্যর্থ, বাতিল বা NSFW রানগুলো কারণ সংরক্ষণ করে এবং পুনরায় চেষ্টা করার ব্যবস্থা দেয়।

Reuse নির্বাচন করলে মূল মডেল, প্রম্পট এবং সেটিংস পুনরুদ্ধার হয়, তাই শুধু প্রম্পটের লেখা কপি করার বদলে পুনরাবৃত্তিমূলক কাজের জন্য এটি কার্যকর।

স্থানীয় ইতিহাস

বর্তমান ব্রাউজারে IndexedDB-তে ইতিহাস সংরক্ষিত থাকে। এতে সর্বোচ্চ ৬০টি রেকর্ড রাখা হয়, তবে Favorites এই সীমায় পুরোনো হয়ে মুছে যায় না। ফলাফলের URL জেনারেশন প্ল্যাটফর্মের হওয়ায় CDN-এর মিডিয়ার মেয়াদ শেষ হয়ে গেলেও পুরোনো রেকর্ড ইতিহাসে থাকতে পারে।

বিকল্প ১: হোস্টেড স্টুডিও ব্যবহার করুন

শুরু করার দ্রুততম উপায় হলো openhiggsfield.ai খোলা। এই সংস্করণটি সম্পূর্ণ ব্রাউজারে চলে এবং Node.js ইনস্টলেশন বা স্থানীয় সেটআপের প্রয়োজন হয় না।

  1. হোস্টেড স্টুডিও খুলুন।
  2. Add key নির্বাচন করুন।
  3. id:secret ফরম্যাটে আপনার প্ল্যাটফর্ম কী পেস্ট করুন।
  4. একটি ছবি বা ভিডিও মডেল নির্বাচন করুন।
  5. একটি প্রম্পট লিখে উপলভ্য সেটিংস কনফিগার করুন।
  6. অনুরোধ জমা দিন এবং ফলাফলের টাইলগুলো সম্পন্ন হওয়া পর্যন্ত অপেক্ষা করুন।

কীটি একটি সার্ভার অ্যাকশনের মাধ্যমে ব্যবহৃত হয় এবং httpOnly কুকিতে সংরক্ষিত থাকে। ব্রাউজার সরাসরি জেনারেশন API-তে কল করে না। কোনো কী না থাকলে স্টুডিও নীরবে ব্যর্থ না হয়ে কী মোডাল খুলে দেয়।

বিকল্প ২: OpenHiggsfield AI স্থানীয়ভাবে ইনস্টল করুন

পূর্বশর্ত

আপনার এমন একটি ডেভেলপমেন্ট পরিবেশ প্রয়োজন যেখানে pnpm দিয়ে প্রকল্পটি চালানো যায়। জেনারেশনের জন্য একটি সামঞ্জস্যপূর্ণ প্ল্যাটফর্ম কীও প্রয়োজন। আপলোড ওয়ার্কফ্লোর জন্য Vercel Blob read-write টোকেন আবশ্যক।

নির্ভরতা ইনস্টল ও ডেভেলপমেন্ট চালু করুন

রিপোজিটরি ক্লোন বা ডাউনলোড করে টার্মিনালে এর ডিরেক্টরি খুলুন এবং চালান:

pnpm install
pnpm dev

ডেভেলপমেন্ট সার্ভারটি http://localhost:3000-এ চালু হয়। ঠিকানাটি খুলে Add key চাপুন এবং id:secret হিসেবে কী লিখুন।

এনভায়রনমেন্ট ভেরিয়েবল কনফিগার করুন

অ্যাপ্লিকেশন যে পরিবেশে চলে সেখানে জেনারেশন API-এর origin এবং Vercel Blob টোকেন সেট করুন:

HF_API_BASE_URL=
OPEN_HIGGSFIELD_READ_WRITE_TOKEN=
  • HF_API_BASE_URL জেনারেশন API-এর শুধু-সার্ভার origin নির্ধারণ করে।
  • OPEN_HIGGSFIELD_READ_WRITE_TOKEN Vercel Blob আপলোডের জন্য read-write অ্যাক্সেস দেয়।

ক্লায়েন্ট-সাইড কোডের মাধ্যমে জেনারেশন API origin বা ব্যক্তিগত শংসাপত্র প্রকাশ করবেন না। প্রকল্পটি এমনভাবে তৈরি যে সার্ভার অ্যাকশনই জেনারেশন API-এর একমাত্র কলার।

প্রোডাকশন কমান্ড

নিচের কমান্ড দিয়ে প্রোডাকশন সংস্করণ বিল্ড ও চালান:

pnpm build
pnpm start

রিপোজিটরিতে একটি ব্র্যান্ডিং কমান্ডও রয়েছে, যা public/-এর আইকন এবং Open Graph কার্ড পুনরায় তৈরি করে:

pnpm brand

আপনার প্রথম ফলাফল তৈরি করুন

  1. টপ-বারের কী নির্দেশকটি একটি কী উপলভ্য আছে কি না নিশ্চিত করুন।
  2. সার্চ করা যায় এমন মডেল পিকার খুলুন।
  3. একটি ছবি বা ভিডিও মডেল নির্বাচন করুন।
  4. শেয়ার্ড কম্পোজারে একটি প্রম্পট লিখুন।
  5. ওই মডেলের জন্য প্রদর্শিত সেটিংস পর্যালোচনা করুন।
  6. সমর্থিত হলে, রেফারেন্স মিডিয়া বা অন্য কোনো ভূমিকা-নির্দিষ্ট ইনপুট সংযুক্ত করুন।
  7. প্রযোজ্য ক্ষেত্রে সর্বোচ্চ চারটির ব্যাচ সাইজ বেছে নিন।
  8. Cmd + Enter বা Ctrl + Enter চাপুন।

একটি সাধারণ ছবির অনুরোধের জন্য আপনি লিখতে পারেন:

সূর্যোদয়ের সময় কুয়াশাচ্ছন্ন বনের ওপরে একটি কাচের অবজারভেটরির সিনেমাটিক আলোকচিত্র

একটি ভিডিও মডেলের জন্য, গতিনির্ভর প্রম্পট হতে পারে:

সকালের কুয়াশা গাছগুলোর মধ্যে দিয়ে চলার সময় ক্যামেরাটি ধীরে ধীরে একটি কাচের অবজারভেটরির দিকে এগিয়ে যায়

মডেলভেদে উপলভ্য অপশন পরিবর্তিত হয়। প্রতিটি মডেল একই ইনপুট সমর্থন করে ধরে না নিয়ে স্টুডিওতে প্রদর্শিত সেটিংস ও মিডিয়ার ভূমিকা ব্যবহার করুন।

অ্যাসেট ও আগের রান পুনরায় ব্যবহার

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

  • আপলোড: স্টুডিওর মাধ্যমে আগে আপলোড করা ফাইল।
  • ইতিহাস: সম্পন্ন জেনারেশন রান থেকে পাওয়া মিডিয়া।

নির্বাচিত ভূমিকার জন্য প্রয়োজনীয় ধরন অনুযায়ী পিকার আইটেমগুলো ফিল্টার করে। নির্বাচিত মডেল সেই ইনপুট সমর্থন করে বলে ঘোষণা করলে, সম্পন্ন ছবিকে স্টার্ট ফ্রেম বা রেফারেন্স হিসেবে ব্যবহার করা সম্ভব হয়।

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

গ্যালারিতে দক্ষতার সঙ্গে কাজ

কোনো নির্দিষ্ট মিডিয়া ধরনের ওপর মনোযোগ দিতে Image এবং Video স্কোপ ব্যবহার করুন, প্রতিটি সম্পন্ন রান দেখতে Assets ব্যবহার করুন, আর গুরুত্বপূর্ণ আউটপুট সহজে পাওয়ার জন্য Favorites ব্যবহার করুন। ট্যাব রেল তীর-কি দিয়ে নেভিগেশন সমর্থন করে।

একাধিক ফলাফল পরিচালনা করতে একটি টাইলের চেকবক্সে ক্লিক করে নির্বাচন মোডে প্রবেশ করুন। Shift-ক্লিক করলে একটি পরিসরজুড়ে নির্বাচন বাড়ে। এরপর আপনি একসঙ্গে ডাউনলোড, ফেভারিট পরিবর্তন বা মুছে ফেলার কাজ করতে পারবেন। নির্বাচন মোড ছাড়তে Esc চাপুন।

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

জেনারেশন আর্কিটেকচার কীভাবে কাজ করে

প্রতিটি জেনারেশন নির্বাচিত মডেল, প্রম্পট, মিডিয়া ও সেটিংস ধারণকারী একটি একক অবজেক্ট হিসেবে শুরু হয়:

{ model, prompt, media, settings }

ইন্টারফেস এই অবজেক্ট তৈরি করে এবং একটি সার্ভার অ্যাকশনে পাঠায়। ওই অ্যাকশন ক্যাটালগের সঙ্গে মডেল মিলিয়ে দেখে এবং স্টুডিওর মানগুলোকে জেনারেশন API প্রত্যাশিত ফিল্ডে ম্যাপ করে, যেমন image_urls ও aspect_ratio।

সাবমিশন ও স্ট্যাটাসের অনুরোধগুলো নিম্নলিখিত সার্ভার-সাইড প্যাটার্ন অনুসরণ করে:

POST /{model}
GET /requests/{id}/status
Authorization: Key <api_key>

ব্রাউজার কখনো সরাসরি জেনারেশন API-তে যোগাযোগ করে না। আপলোড আলাদাভাবে পরিচালিত হয়: ক্লায়েন্ট /api/blob-এর মাধ্যমে Vercel Blob-এ আপলোড করে, যা নির্দিষ্ট-পরিসরের টোকেন ইস্যু করে। স্থানীয় blob: URL কেবল প্রিভিউয়ের জন্য ব্যবহৃত হয়।

প্রকল্পের বিন্যাস

src/
  app/
    /api/blob
    base.css
  generation/
  openhiggsfield/
  • src/app/-এ পূর্ণ-ভিউপোর্ট স্টুডিও পেজ, Blob টোকেন এন্ডপয়েন্ট এবং ডকুমেন্ট-স্তরের ক্যানভাস স্টাইল রয়েছে।
  • src/generation/-এ জেনারেশন অনুরোধ, সার্ভার অ্যাকশন, API ম্যাপিং, মডেল ক্যাটালগ ও Zustand স্টোর রয়েছে।
  • src/openhiggsfield/-এ কম্পোজার, গ্যালারি, ভিউয়ার, মডেল পিকার, সেটিংস, অ্যাসেট পিকার, নির্বাচন বার এবং স্টুডিও CSS রয়েছে।

উন্নত টিপস

ক্যাটালগকে সত্যের মূল উৎস হিসেবে বিবেচনা করুন

src/generation/catalog/-এর অধীনে মডেলের আচরণ ক্যাটালগ-নির্ভর। একটি ক্যাটালগ এন্ট্রি তার সেটিংস ও মিডিয়ার ভূমিকা ইন্টারফেসে সরবরাহ করে, তাই স্টুডিওকে আলাদা কোনো হার্ডকোড করা নিয়ন্ত্রণ তালিকা বজায় রাখতে হয় না।

জেনারেশন সার্ভিস সমর্থিত কোনো মডেল দিয়ে প্রকল্পটি সম্প্রসারণ করার সময় বিদ্যমান ক্যাটালগ ঘোষণার প্যাটার্ন অনুসরণ করুন। এর অনুমোদিত সেটিংস ও মিডিয়ার ভূমিকা যেন API-কে সঠিকভাবে উপস্থাপন করে তা নিশ্চিত করুন; স্টুডিওর অন্য কোথাও মডেল-নির্দিষ্ট নিয়ন্ত্রণ যোগ করবেন না।

API অ্যাক্সেস সার্ভারে রাখুন

প্রকল্প কাস্টমাইজ করার সময় বিদ্যমান সার্ভার-অ্যাকশন সীমানা বজায় রাখুন। জেনারেশন প্রমাণীকরণে Authorization: Key <api_key> ব্যবহৃত হয়, আর এই কলগুলো ব্রাউজার কোডে সরিয়ে নিলে API যোগাযোগ ও শংসাপত্র সার্ভার-সাইডে রাখার নকশাটি দুর্বল হবে।

Zustand স্টেট মডেল বুঝুন

প্রতি মডেলের জন্য একটি করে স্টোর তৈরি না করে অ্যাপ্লিকেশনটি পাঁচটি ছোট Zustand স্টোর ব্যবহার করে। ছবি ও ভিডিও ওয়ার্কফ্লো প্রম্পট ও মিডিয়া স্টেট ভাগ করে নেয়, সেটিংস মডেল ID অনুযায়ী ইনডেক্স করা থাকে, আর একটি ছোট সক্রিয় স্টোর বর্তমান স্টেট অনুসরণ করে। কাস্টমাইজেশনে এই মডেল-ভিত্তিক সেটিংস কাঠামো বজায় রাখা উচিত।

মেয়াদোত্তীর্ণ মিডিয়া URL-এর জন্য প্রস্তুত থাকুন

IndexedDB ইতিহাস জেনারেশন প্ল্যাটফর্মের CDN-এ হোস্ট করা ফাইলের চেয়ে বেশি সময় টিকে থাকতে পারে। ফেভারিট রেকর্ড ইচ্ছাকৃতভাবে রাখা হয়, কিন্তু এতে তাদের দূরবর্তী মিডিয়া URL সবসময় উপলভ্য থাকবে এমন নিশ্চয়তা নেই। শুধু ব্রাউজার ইতিহাসের ওপর নির্ভর না করে গুরুত্বপূর্ণ আউটপুট ডাউনলোড করুন।

দীর্ঘ পুনরাবৃত্তিমূলক সেশনে ফেভারিট ব্যবহার করুন

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

উপসংহার

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