Telegramda yozing@Odilient

SI VA AVTOMATLASHTIRISH

RecipeReel

YouTube, TikTok’dagi yoki yuklangan pazandachilik videosini aniq miqdorlar, vaqt belgili qadamlar va schema.org JSON-LD bilan tartibli retseptga aylantiradigan SI vositasi.

AMD Developer Hackathon
Mijoz
Media va ko‘ngilochar soha
Soha
3 kun
Muddat
2026
Yil
Boshlang‘ich nuqta

Muammo

Pazandachilik videolari — retsept uchun noqulay format: tomoshabin qancha un solishni bilish uchun 12 daqiqalik videoni bir necha marta oldinga-orqaga suradi. Videodan matn oladigan vositalarning aksariyati faqat transkriptni o‘qiydi, ammo haqiqiy pazandachilik videolarida miqdorlar odatda ekranda matn bo‘lib chiqadi va kamdan-kam ovoz chiqarib aytiladi. Foydali konverter ovoz bilan birga ekranni ham o‘qishi, miqdorni esa taxmin qilgandan ko‘ra bo‘sh qoldirishi kerak edi.

Biz nima qildik

Yechim

Ikki signalni birlashtiradigan FastAPI konveyerini qurdik. Whisper-large-v3 diktor nutqini vaqt belgili qadamlarga aylantiradi, Qwen2.5-VL esa tanlab olingan kalit kadrlardan masalliqlar va ekrandagi miqdorlarni o‘qiydi. Gemma ikkalasini bitta tekshirilgan retseptga birlashtiradi, har bir maydon qayerdan olinganini qayd etadi va uni schema.org Recipe JSON-LD ko‘rinishida eksport qiladi. Yig‘ishsiz (no-build) veb-ilovada havolani qo‘yish, jarayonni jonli kuzatish va videoning istalgan qadamiga o‘tish mumkin.

Texnologiyalar
PythonFastAPIWhisperQwen2.5-VLGemmaAMD ROCmyt-dlpFFmpegDockerSQLite
Parda ortida

Loyiha qanday yaratildi

Pazandachilik kontenti uchun videoni retseptga aylantiruvchi SI

RecipeReel pazandachilik yoki o‘quv videosini bitta toza, tartibli retseptga aylantiradi. YouTube, TikTok yoki Instagram Reels havolasini qo‘ying yoki faylni yuklang. Natijada quyidagilarni olasiz:

  • miqdori va o‘lchov birligi ko‘rsatilgan masalliqlar
  • ketma-ket qadamlar — har biri videoda qaysi soniyada bo‘lishi bilan belgilangan
  • tayyorlash, pishirish va umumiy vaqt
  • jihozlar va maslahatlar
  • taxminiy ozuqaviy qiymat jadvali

Natija JSON yoki retsept sayti to‘g‘ridan-to‘g‘ri chop eta oladigan schema.org/Recipe JSON-LD ko‘rinishida chiqadi.

Biz uni AMD Developer Hackathon: ACT II’ning 3-yo‘nalishi (Track 3) uchun uch kunda qurdik. Kod MIT litsenziyasi ostida va GitHub’da ochiq. Jonli demo butun konveyerni mock rejimida ishga tushiradi.

Asosiy imkoniyatlar

  • Transkript va ekrandagi matnni birlashtirish — diktor nutqi qadamlar tartibi va texnikani beradi. Kalit kadrlardagi vizual tahlil va matnni tanib olish esa mualliflar ko‘rsatadigan, lekin aytmaydigan aniq miqdorlarni beradi.
  • Vaqt belgili qadamlar — har bir qadam boshlanish vaqtini saqlaydi, shuning uchun veb-ilova joylashtirilgan videoni aynan o‘sha lahzaga o‘tkaza oladi.
  • Har bir maydonning manbasi — har bir masalliq «aytilgan», «ekranda» yoki «xulosa qilingan» deb belgilanadi. Noma’lum miqdor o‘ylab topilmaydi — null bo‘lib qoladi.
  • schema.org Recipe eksporti — alohida endpoint masalliqlar, HowToStep ko‘rsatmalari, vaqtlar, jihozlar va ozuqaviy qiymat bilan JSON-LD qaytaradi.
  • Havola yoki fayl — havolalar yt-dlp bilan yuklab olinadi, yuklangan fayllar esa o‘sha konveyerdan o‘tadi.
  • Jonli jarayon — vazifalar asinxron ishlaydi va har bir bosqichni Server-Sent Events orqali jonli uzatadi.
  • Uchinchi tomonsiz botlardan himoya — ajratib olish endpoint’larini o‘z serverimizdagi Altcha proof-of-work CAPTCHA qo‘riqlaydi. Uning topshiriqlari imzolangan, muddati tugaydi va faqat bir marta ishlatilishi mumkin.

Arxitektura va texnologiyalar

Qayta ishlash konveyeri

Har bir vazifa sakkiz bosqichdan o‘tadi:

  1. Videoni qabul qilish.
  2. FFmpeg bilan 16 kHz audioni ajratib olish.
  3. Taxminan 24 ta vaqt belgili kalit kadrni tanlab olish.
  4. Audioni Whisper-large-v3 bilan matnga o‘girish.
  5. Kadrlarni Qwen2.5-VL bilan o‘qish.
  6. Gemma yordamida 0 haroratda, JSON sxemasi bilan cheklangan holda bitta retsept tuzish.
  7. Natijani tekshirish, o‘lchov birliklarini normallashtirish va takroriy masalliqlarni olib tashlash.
  8. Retseptni SQLite’da saqlash.

Modellar va uskunalar

Nutq va tasvir tahlili — og‘ir, o‘tkazuvchanlikka bog‘liq bosqichlar, shuning uchun ular ROCm orqali AMD Instinct MI300X GPU’larida ishlashga moslab qurilgan. ROCm PyTorch o‘zini CUDA sifatida ko‘rsatadi, shuning uchun bir xil kod noutbuk CPU’sida ham, CI’da ham, GPU’da ham ishlaydi. Bitta notebook ikkala modelni MI300X’da ishga tushiradi.

Sintez almashtirsa bo‘ladigan yo‘nalishlarga ega, OpenAI bilan mos yagona mijoz orqali o‘tadi: Google AI Studio’dagi Gemma 4, Fireworks AI’dagi tezkor model yoki vLLM bilan o‘z serverimizda ishlaydigan Gemma. Ular orasida almashish — faqat sozlamani o‘zgartirish. Haqiqiy YouTube Short’da boshidan oxirigacha tekshirilgan bir ishga tushirishda kadrlarni Gemini 2.5 Flash o‘qidi, retseptni esa Gemma 4 yozdi.

Production’da YouTube to‘sig‘idan o‘tish

Jonli server data-markaz IP manzilida ishlaydi va YouTube undan yuklab olishni to‘sib qo‘ydi. Data-markaz va provayder (ISP) proksilarini sinab ko‘rdik, so‘ng YouTube’dan yuklab olishni xostingdagi yuklab olish API’siga o‘tkazdik, yt-dlp’ni esa zaxira sifatida qoldirdik. Ajratib oluvchining xom xatolari o‘rniga faylni to‘g‘ridan-to‘g‘ri yuklashni taklif qiladigan xotirjam xabar ko‘rsatiladi, shuning uchun botlarni bloklash haqidagi xabarlar foydalanuvchilarga hech qachon yetib bormaydi.

Veb-ilova

Frontend — API tomonidan uzatiladigan, o‘z-o‘zidan yetarli sof HTML, CSS va JavaScript ilova. Kompyuterlarda jurnal uslubidagi maket, telefonlarda esa ekranni to‘liq egallaydigan ilova maketi ko‘rsatiladi. Unda retsept sahifasi, pishirish rejimi, qidiruvli kutubxona va haqiqiy ajratib olish vazifasini ishga tushiradigan havola orqali qo‘shish oqimi bor.

Sifat

Har bir bosqich mock varianti bor almashtiriladigan provayder, shuning uchun servis doim ishga tushadi. Mock rejimi demo va CI uchun to‘plamdagi namunalar (fixture) asosida haqiqiy kod yo‘lini ishlatadi. Test to‘plamida 24 ta muvaffaqiyatli test bor, yengil (slim) va ROCm Docker obrazlari ham qo‘shilgan.

Tartibli retsept ma’lumotlari nega muhim

Videoni retseptga aylantiruvchi vositaning foydasi uning natijasi bilan o‘lchanadi. schema.org Recipe mikrorazmetkasi retsept sahifalariga Google’ning retseptlar uchun kengaytirilgan natijalarida (rich results) chiqish imkonini beradi, ovqatlanish rejalashtiruvchilari va oziq-ovqat xaridi integratsiyalari ham aynan shu formatni qabul qiladi. Shuning uchun RecipeReel shunchaki tartibliroq transkript emas, standart tuzilmalangan ma’lumotlar chiqaradi.

Tegishli ishlar

RecipeReel — sun’iy intellekt integratsiyasi va avtomatlashtirish bo‘yicha ishlarimizdan biri. LectureLoom xuddi shu konveyerni ma’ruza videolariga qo‘llaydi. Legible, Testify va Keystone ham shu xakatonda yaratilgan.

Video namoyish

Mahsulot qanday ishlaydi

Birga yaratamiz

RecipeReel kabi loyiha kerakmi?

Mahsulotingiz nima qilishi kerakligini ayting. Ish hajmini belgilaymiz, muddatlarni rejalashtiramiz va qat’iy narx yuboramiz — bepul va davom ettirish majburiyatisiz.

Bepul konsultatsiya Majburiyatsiz Tezkor javob