Ieguvumi:
- Spēja izmantot AI kodu un darbplūsmas ģenerēšanā telpisko datu apstrādei ar QGIS un Python (bibliotēkas, piemēram, GeoPandas)
- Spēja pārbaudīt mākslīgā intelekta radīto telpisko kodu uz maziem paraugdatiem un pārbaudīt to attiecībā pret koordinātu sistēmas un ģeometrijas kļūdām
- Spēja izprast datu konfidencialitāti un nepieciešamību pārbaudīt mākslīgā intelekta ģenerēto skriptu pirms tā palaišanas reālos projekta datos.
Atkārtoti telpiskie uzdevumi plānošanas vienībā (slāņu apgriešana, buferu zīmēšana, laukumu aprēķināšana, tabulu apvienošana) aizņem stundas un rada kļūdas, veicot manuāli. Ir divi jaudīgi, bezmaksas un atvērtā pirmkoda rīki, kas automatizē šos uzdevumus: QGIS (darbvirsmas ĢIS programmatūra) un Python (programmēšanas valoda ar telpisko datu bibliotēkām, piemēram, GeoPandas, Shapely, Rasterio). AI neticami ātri ģenerē kodu un darbplūsmu šiem rīkiem: tas izstrādā darba skriptu no viena teikuma pieprasījuma. Bet AI raksta kodu ar pieņēmumiem, kurus jūs neredzat — nepareiza koordinātu sistēma, nepareiza vienība, darbība, kas klusi dzēš elementus. Tāpēc katrs telpiskais kods, ko rada AI, ir jālasa un jāpārbauda nelielā paraugā, pirms tas tiek palaists ar reāliem projekta datiem. Šī vienība māca drošu telpisko automatizāciju ar AI, pat ja jūs nezināt, kā kodēt.
Kāpēc QGIS un Python
QGIS ļauj analizēt, noklikšķinot; To ir viegli iemācīties, un tajā ir iekļauta Python konsole. No otras puses, Python ļauj vienreiz uzrakstīt atkārtotus uzdevumus un palaist tos simtiem failu. GeoPandas ir vispraktiskākā bibliotēka plānotājiem, kas apvieno tabulas datus (pandas) ar ģeogrāfiju: nolasa slāņus, filtrē, zīmē buferus, aprēķina apgabalus ar vienu koda rindiņu. AI ļoti labi raksta GeoPandas kodu; Bet kods, kas izskatās labi, ne vienmēr ir pareizais kods.
Uzmanību: AI rakstīts skripts var darboties bez kļūdām un joprojām radīt pilnīgi nepareizus rezultātus. “Nostrādāts” un “pareizi” ir divas dažādas lietas. Validācija nav tā, ka kods neizdodas, bet gan tas, ka rezultāts atbilst zināmai atsaucei.
Vēl viens svarīgs jēdziens ir reproducējamība: valsts iestādē veikto analīzi vajadzētu būt iespējai pēc mēnešiem atkārtot kādam citam ar tām pašām darbībām. Darbības, kas veiktas, noklikšķinot manuāli, netiek atcerētas un nevar tikt pārbaudītas; tā kā Python skripts ir gan darba ieraksts, gan atveido vienu un to pašu rezultātu. Ar AI izveidotā koda glabāšana kopā ar tā komentāriem stiprina gan atbildību, gan uzņēmuma atmiņu. Tāpēc tiecieties uz "lasāmu, komentējamu un glabājamu kodu", nevis "darba kodu". Labs ieradums ir katra skripta sākumā pievienot īsu apraksta bloku, norādot, uz kādiem datiem tas darbojas, kurā datumā un kādam nolūkam.
Zelta likumi koda ģenerēšanai ar AI
- Dodiet kontekstu. Faila formāts, DRS, kolonnu nosaukumi, ko vēlaties darīt.
- Jautājiet mazo. Īss kods, kas veic vienu darbu, ir drošāks nekā milzīgs skripts.
- Lūdziet paskaidrojumus. Izdrukājiet AI, ko dara katra koda rindiņa; Nepalaidiet kodu, kuru nesaprotat.
- Pārbaudiet to paraugā. Vispirms izmēģiniet to 10–20 ierakstu datu paraugā.
- Salīdziniet ar atsauci. Salīdziniet apgabalu/attālumu ar zināmu vērtību.
- Dublējiet. Nekad nepārrakstīt pamatdatus; darbs kopijā.
Soli pa solim: drošs telpiskais skripts ar AI
- Precizējiet uzdevumu. "Izvēlieties zaļās zonas no zemes gabala slāņa, aprēķiniet to platības, ierakstiet atsevišķā failā platību virs 5000 m²."
- Identificējiet datus. Formāts (GeoPackage/Shapefile), DRS, attiecīgās kolonnas nosaukums.
- Drukājiet kodu + aprakstu AI. Komentējiet rindiņu pēc rindiņas.
- Veiciet DRS un vienības kontroli. Platība m² vai slānis metriskajā CRS?
- Palaist, izmantojot datu paraugus. Pārbaudiet rezultātu vizuāli.
- Pārbaudiet ar atsauci. Salīdziniet zemes gabala platību ar tā īpašumtiesību dokumenta vērtību.
- Palaidiet to pamatdatos, ierakstiet izvadi jaunajā failā.
Vāja uzvedne / spēcīga uzvedne
Vāja uzvedne: "Aprēķināt paku platību."
AI raksta, nezinot koordinātu sistēmu, formātu un kolonnu; Lauks var parādīties nepareizajā vienībā vai nepareizajā DRS.
Spēcīga uzvedne: "Izmantojot GeoPandas, izlasiet GeoPackage slāni ("parcels.gpkg", metriska valsts sistēma, piemēram, CRS: EPSG:5254) un ierakstiet katra zemes gabala laukumu m² jaunā kolonnā "area_m2". Komentējiet katru koda rindiņu. Pievienojiet rindiņu pirms C slāņa, ja tas nav aprēķins. Ierakstiet izvadi jaunā failā, nemainiet sākotnējo.
Otrā uzvedne rada auditējamu, drošu kodu, jo tajā ir ietverta DRS, vienība, droša izvade un apraksts.
Četras kopējamas veidnes
Uzdevums: uzrakstiet īsu Python kodu, kas ar GeoPandas veic šādu uzdevumu. Komentējiet katru rindiņu turku valodā. Darbība: [...]Ievades fails: [...] (formāts, CRS: [...], attiecīgā kolonna: [...]) Noteikums: Nemainiet sākotnējo failu, ierakstiet izvadi JAUNĀ failā. Pirms darbības pārbaudiet, vai CRS ir metriska; Ja nē, brīdiniet.
Uzdevums: Izskaidrojiet šādu Python/GeoPandas kodu rindiņu pa rindiņai un atzīmējiet RISKUS: kurā rindā var dzēst/pārrakstīt datus, kura darbība uzņemas DRS vai apjomu, kurš solis būtu lēns uz lielajiem datiem. koda maiņa; vienkārši paskaidrojiet un brīdiniet.Kods: [...]
Uzdevums: pirms šī koda palaišanas uz reāliem datiem uzrakstiet nelielu TEST plānu. Ar kādiem izlases datiem, ar kādu sagaidāmo rezultātu, ar kādu atsauces vērtību tas būtu jāvalidē? Sniedziet kontrolsarakstu. Kods/darbība: [...]
Uzdevums: Aprakstiet šo QGIS darbību (klikšķa darbības) gan kā QGIS izvēlnes ceļu, gan līdzvērtīgu Python/GeoPandas kodu. Norādiet atšķirības un interešu punktus (DRS, vienība). Process: [...]
Tabula: biežas telpiskās darbības un to nepilnības
darījums
Ko dara
Slazds AI kodā
verifikācija
Lauka konts
Atrod daudzstūra laukumu
Ģeogrāfiskajā DRS laukam nav nozīmes
Salīdzinājums ar zināmo apgabalu
Buferis
reģionā ap robežu
Mērvienības (grādi/metrs) kļūda
Metriskais CRS + mērījums
telpiskā agregācija
Saista slāņus
Nepareiza atslēga/reģistrācijas dublikāts
Ierakstu skaita kontrole
Klips
griezumi ar laukumu
Datu zudums ārpus robežām
Salīdziniet ievadi/izvadi
pārprojicēšana
DRS aizstāj
Nepareizs mērķa DRS
EPSG koda apstiprinājums
trīs mini futrāļi
1. gadījums — klusa pārrakstīšana. Plānotājs palaiž skriptu, ko AI rakstījis tieši uz pamata slāņa. Kods nepareizi lieto filtru, izdzēš pusi no slāņa un saglabā tajā pašā failā. Tā kā nav dublējuma, tiek zaudēti dati, kas ilgst vairākas dienas. Nodarbība: izvade vienmēr uz jaunu failu, pamatdati vienmēr ir lieki.
2. gadījums — buferis ar nepareizu vienību. Viena komanda pieprasa 500 pēdu piekļuves buferi skolām. AI kods darbojas ģeogrāfiskajā DRS; 500 "grādu" buferis aptver visu karti. Tā kā komanda pārbauda nelielu izlasi, tā uztver kļūdu, pirms tā nonāk galvenajos datos; Pievieno un labo projekciju metrikas CRS. Pārbaudes ieradums novērš katastrofu.
3. gadījums — skaidrojošā mācīšanās. Plānotājs, kurš nezina kodu, izveido pievienošanās kodu, liekot AI interpretēt katru rindiņu. Viņš aprakstā redz "šī rinda nokrīt nesalīdzināmus ierakstus" un saprot, ka tādējādi tiks zaudētas dažas pakas; Tas pieprasa AI versiju, kas arī saglabā neatbilstības. Koda izpratne ir priekšnoteikums tā drošai lietošanai.
Biežas kļūdas
- Darbojas tieši uz pamatdatiem. Vienmēr strādājiet ar kopiju, ierakstot izvadi jaunajā failā.
- Sajaukt “strādāja” ar “pareizi”. Kods bez kļūdām var radīt nepareizus rezultātus; Pārbaudiet ar atsauci.
- Pieņemot, ka DRS un apjoms. Vienmēr pārbaudiet metrisko CRS, lai uzzinātu darbības apgabalā un attālumā.
- Palaižot nesaprotamu kodu. Ir riskanti to palaist, neprasot paskaidrojumus un nezinot, ko dara rindas.
- Izlaidiet mazo testu. Pārslēgšanās uz lielajiem datiem, neizmēģinot datu paraugus, ir visizplatītākais kļūdu avots.
- Konfidenciālu datu nodošana mākoņa ierīcēm bez domāšanas. ģenerējot kodu, nekopīgojiet reālus paku/personas datus; Izmantojiet paraugus/anonīmus datus.
Rezumējot
QGIS un Python (īpaši GeoPandas) plānošanā automatizē atkārtotus telpiskos uzdevumus; AI ātri ģenerē kodu šiem rīkiem. Bet AI raksta kodu ar pieņēmumiem, kurus jūs neredzat: nepareiza DRS, nepareizs skaļums, darbības, kas klusi dzēš datus. Drošas lietošanas pamatā ir seši noteikumi: sniedziet kontekstu, pieprasiet nelielu informāciju, saņemiet paskaidrojumus, pārbaudiet, piemēram, pārbaudiet, izmantojot atsauci, dublējiet. “Nostrādāts” nav tas pats, kas “pareizi”. Pat ja nezināt kodu, varat veikt drošu telpisko automatizāciju, izmantojot AI, izprotot katru rindiņu un nekopīgojot konfidenciālus datus.
Lietojumprogrammas uzdevums
Izvēlieties atkārtotu telpisku uzdevumu (piemēram, slāņa laukumu aprēķināšana un sliekšņa augšdaļas atdalīšana). (1) Drukājiet kodu + rindiņas aprakstu AI, izmantojot pirmo veidni. (2) Pārbaudiet tā paša koda riskus, kas attiecas uz otro veidni, un atrodiet vismaz vienu rindiņu "var dzēst datus/uzņemas DRS". (3) Izvadiet testa plānu ar trešo veidni: kuri datu paraugi, kāda atsauces vērtība. (4) Pierakstiet trīs drošības darbības, kuras veiksit pirms koda palaišanas reāliem datiem.
kontrolsaraksts
- [ ] Es norādīju AI formātu, DRS un kolonnas kontekstu.
- [ ] Es izskaidroju katru koda rindiņu; Es nepalaidu kodu, kuru es nesapratu.
- [ ] Es gribēju īsu, vienas funkcijas kodu.
- [ ] Es to pārbaudīju uz maziem izlases datiem un vizuāli pārbaudīju rezultātu.
- [ ] Es pārbaudīju rezultātu ar zināmu atsauces vērtību.
- [ ] Esmu izveidojis pamatdatu dublējumu; Es ierakstīju izvadi jaunajā failā.
- [ ] Es nesniedzu faktiskos konfidenciālos datus mākoņa ierīcei; Es izmantoju anonīmus / paraugdatus.