Kasu:
- Võimalus kasutada AI-d koodi ja töövoo genereerimisel ruumiandmete töötlemiseks QGIS-i ja Pythoniga (teegid nagu GeoPandas)
- Võimalus testida tehisintellekti loodud ruumikoodi väikeste näidisandmete põhjal ja kontrollida seda koordinaatsüsteemi ja geomeetria vigade suhtes
- Võimalus mõista andmete konfidentsiaalsust ja vajadust kontrollida tehisintellekti loodud skripti enne selle käivitamist tegelikel projektiandmetel.
Korduvad ruumilised ülesanded planeerimisüksuses (kihtide kärpimine, puhvrite joonistamine, pindalade arvutamine, tabelite kombineerimine) võtavad tunde ja tekitavad käsitsi tehes vigu. Neid toiminguid automatiseerivad kaks võimsat tasuta ja avatud lähtekoodiga tööriista: QGIS (töölaua GIS-tarkvara) ja Python (programmeerimiskeel ruumiandmete raamatukogudega, nagu GeoPandas, Shapely, Rasterio). AI on nende tööriistade jaoks koodi ja töövoo loomisel uskumatult kiire: see koostab ühelauselisest päringust töötava skripti. Kuid AI kirjutab koodi eeldustega, mida te ei näe – vale koordinaatsüsteem, vale ühik, toiming, mis kustutab vaikselt elemente. Seetõttu tuleb iga ruumikoodi, mida tehisintellekt toodab, enne tegelike projektiandmetega käivitamist väikese valimiga lugeda ja testida. See seade õpetab tehisintellektiga turvalist ruumiautomaatikat isegi siis, kui te ei tea, kuidas kodeerida.
Miks QGIS ja Python
QGIS võimaldab teil klõpsates analüüsida; Seda on lihtne õppida ja see sisaldab Pythoni konsooli. Python seevastu võimaldab korduvaid ülesandeid ühe korra kirjutada ja neid sadade failidena käivitada. GeoPandas on planeerijatele kõige praktilisem raamatukogu, mis ühendab tabeliandmed (pandad) geograafiaga: loeb kihte, filtreerib, joonistab puhvreid, arvutab alasid ühe koodireaga. AI kirjutab GeoPandase koodi väga hästi; Kuid kood, mis näeb hea välja, ei ole alati õige kood.
Ettevaatust: AI kirjutatud skript võib töötada ilma vigadeta ja anda ikkagi täiesti valesid tulemusi. "Töötatud" ja "õigesti" on kaks erinevat asja. Valideerimine ei seisne selles, et kood ebaõnnestub, vaid see, et tulemus vastab teadaolevale viitele.
Teine oluline mõiste on reprodutseeritavus: avalikus asutuses tehtud analüüsi peaks saama keegi teine kuude pärast samade sammudega korrata. Käsitsi klõpsates tehtud toiminguid ei mäletata ja neid ei saa auditeerida; samas kui Pythoni skript on nii töö salvestus kui ka reprodutseerib sama tulemust. Tehisintellektiga toodetud koodi salvestamine koos selle kommentaaridega tugevdab nii vastutust kui ka ettevõtte mälu. Seega püüdke "loetavale, kommenteeritavale ja salvestatud koodile", mitte "töötavale koodile". Hea harjumus on lisada iga skripti algusesse lühike kirjeldusplokk, kus on kirjas, millistel andmetel see töötab, mis kuupäeval ja mis eesmärgil.
AI-ga koodi genereerimise kuldreeglid
- Andke kontekst. Failivorming, CRS, veergude nimed, mida soovite teha.
- Küsi väikest. Lühikood, mis teeb ühte tööd, on turvalisem kui hiiglaslik skript.
- Küsi selgitust. Printige AI-le, mida iga koodirida teeb; Ärge käivitage koodi, millest te aru ei saa.
- Katsetage seda proovi peal. Esmalt proovige seda 10–20 kirjest koosneva näidisandmetega.
- Võrdle viitega. Võrrelge pindala/kaugust teadaoleva väärtusega.
- Tagasi üles. Ärge kunagi kirjutage põhiandmeid üle; töö koopiana.
Samm-sammult: turvaline ruumiline skript koos tehisintellektiga
- Selgitage ülesannet. "Valige krundikihist haljasalad, arvutage nende pindalad, kirjutage üle 5000 m² pindala eraldi faili."
- Tuvastage andmed. Vorming (GeoPackage/Shapefile), CRS, asjakohase veeru nimi.
- Prindi kood + kirjeldus AI-sse. Kommenteeri rida rea haaval.
- Laske teha CRS ja üksuse juhtimine. Pindala m² või kiht meetrilises CRS-is?
- Käitage näidisandmetel. Kontrollige tulemust visuaalselt.
- Kinnitage viitega. Võrrelge maatüki pindala selle omandiõiguse väärtusega.
- Käivitage see põhiandmetel, kirjutage väljund uude faili.
Nõrk viip / Tugev viip
Nõrk viip: "Arvuta maatükkide pindala."
AI kirjutab koordinaatsüsteemi, vormingut ja veergu teadmata; Väli võib ilmuda vales ühikus või vales CRS-is.
Tugev viip: "GeoPandase abil lugege GeoPackage'i kihti ("parcels.gpkg", meetermõõdustik riiklik süsteem, nagu CRS: EPSG:5254) ja kirjutage iga maatüki pindala m² uude veergu "area_m2". Kommenteerige iga koodi rida. Lisage rida enne, kui C-kihi arvutamine ei ole selles, kas see on ns. Kirjutage väljund uude faili, ärge muutke originaali."
Teine viip loob auditeeritava turvalise koodi, kuna see sisaldab CRS-i, üksust, turvalist väljundit ja kirjeldust.
Neli kopeeritavat malli
Ülesanne: Kirjutage lühike Pythoni kood, mis täidab GeoPandasega järgmise ülesande. Kommenteerige iga rida türgi keeles. Toiming: [...]Sisendfail: [...] (vorming, CRS: [...], asjakohane veerg: [...])Reegel: Ärge muutke algset faili, kirjutage väljund UUEsse faili.Enne töötamist kontrollige, kas CRS on meetriline; Kui ei, hoiatage.
Ülesanne: Selgitage rida rea haaval järgmist Pythoni/GeoPandase koodi ja märkige RISKID: milline rida võib andmeid kustutada/üle kirjutada, milline operatsioon eeldab CRS-i või helitugevust, milline samm oleks suurandmete puhul aeglane. koodi muutmine; lihtsalt selgita ja hoiata.Kood: [...]
Ülesanne: Enne selle koodi käivitamist tegelikel andmetel kirjutage väike TEST-plaan. Milliste näidisandmetega, millise eeldatava tulemusega, millise kontrollväärtusega seda valideerida? Andke kontrollnimekiri. Kood/tegevus: [...]
Ülesanne: Kirjeldage järgmist QGIS-i toimingut (klõpsamise sammud) nii QGIS-i menüütee kui ka samaväärse Pythoni/GeoPandase koodina. Täpsustage erinevused ja huvipunktid (CRS, ühik).Protsess: [...]
Tabel: sagedased ruumioperatsioonid ja nende lõksud
tehing
Mis teeb
Lõks AI koodis
kontrollimine
Välja konto
Leiab hulknurga ala
Väli on Geographic CRS-is mõttetu
Võrdlus teadaoleva piirkonnaga
Puhver
piiri ümber
Ühiku (kraad/meeter) viga
Meetriline CRS + mõõtmine
ruumiline liitmine
Seob kihte
Vale võti/dublikaat registreerimine
Kirje loenduse juhtimine
Klipp
lõiked koos pindalaga
Piiramatu andmete kadu
Võrrelge sisendit/väljundit
ümberprojitseerimine
CRS asendab
Vale sihtmärk CRS
EPSG koodi kinnitus
kolm minikarpi
Juhtum 1 – vaikne ülekirjutamine. Planeerija käivitab AI kirjutatud skripti otse aluskihil. Kood rakendab valesti filtri, kustutab poole kihist ja salvestab selle samasse faili. Kuna varukoopiat pole, lähevad päevi kestvad andmed kaotsi. Õppetund: väljund alati uude faili, põhiandmed alati üleliigsed.
Juhtum 2 – puhver vale seadmega. Üks meeskond taotleb koolidele 500 jala pikkust juurdepääsupuhvrit. AI kood töötab geo CRS-is; 500 "kraadine" puhver katab kogu kaardi. Kuna meeskond testib väikese valimiga, tabab see vea enne, kui see läheb põhiandmetesse; Lisab ja parandab projektsiooni meetrilisele CRS-ile. Testimise harjumus hoiab ära katastroofi.
Juhtum 3 – selgitav õpe. Planeerija, kes koodi ei tea, loob liitumiskoodi, lastes AI-l tõlgendada iga rida. Ta näeb kirjelduses "sellele reale langeb võrreldamatuid rekordeid" ja mõistab, et see kaotab mõned pakid; See küsib AI-lt versiooni, mis säilitab ka mittevastavuse. Koodist arusaamine on selle ohutu kasutamise eeltingimus.
Levinud vead
- Töötab otse põhiandmetel. Töötage alati koopiaga, kirjutades väljundi uude faili.
- Segades sõna "töötas" ja "õige". Veavaba kood võib anda valesid tulemusi; Kontrollige viitega.
- Eeldusel CRS ja maht. Kontrollige alati metrilist CRS-i ala ja vahemaa toimingute osas.
- Käivitate koodi, millest te aru ei saa. Seda on riskantne käivitada ilma selgitusi küsimata ja teadmata, mida read teevad.
- Jäta väike test vahele. Suurandmetele lülitumine näidisandmeid proovimata on kõige levinum veaallikas.
- Konfidentsiaalsete andmete andmine pilveseadmetele mõtlemata. Ärge jagage koodi genereerimisel tegelikke paki/isiku andmeid; Kasutage näidis-/anonüümseid andmeid.
Kokkuvõttes
QGIS ja Python (eriti GeoPandas) automatiseerivad planeerimisel korduvaid ruumiülesandeid; AI loob nende tööriistade jaoks kiiresti koodi. Kuid AI kirjutab koodi eeldustega, mida te ei näe: vale CRS, vale helitugevus, toimingud, mis kustutavad vaikselt andmeid. Ohutu kasutamine põhineb kuuel reeglil: andke kontekst, küsige väikest, hankige selgitus, testige näites, kontrollige viitega, varundage. "Töötatud" ei ole sama mis "õige". Isegi kui te koodi ei tunne, saate tehisintellektiga turvaliselt ruumilise automatiseerida, mõistes iga rida ja konfidentsiaalseid andmeid jagamata.
Rakenduse ülesanne
Valige korduv ruumiülesanne (nt kihi pindalade arvutamine ja läve ülaosa eraldamine). (1) Printige kood + rea kirjeldus AI-sse esimese malliga. (2) Kontrollige teise malliga sama koodi riske ja leidke vähemalt üks rida "võib kustutada andmed / eeldab CRSi". (3) Väljastage katseplaan kolmanda malliga: millised näidisandmed, milline kontrollväärtus. (4) Kirjutage üles kolm turvaetappi, mida teete enne koodi käivitamist pärisandmetel.
kontrollnimekiri
- [ ] Andsin tehisintellektile vormingu, CRS-i ja veeru konteksti.
- [ ] selgitasin koodi iga rida; Ma ei käivitanud koodi, millest ma aru ei saanud.
- [ ] Tahtsin lühikest ühe funktsiooniga koodi.
- [ ] Testisin seda väikeste näidisandmete peal ja kontrollisin tulemust visuaalselt.
- [ ] Kontrollisin tulemust teadaoleva võrdlusväärtusega.
- [ ] Olen varundanud põhiandmed; Kirjutasin väljundi uude faili.
- [ ] Ma ei andnud pilveseadmele tegelikke konfidentsiaalseid andmeid; Kasutasin anonüümseid/näidisandmeid.