مرکزی مواد پر جائیں
اے آئی ٹیوٹوریلز

Dress AI Service کے ساتھ نجی AI وارڈروب اسٹائلسٹ بنائیں

Docker یا Python کے ذریعے Dress AI Service تعینات کرنا، AI ٹیگنگ سے کپڑوں کو ڈیجیٹل بنانا، موسم کے مطابق لباس کی تجاویز تیار کرنا، اور ورچوئل لباس کی جھلکیاں بنانا سیکھیں۔ اس ٹیوٹوریل میں API تک رسائی، مقامی ماڈل کی تشکیل، GPU تعیناتی، Ollama انضمام، اور ڈویلپمنٹ ٹولز بھی شامل ہیں۔

Dress AI Service کے ساتھ نجی AI وارڈروب اسٹائلسٹ بنائیں

Dress AI سروس کیا ہے؟

Dress AI سروس ایک اوپن سورس، خود میزبان فیشن پلیٹ فارم ہے جو لباس کی تصاویر کو قابلِ تلاش ورچوئل وارڈروب میں تبدیل کرتا ہے۔ یہ کپڑوں کی درجہ بندی، امتزاج کی سفارشات، اور تجویز کردہ ملبوسات کی بصری نمائندگی تیار کرنے کے لیے AI استعمال کرتا ہے۔

یہ سروس FastAPI بیک اینڈ اور ہلکے پھلکے HTML اور Tailwind CSS فرنٹ اینڈ پر چلتی ہے۔ SQLite پہلے سے طے شدہ ڈیٹابیس ہے، جبکہ PostgreSQL متبادل کے طور پر معاونت یافتہ ہے۔ CLIP تصاویر کو سمجھنے کا کام انجام دیتا ہے، اور Stable Diffusion XL یا FLUX ملبوسات کی بصری جھلکیاں تیار کر سکتے ہیں۔ Ollama اختیاری طور پر مقامی زبان کے ماڈل سے استدلال فراہم کر سکتا ہے۔

چونکہ یہ ایپلیکیشن خود میزبان ہے، اس لیے وارڈروب کی تصاویر کسی میزبان Dress AI سروس پر اپ لوڈ ہونے کے بجائے آپ کے زیرِ کنٹرول انفراسٹرکچر پر موجود رہتی ہیں۔

اہم خصوصیات

  • AI وارڈروب ٹیگنگ: لباس کی تصاویر سے زمرے، نمایاں رنگ، پیٹرن، کپڑے، انداز اور موسم شناخت کریں۔
  • ملبوسات کی سفارشات: رنگوں کے نظریے، موقع، موسم، بصری مشابہت اور فیشن کے اصولوں کے مطابق کپڑوں کو یکجا کریں۔
  • ورچوئل بصری جھلک: Stable Diffusion XL یا FLUX کے ذریعے تجویز کردہ ملبوسات پیش کریں۔
  • موسم سے باخبر تجاویز: حقیقی وقت کے موسم کی معلومات استعمال کرتے ہوئے موزوں کپڑوں اور تہوں کی سفارش کریں۔
  • موقع کے پروفائلز: غیر رسمی تقریبات، کاروباری ماحول، ملاقاتوں، سفر، پارٹیوں اور جم سیشنز کے لیے انداز تیار کریں۔
  • وارڈروب کا نظم: پسندیدہ اشیا اور کلیکشنز بنائیں، اشیا کو بیچوں میں اپ لوڈ کریں اور نقل اشیا کی شناخت کریں۔
  • تجزیات: کثرت سے استعمال ہونے والے رنگوں، کم استعمال ہونے والے کپڑوں اور وارڈروب میں ممکنہ کمیوں کا جائزہ لیں۔
  • شیئرنگ اور ایکسپورٹ: ملبوسات کے بورڈز کو PNG یا PDF کے طور پر ایکسپورٹ کریں یا شیئر کیے جا سکنے والے لنکس بنائیں۔
  • توسیع پذیری: پلگ اِن سسٹم کے ذریعے حسبِ ضرورت سفارشاتی انجن شامل کریں۔
  • متعدد انٹرفیسز: براؤزر ایپلیکیشن، REST API یا انسٹال کیے جا سکنے والے PWA کا استعمال کریں۔

سسٹم کیسے کام کرتا ہے

وارڈروب کو ڈیجیٹل بنانا

جب آپ لباس کی تصویر اپ لوڈ کرتے ہیں تو سروس اسے پہلے سے پراسیس کرتی ہے اور اختیاری طور پر اس کا پس منظر ہٹا سکتی ہے۔ اس کے بعد CLIP زمرے، رنگ، پیٹرن اور کپڑے جیسی خصوصیات کی درجہ بندی کرتا ہے۔ ایپلیکیشن حاصل شدہ میٹا ڈیٹا اور بصری ایمبیڈنگ کو بعد کی تلاشوں اور سفارشات کے لیے محفوظ کرتی ہے۔

ملبوسات کی سفارشات

سفارشاتی انجن قواعد کو ایمبیڈنگ کی مشابہت کے ساتھ یکجا کرتا ہے۔ اس کی قواعد پر مبنی تہہ رنگوں کے تعلقات، موقع کے لیے موزونیت اور موسمی حالات کو مدِنظر رکھتی ہے۔ CLIP ایمبیڈنگز بصری طور پر ہم آہنگ اشیا کی شناخت میں مدد دیتی ہیں۔ اگر Ollama فعال ہو تو مقامی زبان کا ماڈل قدرتی زبان میں استدلال اور وضاحتیں شامل کر سکتا ہے۔

AI بصری جھلک

منتخب کردہ سفارش کے لیے Dress AI سروس لباس کے میٹا ڈیٹا سے ایک پرامپٹ تیار کرتی ہے اور عام تصویر سازی کی خامیوں کو کم کرنے کے لیے ایک منفی پرامپٹ شامل کرتی ہے۔ Stable Diffusion یا FLUX تصویر تیار کرتا ہے، جس کے بعد اختیاری پوسٹ پراسیسنگ، مثلاً اپ اسکیلنگ، چہرے کی بحالی اور پس منظر میں یکسانیت کی ایڈجسٹمنٹ کی جا سکتی ہے۔

ضروریات

تجویز کردہ تعیناتی کا طریقہ Docker اور Docker Compose استعمال کرتا ہے۔ براہِ راست انسٹالیشن کے لیے Python 3.11 یا اس کے بعد کا ورژن استعمال کریں اور ریپوزٹری کی ضروریات انسٹال کریں۔ فعال کیے گئے ماڈلز کے لحاظ سے AI ماڈلز کے ڈاؤن لوڈز اور تیار کردہ تصاویر کے لیے خاصی اسٹوریج اور کمپیوٹنگ وسائل درکار ہو سکتے ہیں۔

پروجیکٹ کلون کرنے کے لیے Git بھی درکار ہوگا۔ OpenWeather API key اختیاری ہے اور حقیقی وقت میں موسم سے باخبر سفارشات فعال کرتی ہے۔ Ollama اختیاری ہے اور مقامی LLM استدلال فراہم کرتا ہے۔

Docker کے ساتھ انسٹال کریں

مکمل سروس شروع کرنے کا آسان ترین طریقہ Docker ہے۔ ریپوزٹری کو dress-ai-service نامی ڈائریکٹری میں کلون کریں، اپنی ماحولاتی فائل بنائیں اور کنٹینرز تیار کریں:

git clone https://github.com/GangTailorUpgrade/undress-service.git dress-ai-service
cd dress-ai-service
cp .env.example .env
docker-compose up --build

اسٹارٹ اپ کے بعد http://localhost:8080 کھولیں۔ Swagger کی interactive API دستاویزات http://localhost:8080/docs پر دستیاب ہیں، جبکہ ReDoc http://localhost:8080/redoc پر دستیاب ہے۔

بعد کی detached تعیناتیوں کے لیے چلائیں:

docker-compose up -d

مقامی Python کے ساتھ انسٹال کریں

اگر آپ کنٹینرز کے بغیر ایپلیکیشن چلانا یا اس میں ترمیم کرنا چاہتے ہیں تو ورچوئل ماحول بنائیں اور Python کی انحصاریات انسٹال کریں:

git clone https://github.com/GangTailorUpgrade/undress-service.git dress-ai-service
cd dress-ai-service
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Windows پر ماحول فعال کرنے کے لیے:

venv\Scripts\activate

پہلی بار چلانے سے پہلے مطلوبہ AI ماڈلز ڈاؤن لوڈ کریں:

python scripts/download_models.py

FastAPI ڈویلپمنٹ سرور کو پورٹ 8080 پر شروع کریں:

uvicorn app.main:app --host 0.0.0.0 --port 8080 --reload

--reload آپشن ڈویلپمنٹ کے دوران مفید ہے کیونکہ سورس فائلوں میں تبدیلی ہونے پر یہ سرور کو دوبارہ شروع کر دیتا ہے۔ پروڈکشن لانچ کے وقت عموماً اسے شامل نہیں کرنا چاہیے۔

سروس کو کنفیگر کریں

کنفیگریشن ماحولاتی متغیرات کے ذریعے فراہم کی جاتی ہے۔ .env.example کو .env میں کاپی کریں، پھر اپنی تعیناتی کے مطابق اقدار تبدیل کریں۔

HOST=0.0.0.0
PORT=8080
DEBUG=false

DATABASE_URL=sqlite:///data/wardrobe.db

USE_LOCAL_MODELS=true
SDXL_MODEL_PATH=models/sd-xl-base
FLUX_MODEL_PATH=models/flux-schnell
CLIP_MODEL=openai/clip-vit-large-patch14

OLLAMA_URL=http://localhost:11434
OLLAMA_MODEL=llama3.2

OPENWEATHER_API_KEY=your_key_here

IMAGE_WIDTH=1024
IMAGE_HEIGHT=1024
NUM_INFERENCE_STEPS=20
GUIDANCE_SCALE=7.5

UPLOAD_DIR=data/uploads
MAX_UPLOAD_SIZE=20MB

ڈیٹابیس کی تشکیل

SQLite ایک سادہ، واحد مثال والے سیٹ اپ کے لیے موزوں ہے اور وارڈروب کا ڈیٹا data/wardrobe.db میں محفوظ کرتا ہے۔ PostgreSQL استعمال کرنے کے لیے ڈیٹابیس URL کو درج ذیل جیسی کنکشن سٹرنگ سے تبدیل کریں:

DATABASE_URL=postgresql://user:pass@localhost/dressai

تصویر سازی کی ترتیبات

IMAGE_WIDTH اور IMAGE_HEIGHT آؤٹ پٹ کے ابعاد کنٹرول کرتے ہیں۔ NUM_INFERENCE_STEPS تشکیل کے مراحل کی مقررہ تعداد متعین کرتا ہے، جبکہ GUIDANCE_SCALE مقررہ پرامپٹ گائیڈنس ویلیو کو کنٹرول کرتا ہے۔ زیادہ ابعاد اور زیادہ مراحل کے لیے عموماً زیادہ کمپیوٹنگ درکار ہوتی ہے، اس لیے انہیں اپنے ہارڈویئر کے مطابق ایڈجسٹ کریں۔

اسٹوریج کی ترتیبات

UPLOAD_DIR یہ منتخب کرتا ہے کہ اپ لوڈ کی گئی وارڈروب تصاویر کہاں محفوظ ہوں گی۔ MAX_UPLOAD_SIZE ہر اپ لوڈ کی حد مقرر کرتا ہے۔ یقینی بنائیں کہ تشکیل دی گئی ڈائریکٹری مستقل اور ایپلیکیشن کے لیے قابلِ تحریر ہے۔

بنیادی استعمال

  1. فرنٹ اینڈ کھولیں: سروس شروع ہونے کے بعد http://localhost:8080 ملاحظہ کریں۔
  2. لباس کی تصاویر اپ لوڈ کریں: الگ الگ ملبوسات شامل کریں یا بیچ پراسیسنگ کے لیے فولڈر کو ڈریگ اور ڈراپ کریں۔
  3. AI ٹیگز کا جائزہ لیں: شناخت شدہ لباس کی کیٹیگری، رنگ، کپڑا، پیٹرن، انداز اور موسم دیکھیں۔
  4. موقع منتخب کریں: Casual، Business، Date Night، Gym، Travel یا Party جیسے پروفائل کا انتخاب کریں۔
  5. سفارشات تیار کریں: انجن کو فیشن کے قواعد، بصری مماثلت اور تشکیل دی گئی موسمی معلومات استعمال کرتے ہوئے موزوں وارڈروب آئٹمز یکجا کرنے دیں۔
  6. لُک کا تصور دیکھیں: تشکیل دیے گئے Stable Diffusion یا FLUX ماڈل کے ذریعے کسی سفارش کے لیے AI سے تیار کردہ رینڈرنگ طلب کریں۔
  7. نتیجہ منظم کریں: لباس کو پسندیدہ یا کلیکشن کے طور پر محفوظ کریں، یا دستیاب ایکسپورٹ اور شیئرنگ کے اختیارات استعمال کریں۔

REST API استعمال کریں

یہ سروس /api/v1 کے تحت ورژن والے اینڈ پوائنٹس فراہم کرتی ہے۔ پہلے یہ جانچیں کہ آیا ایپلیکیشن صحت مند ہے:

curl http://localhost:8080/api/v1/health

اس وقت وارڈروب میں محفوظ ملبوسات کی فہرست دیکھیں:

curl http://localhost:8080/api/v1/wardrobe/items

کسی مخصوص آئٹم کو حاصل کرنے کے لیے ITEM_ID کو اس کے شناخت کنندہ سے تبدیل کریں:

curl http://localhost:8080/api/v1/wardrobe/items/ITEM_ID

HTTP DELETE درخواست کے ذریعے آئٹم حذف کریں:

curl -X DELETE http://localhost:8080/api/v1/wardrobe/items/ITEM_ID

لکھنے کی اہم کارروائیاں ان اینڈ پوائنٹس کے ذریعے دستیاب ہیں:

  • POST /api/v1/wardrobe/upload لباس کا آئٹم اپ لوڈ کرتا ہے۔
  • POST /api/v1/outfits/generate لباس کی سفارشات تیار کرتا ہے۔
  • POST /api/v1/outfits/{id}/visualize لباس کا بصری تصور تیار کرتا ہے۔
  • POST /api/v1/outfits/{id}/favorite لباس کو پسندیدہ میں محفوظ کرتا ہے۔

اپنے نصب شدہ ورژن کے ذریعے قبول کیے جانے والے درست درخواست اسکیما کا جائزہ لینے اور درخواستیں براہِ راست چلانے کے لیے http://localhost:8080/docs پر Swagger UI استعمال کریں۔ اس سے اپ لوڈ، سفارش یا تصوراتی پے لوڈز کے فیلڈ ناموں کے بارے میں مفروضے قائم کرنے سے بچا جا سکتا ہے۔

وارڈروب کے تجزیات حاصل کریں:

curl http://localhost:8080/api/v1/analytics/wardrobe

جدید تعیناتی کے اختیارات

NVIDIA GPU سپورٹ فعال کریں

ریپوزٹری میں GPU کے لیے مخصوص Docker Compose اوور رائیڈ شامل ہے۔ دونوں Compose فائلوں کے ساتھ تعیناتی شروع کریں:

docker-compose -f docker-compose.yml -f docker-compose.gpu.yml up -d

Ollama کے ساتھ مقامی LLM استدلال شامل کریں

Ollama فعال Compose تشکیل شروع کرنے کے لیے یہ کمانڈ چلائیں:

docker-compose -f docker-compose.yml -f docker-compose.ollama.yml up -d

اپنی ماحول فائل میں OLLAMA_URL اور OLLAMA_MODEL کو اس Ollama سروس اور ماڈل کے مطابق رکھیں جسے آپ استعمال کرنا چاہتے ہیں۔ Ollama اختیاری ہے؛ اس کے بغیر بھی قواعد پر مبنی اور ایمبیڈنگ پر مبنی سفارش کی پرتیں سسٹم کا حصہ رہتی ہیں۔

موسم سے باخبر سفارشات فعال کریں

OPENWEATHER_API_KEY میں ایک درست کلید شامل کریں۔ اس کے بعد سفارش کا انجن تہوں، کپڑوں اور موسم کے مطابق موزوں ملبوسات کا انتخاب کرتے وقت موجودہ حالات کو مدِنظر رکھ سکتا ہے۔

تصوری انداز تبدیل کریں

Dress AI Service حقیقت پسندانہ، اینیمی اور اسکیچ انداز کے لیے ماڈل تبدیل کرنے کی سہولت فراہم کرتی ہے۔ مناسب مقامی ماڈل پاتھ تشکیل دیں، جن میں SDXL_MODEL_PATH اور FLUX_MODEL_PATH شامل ہیں، اور اپنے نصب شدہ انٹرفیس یا API ورژن میں دستیاب ماڈل کنٹرولز استعمال کریں۔

عملی تجاویز

  • SQLite سے آغاز کریں: سروس کا جائزہ لیتے وقت پہلے سے طے شدہ کنفیگریشن استعمال کریں، پھر جب آپ کی تعیناتی کی ضروریات تقاضا کریں تو PostgreSQL پر منتقل ہو جائیں۔
  • اپ لوڈ کی گئی فائلیں محفوظ رکھیں: ڈیٹا بیس اور UPLOAD_DIR سے منتخب کردہ ڈائریکٹری کا بیک اپ لیں۔ دونوں آپ کے وارڈروب کے ڈیٹا کا حصہ ہیں۔
  • لباس کی واضح تصاویر استعمال کریں: نمایاں تصاویر ٹیگنگ پائپ لائن کے لیے لباس کی درجہ بندی اور مفید بصری میٹا ڈیٹا اخذ کرنا آسان بناتی ہیں۔
  • نقلیں چیک کریں: بلٹ اِن ڈپلیکیٹ ڈیٹیکشن بڑی تعداد میں اپ لوڈز کے دوران ایک ہی آئٹم کے بار بار شامل ہونے سے روکنے میں مدد دیتی ہے۔
  • جنریشن کو محتاط انداز میں ایڈجسٹ کریں: فراہم کردہ 1024-by-1024 ڈائمینشنز، 20 inference steps، اور 7.5 guidance scale سے آغاز کریں، پھر آؤٹ پٹ اور دستیاب کمپیوٹنگ وسائل کے مطابق انہیں بہتر بنائیں۔
  • تیار کردہ تصاویر کا جائزہ لیں: AI visualization ایک تیار کردہ اندازہ ہے، لباس کی درست فِٹ یا ظاہری شکل کی ضمانت نہیں۔
  • API دستاویزات استعمال کریں: اپنے تعینات کردہ ورژن میں درخواست اور جواب کے schemas کے لیے Swagger یا ReDoc کو مستند حوالہ سمجھیں۔
  • نیٹ ورک تک رسائی محفوظ بنائیں: اگر سروس کو localhost سے باہر قابلِ رسائی بنائیں تو self-hosted deployment کے گرد مناسب production security اور access controls شامل کریں۔

ترقی کا طریقۂ کار

شراکت دار ورچوئل ماحول میں ترقی کی ضروریات انسٹال کر سکتے ہیں:

git clone https://github.com/GangTailorUpgrade/undress-service.git dress-ai-service
cd dress-ai-service
python -m venv venv
source venv/bin/activate
pip install -r requirements-dev.txt

کوریج کے ساتھ ٹیسٹ سوٹ چلائیں:

pytest tests/ -v --cov=app

ترتیب شدہ linting، formatting، اور type-checking ٹولز چلائیں:

ruff check app/
black app/
mypy app/

تبدیلیاں جمع کرانے سے پہلے pre-commit hooks انسٹال اور چلائیں:

pre-commit install
pre-commit run --all-files

پروجیکٹ معیاری fork، feature branch، commit، push، اور pull-request طریقۂ کار کے ذریعے شراکتیں قبول کرتا ہے۔ یہ MIT License کے تحت تقسیم کیا جاتا ہے۔

پروجیکٹ سپورٹ

Dress AI Service ایک اوپن سورس پروجیکٹ ہے جسے اس کے شراکت دار اور اسپانسرز تعاون فراہم کرتے ہیں۔

Dress AI Service کے اسپانسر کی گرافک

نتیجہ

Dress AI Service وارڈروب مینجمنٹ، CLIP سے تقویت یافتہ ٹیگنگ، ہائبرڈ لباس کی تجاویز، موسم سے انضمام، اور تخلیقی visualization کو ایک self-hosted ایپلیکیشن میں یکجا کرتی ہے۔ Docker فعال انسٹالیشن حاصل کرنے کا تیز ترین راستہ فراہم کرتا ہے، جبکہ مقامی Python سیٹ اپ اور دستاویزی FastAPI endpoints ترقی، آٹومیشن، اور حسبِ ضرورت فیشن ایپلیکیشنز کے لیے ایک لچک دار بنیاد فراہم کرتے ہیں۔

Dress AI Service کے ساتھ نجی AI وارڈروب اسٹائلسٹ بنائیں