
Iyini i-Dress AI Service?
I-Dress AI Service iyinkundla yemfashini yomthombo ovulekile, ezisingathwa nguwe, yokuguqula izithombe zezingubo zibe ikhabethe lezingubo elibonakalayo elingaseshwa. Isebenzisa i-AI ukuhlukanisa izingubo ngezigaba, ukuncoma inhlanganisela, nokukhiqiza izethulo ezibonakalayo zezingubo ezihlongozwayo.
Le sevisi isebenza nge-backend ye-FastAPI kanye ne-frontend elula ye-HTML ne-Tailwind CSS. I-SQLite iyisizindalwazi esizenzakalelayo, kanti i-PostgreSQL iyasekelwa njengenye indlela. I-CLIP iphatha ukuqonda izithombe, kanti i-Stable Diffusion XL noma i-FLUX ingakhiqiza izithombe zezingubo ezihlanganisiwe. I-Ollama inganikeza ngokuzikhethela ukucabanga kwemodeli yolimi esebenza endaweni.
Ngenxa yokuthi uhlelo luzisingathwa nguwe, izithombe zekhabethe lezingubo zihlala kungqalasizinda oyilawulayo kunokuba zilayishwe kusevisi ye-Dress AI esingathwa kwenye indawo.
Izici Eziyinhloko
- Ukumaka ikhabethe nge-AI: Thola izigaba, imibala evelele, amaphethini, izindwangu, izitayela, nezinkathi zonyaka ezithombeni zezingubo.
- Izincomo zezingubo ezihlanganisiwe: Hlanganisa izingubo ngokombono wemibala, umcimbi, isimo sezulu, ukufana kokubonakalayo, nemithetho yemfashini.
- Ukubonisa okubonakalayo: Dala izithombe zezingubo ezihlongozwayo usebenzisa i-Stable Diffusion XL noma i-FLUX.
- Iziphakamiso ezibheka isimo sezulu: Ncoma izindwangu nezendlalelo ezifanele usebenzisa ulwazi lwesimo sezulu lwesikhathi sangempela.
- Amaphrofayela emicimbi: Khiqiza ukubukeka kwezehlakalo ezingajwayelekile, izindawo zebhizinisi, izinsuku zothando, ukuhamba, amaphathi, nezikhathi ejimini.
- Ukuhlela ikhabethe: Dala izinto ozithandayo namaqoqo, layisha izinto ngamaqoqo, futhi uthole izinto eziphindaphindiwe.
- Ukuhlaziya: Hlola imibala esetshenziswa njalo, izingubo ezingasetshenziswa ngokwanele, nezikhala ezingaba khona ekhabetheni.
- Ukwabelana nokuthekelisa: Thekelisa amabhodi ezimpahla njenge-PNG noma i-PDF, noma udale izixhumanisi ongabelana ngazo.
- Ukwandiswa: Faka izinjini zokuncoma zangokwezifiso ngohlelo lwama-plugin.
- Izindlela eziningi zokusebenzisa: Sebenzisa uhlelo lwesiphequluli, i-REST API, noma i-PWA efakekayo.
Indlela Uhlelo Olusebenza Ngayo
Ukwenza ikhabethe libe ledijithali
Uma ulayisha isithombe sengubo, isevisi iyasicubungula futhi ingasusa ingemuva ngokuzikhethela. I-CLIP ibe isihlukanisa izici ezifana nesigaba, umbala, iphethini, nendwangu. Uhlelo lugcina imethadatha etholakele kanye ne-embedding ebonakalayo ukuze kusetshenziswe ekusesheni nasezincomweni kamuva.
Izincomo zezingubo ezihlanganisiwe
Injini yezincomo ihlanganisa imithetho nokufana kwama-embedding. Isendlalelo esisekelwe emithethweni sibheka ubudlelwano bemibala, ukufaneleka komcimbi, nezimo zesimo sezulu. Ama-embedding e-CLIP asiza ekuboneni izinto ezihambisanayo ngokubonakalayo. Uma i-Ollama inikwe amandla, imodeli yolimi esebenza endaweni ingangeza ukucabanga nezincazelo ngolimi olujwayelekile.
Ukubonisa nge-AI
Ngesincomo esikhethiwe, i-Dress AI Service yakha i-prompt kusukela kumethadatha yengubo bese ingeza i-negative prompt ehloselwe ukunciphisa amaphutha ajwayelekile okukhiqiza izithombe. I-Stable Diffusion noma i-FLUX ikhiqiza isithombe ngaphambi kokucubungula okwengeziwe ngokuzikhethela, njengokukhulisa ukucaca, ukubuyisela ubuso, nokulungisa ukufana kwengemuva.
Okudingekayo Ngaphambili
Indlela enconyiwe yokufaka isebenzisa i-Docker ne-Docker Compose. Ukuze uyifake ngokuqondile, sebenzisa i-Python 3.11 noma entsha bese ufaka izidingo zekhosombe. Ukulanda amamodeli e-AI nezithombe ezikhiqiziwe kungadinga indawo enkulu yokugcina namandla ekhompyutha, kuye ngamamodeli owavulayo.
Uzodinga futhi i-Git ukuze u-clone iphrojekthi. Ukhiye we-OpenWeather API uyazikhethela futhi wenza izincomo ezibheka isimo sezulu sesikhathi sangempela zisebenze. I-Ollama nayo iyazikhethela futhi inikeza ukucabanga kwe-LLM okusebenza endaweni.
Faka nge-Docker
I-Docker iyindlela elula yokuqalisa isevisi ephelele. Clone ikhosombe uye kufolda ebizwa ngokuthi dress-ai-service, dala ifayela lakho le-environment, bese wakha ama-container:
git clone https://github.com/GangTailorUpgrade/undress-service.git dress-ai-service
cd dress-ai-service
cp .env.example .env
docker-compose up --buildNgemva kokuqalisa, vula http://localhost:8080. Imibhalo esebenzisanayo ye-Swagger API itholakala ku- http://localhost:8080/docs, kanti i-ReDoc itholakala ku- http://localhost:8080/redoc.
Ukuze usebenzise ama-deployment ahlukanisiwe kamuva, sebenzisa:
docker-compose up -dFaka nge-Python Yasendaweni
Uma ufuna ukusebenzisa noma ukushintsha uhlelo ngaphandle kwama-container, dala i-virtual environment bese ufaka okuncikile kwe-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.txtKwi-Windows, vula i-environment ngale ndlela:
venv\Scripts\activateLanda amamodeli e-AI adingekayo ngaphambi kokuqalisa kokuqala:
python scripts/download_models.pyQalisa iseva yokuthuthukisa ye-FastAPI ku-port 8080:
uvicorn app.main:app --host 0.0.0.0 --port 8080 --reloadInketho ethi --reload ilusizo ngesikhathi sokuthuthukisa ngoba iqalisa kabusha iseva lapho amafayela omthombo eshintsha. Ngokuvamile kufanele ishiywe ngaphandle lapho kwethulwa uhlelo lokukhiqiza.
Lungiselela Isevisi
Ukucushwa kunikezwa ngama-environment variables. Kopisha .env.example uye ku-.env, bese ulungisa amanani ngokuvumelana ne-deployment yakho.
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=20MBUkulungiselelwa kwedathabheyisi
I-SQLite ifanele ukusetha okulula kwesenzakalo esisodwa futhi igcina idatha yezingubo ku-data/wardrobe.db. Ukuze usebenzise i-PostgreSQL, shintsha i-URL yedathabheyisi ibe yintambo yokuxhuma efana nale:
DATABASE_URL=postgresql://user:pass@localhost/dressaiIzilungiselelo zokukhiqiza izithombe
IMAGE_WIDTH kanye ne-IMAGE_HEIGHT zilawula ubukhulu bomphumela. NUM_INFERENCE_STEPS ibeka inani lezinyathelo zokukhiqiza ezilungiselelwe, kanti GUIDANCE_SCALE ilawula inani lokuqondisa i-prompt elilungiselelwe. Ubukhulu obukhulu nezinyathelo eziningi ngokuvamile kudinga ukubalwa okwengeziwe, ngakho zilungise ngokuvumelana nehadiwe yakho.
Izilungiselelo zokugcina
UPLOAD_DIR ikhetha lapho kugcinwa khona izithombe zezingubo ezilayishiwe. MAX_UPLOAD_SIZE ikhawulela ukulayisha ngakunye. Qinisekisa ukuthi ifolda elungiselelwe iyahlala ikhona futhi uhlelo lokusebenza lunemvume yokubhala kuyo.
Ukusetshenziswa okuyisisekelo
- Vula i-frontend: Vakashela ku-http://localhost:8080 ngemva kokuqala kwesevisi.
- Layisha izithombe zezingubo: Engeza izingubo ngazinye noma hudula bese uphonsa ifolda ukuze zicutshungulwe ngobuningi.
- Buyekeza amathegi e-AI: Hlola isigaba sengubo esitholiwe, imibala, indwangu, iphethini, isitayela, kanye nesizini.
- Khetha umcimbi: Khetha iphrofayela efana ne-Casual, Business, Date Night, Gym, Travel, noma Party.
- Khiqiza izincomo: Vumela injini ihlanganise izingubo ezifanele isebenzisa imithetho yemfashini, ukufana kokubukeka, kanye nolwazi lwesimo sezulu olulungiselelwe, uma lukhona.
- Buka ukubukeka: Cela umfanekiso okhiqizwe yi-AI wesincomo usebenzisa imodeli ye-Stable Diffusion noma ye-FLUX elungiselelwe.
- Hlela umphumela: Londoloza impahla njengentandokazi noma eqoqweni, noma usebenzise izinketho ezitholakalayo zokuthekelisa nokwabelana.
Sebenzisa i-REST API
Isevisi iveza ama-endpoint anezinguqulo ngaphansi kwe-/api/v1. Qala ngokuhlola ukuthi uhlelo lokusebenza lusebenza kahle yini:
curl http://localhost:8080/api/v1/healthFaka ohlwini izingubo ezigcinwe manje ekhabethe:
curl http://localhost:8080/api/v1/wardrobe/itemsLanda into ethile ngokushintsha i-ITEM_ID ufake isihlonzi sayo:
curl http://localhost:8080/api/v1/wardrobe/items/ITEM_IDSusa into ngesicelo se-HTTP DELETE:
curl -X DELETE http://localhost:8080/api/v1/wardrobe/items/ITEM_IDImisebenzi eyinhloko yokubhala itholakala kulawa ma-endpoint:
POST /api/v1/wardrobe/uploadilayisha into yokugqoka.POST /api/v1/outfits/generateikhiqiza izincomo zezingubo ezihlanganisiwe.POST /api/v1/outfits/{id}/visualizeidala umfanekiso wengubo.POST /api/v1/outfits/{id}/favoriteigcina ingubo ezintandokazini.
Sebenzisa i-Swagger UI ku-http://localhost:8080/docs ukuze uhlole i-schema eqondile yesicelo eyamukelwa yinguqulo oyifakile futhi wenze izicelo ngokusebenzisana. Lokhu kugwema ukuqagela amagama ezinkambu zamaphayload okulayisha, okuncoma, noma okubuka ngeso lengqondo.
Thola ukuhlaziywa kwekhabethe lakho ngalokhu:
curl http://localhost:8080/api/v1/analytics/wardrobeIzinketho zokuphakela ezithuthukile
Nika amandla ukwesekwa kwe-NVIDIA GPU
Indawo yokugcina ikhodi ihlanganisa i-Docker Compose override eqondene ne-GPU. Qala ukuphakela ngamafayela womabili e-Compose:
docker-compose -f docker-compose.yml -f docker-compose.gpu.yml up -dEngeza ukucabanga kwe-LLM yendawo nge-Ollama
Ukuqalisa ukulungiselelwa kwe-Compose okunikwe amandla yi-Ollama, sebenzisa:
docker-compose -f docker-compose.yml -f docker-compose.ollama.yml up -dQondanisa OLLAMA_URL kanye ne-OLLAMA_MODEL kufayela lakho lendawo nesevisi ye-Ollama nemodeli ohlose ukuyisebenzisa. I-Ollama iyazikhethela; izingqimba zezincomo ezisekelwe emithethweni nasekuhlanganiseni izethulo ziyaqhubeka nokuba yingxenye yesistimu ngaphandle kwayo.
Nika amandla izincomo ezibheka isimo sezulu
Faka ukhiye ovumelekile ku-OPENWEATHER_API_KEY. Injini yezincomo ingabe isibheka izimo zamanje lapho ikhetha izingqimba, izindwangu, nezingubo ezilungele isimo sezulu.
Shintsha izitayela zokubuka ngeso lengqondo
I-Dress AI Service isekela ukushintshwa kwamamodeli ezitayela ezingokoqobo, ze-anime, nezomdwebo. Lungiselela izindlela ezifanele zamamodeli endawo, okuhlanganisa i-SDXL_MODEL_PATH ne-FLUX_MODEL_PATH, bese usebenzisa izilawuli zamamodeli ezivezwa yisixhumi esibonakalayo noma inguqulo ye-API oyifakile.
Izeluleko ezisebenzayo
- Qala nge-SQLite: Sebenzisa ukucushwa okuzenzakalelayo ngenkathi uhlola isevisi, bese uthuthela ku-PostgreSQL lapho izidingo zokuyisebenzisa zidinga lokho.
- Gcina amafayela alayishiwe: Yenza ikhophi eyisipele yedathabheyisi kanye nomkhombandlela okhethwe yi-
UPLOAD_DIR. Kokubili kuyingxenye yedatha yekhabethe lakho. - Sebenzisa izithombe ezicacile zezingubo: Izithombe ezihlukanisekayo zenza kube lula ukuthi uhlelo lokumaka luhlukanise izingubo futhi lukhiphe imethadatha ewusizo ebonakalayo.
- Hlola okuphindiwe: Ukutholwa kwezinto eziphindiwe okwakhelwe ngaphakathi kusiza ukuvimbela izinto eziphindwayo ngesikhathi sokulayisha amaqoqo amakhulu.
- Lungisa ukukhiqiza ngokucophelela: Qala ngobukhulu obunikeziwe obungu-1024-by-1024, izinyathelo zokucabanga ezingu-20, kanye nesikali sokuqondisa esingu-7.5, bese ukulungisa ngokusekelwe kumphumela namandla ekhompyutha atholakalayo.
- Buyekeza izithombe ezikhiqiziwe: Ukuboniswa nge-AI kuwukulinganisa okukhiqiziwe, akusona isiqinisekiso sokulingana noma ukubukeka kwengubo ngendlela eqondile.
- Sebenzisa imibhalo ye-API: Phatha i-Swagger noma i-ReDoc njengereferensi egunyaziwe yezikimu zezicelo nezimpendulo zenguqulo oyisebenzisayo.
- Vikela ukufinyelela kwenethiwekhi: Uma uveza isevisi ngaphandle kwe-localhost, engeza ukuphepha okufanele kokukhiqiza nezilawuli zokufinyelela ekusetshenzisweni okusingathwe nguwe.
Ukuhamba Komsebenzi Wokuthuthukisa
Abanikeli bangafaka izidingo zokuthuthukisa endaweni ebonakalayo:
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.txtQalisa iqoqo lokuhlola kanye nokumbozwa kwekhodi:
pytest tests/ -v --cov=appQalisa amathuluzi amisiwe okuhlola isitayela, ukufometha, nokuhlola izinhlobo:
ruff check app/
black app/
mypy app/Faka futhi usebenzise ama-pre-commit hooks ngaphambi kokuthumela izinguquko:
pre-commit install
pre-commit run --all-filesLe phrojekthi yamukela iminikelo ngenqubo ejwayelekile ye-fork, igatsha lesici, i-commit, i-push, kanye ne-pull request. Isatshalaliswa ngaphansi kwelayisensi ye-MIT.
Ukusekelwa Kwephrojekthi
I-Dress AI Service iyiphrojekthi yomthombo ovulekile esekelwa ngabanikeli nabaxhasi bayo.

Isiphetho
I-Dress AI Service ihlanganisa ukuphathwa kwekhabethe, ukumaka okunamandla yi-CLIP, izincomo zezingubo ezixubile, ukuhlanganiswa kwesimo sezulu, kanye nokuboniswa okukhiqizayo kuhlelo olulodwa olusingathwa nguwe. I-Docker iyindlela eshesha kakhulu yokuthola ukufakwa okusebenzayo, kanti ukusethwa kwe-Python kwasendaweni kanye nama-endpoint e-FastAPI abhaliwe kunikeza isisekelo esivumelana nezimo sokuthuthukisa, sokuzenzakalela, kanye nezinhlelo zemfashini ezenziwe ngokwezifiso.
