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

AI Writer দিয়ে পণ্যের ছবি থেকে বহুভাষিক ই-কমার্স কনটেন্ট তৈরি করুন

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

AI Writer দিয়ে পণ্যের ছবি থেকে বহুভাষিক ই-কমার্স কনটেন্ট তৈরি

AI Writer কী?

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

অ্যাপ্লিকেশনটি ইংরেজি, তুর্কি, স্প্যানিশ, জার্মান, ফরাসি ও চীনা ভাষা সমর্থন করে। এতে অ্যাকাউন্ট প্রমাণীকরণ, ব্রাউজার-ভিত্তিক সম্পাদনা, অনুবাদ এবং MySQL-নির্ভর ক্রেডিট সিস্টেমও রয়েছে।

AI Writer ছবি স্টুডিও

AI Writer যাচাইকৃত পণ্যের বৈশিষ্ট্যের পরিবর্তে খসড়া তৈরি করে। প্রকাশের আগে প্রতিটি বিবরণ পর্যালোচনা করুন, কারণ ছবি মাপ, কাপড়ের উপাদান বা সার্টিফিকেশনের মতো তথ্য নির্ভরযোগ্যভাবে প্রমাণ করতে পারে না।

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

  • ছবিভিত্তিক লেখা: সর্বসাধারণের জন্য উন্মুক্ত এক থেকে আটটি HTTPS পণ্যের ছবি থেকে লেখা তৈরি করুন।
  • পণ্য পৃষ্ঠা থেকে তথ্য সংগ্রহ: একটি সর্বসাধারণের জন্য উন্মুক্ত পণ্য পৃষ্ঠা থেকে ছবির লিংক সংগ্রহ করতে Puppeteer ব্যবহার করুন।
  • ছয়টি আউটপুট ভাষা: ইংরেজি, তুর্কি, স্প্যানিশ, জার্মান, ফরাসি বা চীনা ভাষায় কনটেন্ট তৈরি করুন।
  • সম্পাদনা ও অনুবাদ: ব্রাউজারে তৈরি খসড়া পরিমার্জন করুন, কপি করুন এবং এক ধাপেই অনুবাদ করুন।
  • অ্যাকাউন্ট ও ক্রেডিট: অ্যাপ্লিকেশনটি bcrypt পাসওয়ার্ড, MySQL সেশন এবং সমান্তরাল অতিরিক্ত খরচ ঠেকানোর ব্যালেন্স ব্যবহার করে।
  • ব্যর্থতার ক্ষেত্রে ফেরত: সমর্থিত জেনারেশন অনুরোধ ব্যর্থ হলে সংরক্ষিত ক্রেডিট ফেরত দেওয়া হয়।
  • পরীক্ষামূলক ভিডিও ইনপুট: একটি ছোট YouTube ভিডিও থেকে সর্বোচ্চ আটটি ফ্রেম বের করে ভিজ্যুয়াল ইনপুট হিসেবে ব্যবহার করুন।

পূর্বশর্ত

ইনস্টলেশনের আগে নিম্নলিখিত বিষয়গুলো প্রস্তুত করুন:

  • Node.js 22.12 বা পরবর্তী সংস্করণ এবং npm।
  • Compose-সহ Docker, অথবা বিদ্যমান MySQL 8 বা তার পরবর্তী সংস্করণের সার্ভারে অ্যাক্সেস।
  • vision-capable Chat Completions মডেলে অ্যাক্সেসসহ একটি OpenAI API key।
  • পণ্য পৃষ্ঠা থেকে ছবি সংগ্রহ করতে চাইলে Puppeteer-এর মাধ্যমে ইনস্টল করা Chrome।
  • পরীক্ষামূলক ভিডিও প্রক্রিয়াকরণ চেষ্টা করতে চাইলে PATH-এ উপলভ্য FFmpeg ও FFprobe।

আপনি যদি শুধু ছবি থেকে বিবরণ তৈরি করতে চান, তাহলে FFmpeg ঐচ্ছিক।

স্বয়ংক্রিয়ভাবে AI Writer ইনস্টল করুন

ইন্টার‌্যাক্টিভ সেটআপ স্ক্রিপ্টটি সবচেয়ে সহজ ইনস্টলেশন পদ্ধতি। রিপোজিটরি ক্লোন করুন, এর ডিরেক্টরিতে প্রবেশ করুন, ইনস্টলার চালান এবং অ্যাপ্লিকেশন শুরু করুন:

git clone https://github.com/csadigital/ai-writer.git
cd ai-writer
npm run setup
npm start

ইনস্টলার অ্যাপ্লিকেশনের নির্ভরতা ও Chrome ডাউনলোড করে, আপনার OpenAI API key না দেখিয়ে ইনপুট নেয়, ডেটাবেস ও সেশন সিক্রেট তৈরি করে এবং MySQL শুরু করে। এটি বিদ্যমান .env মান অক্ষুণ্ণ রাখে এবং একটি স্থানীয় ব্যাকআপ তৈরি করে।

সেটআপের সময় স্থায়ী MySQL কনটেইনার স্বয়ংক্রিয়ভাবে চালু করতে docker নির্বাচন করুন। Docker আগে থেকেই ইনস্টল ও চালু থাকতে হবে। নিজের MySQL সার্ভারে সংযোগ করতে existing নির্বাচন করুন। অ্যাডমিনিস্ট্রেটর ক্রেডেনশিয়াল থাকলে ইনস্টলার একটি নির্দিষ্ট ডেটাবেস ও অ্যাপ্লিকেশন ব্যবহারকারী তৈরি করতে পারে; এটি অ্যাডমিনিস্ট্রেটরের পাসওয়ার্ড সংরক্ষণ করে না।

শুরু হওয়ার পর ব্রাউজারে http://localhost:3000 খুলুন।

Docker ডেটাবেস বন্ধ করুন

স্থায়ী ডেটা না মুছে স্থানীয় MySQL কনটেইনার বন্ধ করতে চালান:

docker compose -f compose.mysql.yml stop

.env-এ ডেটাবেস ক্রেডেনশিয়াল পরিবর্তন করলে আগে থেকে ইনিশিয়ালাইজ করা Docker ভলিউম রিসেট হয় না। মূল ক্রেডেনশিয়াল সংরক্ষণ করুন অথবা পরিকল্পিতভাবে ডেটাবেস মাইগ্রেশন সম্পন্ন করুন।

ম্যানুয়ালি AI Writer ইনস্টল করুন

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

git clone https://github.com/csadigital/ai-writer.git
cd ai-writer
npm ci
cp .env.example .env
node -e "console.log(require('node:crypto').randomBytes(32).toString('hex'))"

তৈরি হওয়া মানটি .env-এর SESSION_SECRET-এ কপি করুন। সিক্রেটটিতে অন্তত 32টি অক্ষর থাকতে হবে। এরপর আপনার OpenAI API key এবং MySQL সংযোগের সেটিংস যোগ করুন। নতুন ক্রেডেনশিয়াল ব্যবহার করুন এবং কখনো .env ফাইল কমিট করবেন না।

একজন MySQL অ্যাডমিনিস্ট্রেটরের সাহায্যে ডেটাবেস ও অ্যাপ্লিকেশন ব্যবহারকারী তৈরি করুন, ওই ব্যবহারকারীকে ডেটাবেসে অ্যাক্সেস দিন এবং schema.sql দিয়ে টেবিলগুলো ইনিশিয়ালাইজ করুন:

mysql -h 127.0.0.1 -u ai_writer -p ai_writer < schema.sql
npm start

http://localhost:3000 খুলে একটি অ্যাকাউন্ট তৈরি করুন এবং সাইন ইন করুন।

পরিবেশ কনফিগার করুন

অ্যাপ্লিকেশনটি পরিবেশ ভেরিয়েবল থেকে সেটিংস পড়ে। অন্তত OpenAI ক্রেডেনশিয়াল, সেশন সিক্রেট এবং ডেটাবেস সংযোগ কনফিগার করুন।

  • OPENAI_API_KEY: প্রয়োজনীয় OpenAI API ক্রেডেনশিয়াল।
  • OPENAI_MODEL: Vision-capable Chat Completions মডেল। ডিফল্ট হলো gpt-4.1-mini।
  • SESSION_SECRET: অন্তত 32টি অক্ষরসমৃদ্ধ প্রয়োজনীয় র‍্যান্ডম সিক্রেট।
  • DB_HOST এবং DB_PORT: MySQL ঠিকানা। ডিফল্ট হলো 127.0.0.1 এবং 3306।
  • DB_USER এবং DB_PASSWORD: স্থানীয় MySQL অ্যাপ্লিকেশন ক্রেডেনশিয়াল।
  • DB_NAME: ডেটাবেসের নাম। ডিফল্ট হলো ai_writer।
  • PORT: অ্যাপ্লিকেশনের HTTP পোর্ট। ডিফল্ট হলো 3000।
  • NODE_ENV: রানটাইম মোড। ডিফল্ট হলো development।
  • TRUST_PROXY: অ্যাপ্লিকেশন একটি HTTPS রিভার্স প্রক্সিকে বিশ্বাস করবে কি না সেটি নির্ধারণ করে। ডিফল্ট হলো 0।

নির্বাচিত মডেলটিকে Chat Completions API-এর মাধ্যমে ছবি ইনপুট সমর্থন করতে হবে। সামঞ্জস্যপূর্ণ অনুরোধের আচরণের জন্য OpenAI-এর অফিসিয়াল ছবি-ইনপুট নির্দেশিকা দেখুন।

আপনার প্রথম পণ্যের বিবরণ তৈরি করুন

  1. অ্যাকাউন্ট তৈরি করুন: স্থানীয় অ্যাপ্লিকেশনের মাধ্যমে নিবন্ধন করে সাইন ইন করুন। প্রতিটি নতুন অ্যাকাউন্টে শুরুতেই দশটি ক্রেডিট থাকে।
  2. পণ্যের ছবি যোগ করুন: এক থেকে আটটি সর্বজনীন HTTPS ছবির URL দিন। মডেলটিকে অবশ্যই এই URL-গুলোতে প্রবেশ করতে সক্ষম হতে হবে।
  3. ভাষা নির্বাচন করুন: ইংরেজি, তুর্কি, স্প্যানিশ, জার্মান, ফরাসি অথবা চীনা নির্বাচন করুন।
  4. খসড়া তৈরি করুন: দৃশ্য বিশ্লেষণ ও বিবরণ তৈরির জন্য ছবিগুলো জমা দিন।
  5. ফলাফল সম্পাদনা করুন: ব্রাউজারে খসড়াটি পর্যালোচনা করুন এবং অসমর্থিত দাবি, ভাষার ভঙ্গি বা পণ্যের বিবরণ সংশোধন করুন।
  6. টেক্সট কপি করুন: সংশোধিত বিবরণটি আপনার ই-কমার্স কার্যপ্রবাহে কপি করুন।

সফলভাবে বিবরণ তৈরি করতে এক ক্রেডিট খরচ হয়। তৈরির অনুরোধ ব্যর্থ হলে অ্যাপ্লিকেশনটি সংরক্ষিত ক্রেডিট ফেরত দেয়।

ছবির কার্যপ্রবাহের উদাহরণ

একাধিক কোণ থেকে তোলা ছবিযুক্ত পণ্যের জন্য নিচের মতো কয়েকটি সরাসরি ছবির URL দিন:

https://example.com/products/item-front.jpg
https://example.com/products/item-side.jpg
https://example.com/products/item-detail.jpg

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

পণ্যের পৃষ্ঠা থেকে ছবি সংগ্রহ করুন

প্রতিটি ছবির URL হাতে সংগ্রহ করার পরিবর্তে, AI Writer Puppeteer ব্যবহার করে একটি সর্বজনীন পণ্যের পৃষ্ঠা পরিদর্শন ও ছবির লিংক সংগ্রহ করতে পারে। এই কার্যপ্রবাহের জন্য Puppeteer পরিচালিত Chrome ইনস্টলেশন প্রয়োজন।

  1. পৃষ্ঠা সংগ্রহের কার্যপ্রবাহে একটি সর্বজনীন পণ্যের পৃষ্ঠার URL দিন।
  2. অ্যাপ্লিকেশনকে সম্ভাব্য ছবির লিংক সংগ্রহ করতে দিন।
  3. সংগৃহীত ফলাফল থেকে উপযুক্ত পণ্যের ছবি নির্বাচন করুন।
  4. স্বাভাবিক নিয়মে বিবরণ তৈরি ও পর্যালোচনা করুন।

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

বিদ্যমান খসড়া অনুবাদ করুন

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

পরীক্ষামূলক ভিডিও কার্যপ্রবাহ ব্যবহার করুন

AI Writer একটি ছোট YouTube ভিডিও থেকে সর্বোচ্চ আটটি ফ্রেম বের করে সেগুলোকে দৃশ্যমান প্রেক্ষাপট হিসেবে জমা দিতে পারে। স্থানীয় ফ্রেমগুলো data URL হিসেবে মডেলে পাঠানো হয়, কারণ localhost-এর ছবির লিংকে API প্রবেশ করতে পারবে না।

ভিডিওটিকে অবশ্যই নিচের সব সীমা পূরণ করতে হবে:

  • এটি লাইভ ভিডিও হওয়া যাবে না।
  • এটির দৈর্ঘ্য তিন মিনিটের বেশি হওয়া যাবে না।
  • এটির আকার 50 MB-এর বেশি হওয়া যাবে না।
  • PATH-এ FFmpeg ও FFprobe থাকতে হবে।
  • মিডিয়াটি প্রক্রিয়া করার অনুমতি আপনার থাকতে হবে।

এই সুবিধাটি আপস্ট্রিম YouTube ডাউনলোডারের প্রাপ্যতার ওপর নির্ভর করে এবং YouTube স্বয়ংক্রিয় ডাউনলোড প্রত্যাখ্যান করতে পারে। প্রক্রিয়াকরণ ব্যর্থ হলে সংরক্ষিত ক্রেডিট ফেরত দেওয়া হয়।

উন্নয়ন ও পরীক্ষা

অ্যাপ্লিকেশন পরিবর্তন করার সময় উন্নয়ন কমান্ডটি ব্যবহার করুন:

npm run dev

প্রকল্পের যাচাই, স্বয়ংক্রিয় পরীক্ষা এবং প্রোডাকশন-নির্ভরতার অডিট চালান:

npm run check
npm test
npm audit --omit=dev

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

উন্নত টিপস

সতর্কতার সঙ্গে ছবি নির্বাচন করুন

পণ্যটিকে কার্যকর কোণ থেকে দেখায় এমন পরিষ্কার ছবি ব্যবহার করুন। এক থেকে আটটি ছবির সীমার মধ্যে থাকুন। অতিরিক্ত ছবিতে একই দৃশ্যের পুনরাবৃত্তি না করে অর্থবহ দৃশ্যমান তথ্য যোগ করা উচিত।

দৃশ্যভিত্তিক অনুমান থেকে তথ্য আলাদা রাখুন

মাত্রা, উপাদান বা সার্টিফিকেশন সম্পর্কে তৈরি করা দাবিকে নির্ভরযোগ্য বলে ধরে নেবেন না। সম্পাদনার সময় আপনার ইনভেন্টরি বা পণ্য-তথ্য ব্যবস্থার যাচাইকৃত বৈশিষ্ট্য যোগ করুন।

গোপন তথ্য ও ডেটাবেসে প্রবেশাধিকার সুরক্ষিত রাখুন

.env ব্যক্তিগত রাখুন, আলাদা ডেটাবেস ক্রেডেনশিয়াল ব্যবহার করুন এবং API কী বা সেশন সিক্রেট কমিট করা এড়িয়ে চলুন। বিদ্যমান MySQL সার্ভার ব্যবহার করলে, অ্যাপ্লিকেশন ব্যবহারকারীকে শুধু তার নির্দিষ্ট ডেটাবেসে প্রবেশাধিকার দিন।

সর্বজনীন স্থাপনার আগে প্রস্তুতি নিন

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

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

প্রকল্পের প্রধান ফাইলগুলো বুঝে নিন

  • app.js: Express অ্যাপ্লিকেশন এবং অ্যাকাউন্ট ও ক্রেডিট রুট।
  • db.js: MySQL সংযোগ পুল।
  • youtube.js: সীমাবদ্ধ পরীক্ষামূলক ভিডিও ওয়ার্কফ্লো।
  • lib/ai.js: মডেল রিকোয়েস্ট এবং বহুভাষিক প্রম্পট।
  • lib/network.js: সর্বজনীন HTTPS URL যাচাইকরণ।
  • views/: EJS পৃষ্ঠা এবং শেয়ার করা লেআউট।
  • public/: স্টাইল, ব্রাউজার কোড এবং ব্র্যান্ডিং।
  • schema.sql: অ্যাকাউন্ট ডেটাবেস টেবিল।
  • scripts/setup.js: ইন্টার‍্যাক্টিভ ইনস্টলার।
  • compose.mysql.yml: ঐচ্ছিক স্থানীয় MySQL পরিষেবা।
  • test/: স্বয়ংক্রিয় রিগ্রেশন পরীক্ষা।

উপসংহার

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