4. Kunlik ishlarni AI bilan bajarish
Kunlik scheduler plan_version, ob-havo va sensor ma’lumotiga qarab vazifalarni yangilab turadi. Maqsad – fermer har tong “bugun nima qilishim kerak?” degan savolga aniq javob olsin.
🌱 KUNLIK ISHLAR (DAILY INTELLIGENT TASKS)
Maqsad: Fermer har tong “Bugun nima qilishim kerak?”, shuningdek “Keyingi 7 kun / 30 kunda nima kutyapti?” degan savollarga aniq va ishonchli javob olsin.
1️⃣ ASOSIY TUSHUNCHA (ENG MUHIM)
⚠️ Bu joyda ko‘pchilik xato qiladi.
❌ NOTO‘G‘RI yondashuv:
- Sezon reja → bo‘laklab kunlarga bo‘lib qo‘yish
- Ob-havo o‘zgarsa → e’tibor bermaslik
✅ TO‘G‘RI yondashuv (SEN QILMOQCHI BO‘LGAN YOL):
Bizda 3 qatlamli reja bo‘ladi:
Season Plan (statik, AI yaratgan)
↓
Dynamic Planner (server logikasi)
↓
Daily Tasks (AI + ob-havo + real holatga mos)
👉 Sezon plan yo‘qolmaydi, lekin kunlik ishlar undan DOIM moslashib chiqadi.
2️⃣ USER TOMONI (FERMER NIMA QILADI)
✅ 1. Fermer HECH QANDAY QO‘SHIMCHA ISH QILMAYDI
Kunlik ishlar:
- avtomatik yaratiladi
- avtomatik yangilanadi
Fermer faqat:
- Dashboard ochadi
- “Bugun / 7 kun / 30 kun” ko‘radi
✅ 2. Ixtiyoriy feedback:
- ✅ bajardim
- ❌ bajarmadim
- kechiktirdim
👉 Bu feedback AI uchun oltin.
3️⃣ SERVER TOMONI — KUNLIK SCHEDULER YURAGI
Serverda DailyTaskEngine degan modul bo‘ladi.
3.1. Serverga KIRADIGAN MA’LUMOTLAR (INPUTS)
✅ 1. Sezon reja (AI yaratgan)
- fazalar
- tavsiya etilgan kunlar
- muhim ishlar (ekish, gullash, yig‘im)
✅ 2. Ob-havo (REAL-TIME)
- bugun / ertaga
- 7 kunlik prognoz
- risklar (yomg‘ir, sovuq, issiq)
✅ 3. Sensor yoki kuzatuv (agar bo‘lsa)
- namlik
- harorat
- NDVI / o‘sish signali (keyinchalik)
✅ 4. Tarix:
- kecha nima bajarildi / bajarilmadi
- kechikkan ishlar
3.2. SERVER ICHIDA ISHLAYDIGAN ASOSIY LOGIKA
Har kuni tongda (cron yoki event):
START DAILY LOOP
↓
Load Active CropPlan
↓
Load SeasonPlan
↓
Load Weather Forecast
↓
Check Task Completion History
↓
Adjust Upcoming Tasks
↓
Generate Daily + Weekly + Monthly View
↓
Save + Notify User
4️⃣ SERVER → GEMINI: QANDAY VAZIFADA AI ISHLATILADI
⚠️ Juda muhim: AI har kuni boshidan reja tuzmaydi.
AI faqat:
- moslashtirish
- ustuvorlik berish
- “bugun nima muhim?” uchun ishlatiladi.
5️⃣ GEMINI GA YUBORILADIGAN FORMAT
✅ 5.1 SYSTEM PROMPT (AHAMYATI JUDA KATTA)
Siz agronom bo‘lib, mavjud sezon rejasini kundalik ob-havo va real holatga moslashtiruvchi yordamchisiz.
Sizga:
- tanlangan ekin va sezondagi umumiy reja
- bugungi sana
- ob-havo prognozi
- bajarilgan va bajarilmagan oldingi vazifalar
beriladi.
Sizning vazifangiz:
1) Bugun bajarilishi ZARUR bo‘lgan ishlarni aniqlash
2) Keyingi 7 kunlik va 30 kunlik istiqbol ishlarini ko‘rsatish
3) Ob-havo yoki real holat tufayli kechiktirish yoki oldinga surish kerak bo‘lgan ishlarni belgilash
4) Fermerga juda sodda va aniq tilda tushuntirish
Qoidalar:
- Sezon rejasidan chiqib ketmang, faqat moslashtiring
- Xavfli ob-havo bo‘lsa, ishni xavfsiz kunga suring
- Javob faqat JSON formatda bo‘lsin
- Javob o‘zbek tilida bo‘lsin
Faqat JSON qaytaring, boshqa matn yozmang.
✅ 5.2 USER CONTENT (SERVER TO‘PLAGAN DATA)
{
"date_today": "2025-04-12",
"crop": "loviya",
"season_plan_phase": "o'sish",
"season_plan_tasks": [
{ "day": 15, "task": "Yengil sug'orish" },
{ "day": 30, "task": "Begona o'tlarni yo'qotish" }
],
"recent_activity": {
"yesterday": "Sug'orish bajarildi",
"delayed_tasks": ["Begona o'tlarni yo'qotish"]
},
"weather_forecast": {
"today": { "rain": false, "temp": "issiq" },
"next_7_days": [
{ "day": "dushanba", "rain": true },
{ "day": "seshanba", "rain": true }
]
}
}
6️⃣ GEMINI ICHKI MANTIQ (SODDA, LEKIN AQLLI)
AI shunday fikrlaydi:
- Bugun yomg‘ir YO‘Q → sug‘orish mumkin
- Ammo 2 kundan keyin yomg‘ir BOR → bugungi ishni biroz kamaytir
- O‘tgan ish kechikkan → bugun ustuvorlik ber
- Sezon hali o‘sish fazasida → yig‘im haqida gapirma
7️⃣ GEMINI QAYTARADIGAN NATIJA (EXPECTED OUTPUT)
{
"today_tasks": [
{
"task": "Begona o'tlarni tozalash",
"reason_uz": "Avvalgi kunda bajarilmagan va ob-havo bugun qulay",
"priority": "high"
},
{
"task": "Yengil sug'orish",
"reason_uz": "Bugun yomg'ir yo‘q, ammo yaqin kunlarda yog'ingarchilik kutilmoqda",
"priority": "medium"
}
],
"next_7_days": [
{
"day": "Dushanba",
"task": "Sug‘orishni to‘xtatish",
"note": "Yomg‘ir kutilmoqda"
}
],
"next_30_days_summary_uz": "Keyingi oy davomida asosan begona o'tlar nazorati va sug‘orish ishlari ustuvor bo‘ladi.",
"confidence": 0.88,
"disclaimer_uz": "Kundalik ishlar ob-havo va real holatga qarab yangilanadi."
}
8️⃣ SERVER SO‘NGGI BOSQICHDA NIMA QILADI
Backend:
- AI natijasini DailyTasks jadvaliga yozadi
- “Bugun”ni calendar va push notificationga joylaydi
- “7 kun / 30 kun” ni forecast ko‘rinishida saqlaydi
- Agar ob-havo keskin o‘zgarsa → qayta AI chaqiradi
9️⃣ FERMER NIMANI KO‘RADI (UX MAQSAD)
✅ “Bugun bajariladigan ishlar” ✅ “Ertaga / 1 hafta / 1 oy” ✅ “Nega bu ish muhim?” qisqa tushuntirish ✅ Ishonch: tizim jonli va moslashuvchan
🔟 TEST NATIJASI
{
"kunlik_reja_tahlili": {
"bugungi_sana": "2025-04-12",
"ekin": "Loviya",
"joriy_faza": "Erta o'sish",
"tushuntirish_fermer_uchun": "Bugun havo **issiq** va yomg'ir yo'q, lekin ertangi va indingi kunlarga yomg'ir kutilmoqda. Kechiktirilgan **begona o'tlarni yo'qotish** ishini zudlik bilan, yomg'irlar boshlanishidan oldin tugatishimiz kerak. Bu ishni keyinga sursak, nam yerda begona o'tlar yanada kuchayadi.",
"bugun_bajarilishi_shart": {
"vazifa": "**Begona o'tlarni yo'qotish (kechiktirilgan ish)**",
"asoslash": "Yomg'ir boshlanishidan oldin tuproq yuzasi quruq paytda mexanik ishlov berish yoki qo'lda yulish samarali bo'ladi. Bu ish 'delayed_tasks' ro'yxatida turibdi, shuning uchun eng yuqori prioritet.",
"holat": "Zarur"
},
"keyingi_reja_istiqbollari": {
"yetti_kunlik_reja": [
{
"muddat": "13-14 Aprel (Yomg'ir kunlari)",
"vazifa": "Dala ishlarini to'xtatish. Yerga kirish taqiqlanadi (tuproqni siqib qo'ymaslik uchun).",
"izoh": "Yomg'ir kutilayotgani sababli sug'orishni to'xtating. Motokultivatorni yig'ishtiring."
},
{
"muddat": "15 Aprel",
"vazifa": "**Yengil sug'orish** (Rejadagi ish – agar yomg'ir yetarli bo'lmasa).",
"izoh": "Agar yomg'ir tuproqni yaxshi namlagan bo'lsa, rejadagi sug'orishni bekor qilish yoki bir necha kunga surish kerak. Yomg'ir miqdoriga qarab qaror qabul qilinadi."
}
],
"o'ttiz_kunlik_reja": [
"Ekinning unib chiqishini va dastlabki o'sishini kuzatish.",
"Qator oralig'ida tuproq qotib qolmasligi uchun yumshatish ishlarini rejalashtirish.",
"O'simlikning ozuqa yetishmovchiligi (rangining o'zgarishi) belgilari bo'lsa, ikkinchi oziqlantirishni rejalashtirish."
]
},
"reja_o'zgartirishlari": [
{
"vazifa": "15-kunda rejalashtirilgan Yengil sug'orish",
"o'zgarish": "**Kechiktirish/Bekor qilish ehtimoli.**",
"asoslash": "Keyingi 7 kunda kutilayotgan yomg'ir ushbu sug'orishni bekor qilishi mumkin. 15-aprel kuni yomg'ir namligi yetarli yoki yetarli emasligini tekshirgandan so'ng qaror qiling."
},
{
"vazifa": "Begona o'tlarni yo'qotish (Kechiktirilgan ish)",
"o'zgarish": "**Bugunga surish.**",
"asoslash": "Bugun havo issiq va quruq – eng yaxshi imkoniyat. Yomg'ir boshlanishidan oldin bu ishni tugatish kerak."
}
]
}
}

