चैटजीपीटी के साथ कोडिंग
हाल ही में, मुझे OpenAI द्वारा विकसित एक ai चैट बॉट, ChatGPT के बारे में पता चला, जो उल्लेखनीय मानवीय तरीके से उपयोगकर्ताओं को जवाब देने में सक्षम है। न केवल चैट जीपीटी पाठ का उपयोग करके प्रतिक्रिया दे सकता है, बल्कि आप इसे कोड लिखने के लिए भी कह सकते हैं। वास्तव में, एक परिचित ने हाल ही में मुझे बताया कि उसने शहरी डेटा विज्ञान में अपने परास्नातक के लिए निबंध लिखने और कोड लिखने दोनों के लिए अपने कुछ होमवर्क करने के लिए चैटजीपीटी का इस्तेमाल किया।
जैसा कि कोई है जो अपने काम के अधिकांश घंटे कोडिंग में बिताता है, मेरे लिए चैट बॉट लिखने वाला कोड अविश्वसनीय रूप से रोमांचक लगता है (उन सभी घंटों के बारे में सोचें जो मैं बचा सकता था!) और थोड़ा डरावना (क्या इसका मतलब है कि मैं एक से बाहर हो जाऊंगा? कुछ वर्षों में नौकरी?) . मैंने विशेष रूप से पायथन के साथ स्थानिक डेटा विश्लेषण के लिए चैट GPT की कोडिंग क्षमताओं को आज़माने का निर्णय लिया। यह लेख कुछ पहले परिणाम और मेरे पहले विचार दिखाता है।
इस लेख के लिए, मैंने चैट जीपीटी को एक विशिष्ट कार्य करने के लिए कहा जो मुझे अक्सर करना पड़ता है: एक बहुभुज (देश, शहर या नगर पालिका का आकार हो सकता है) को कोशिकाओं के एक ग्रिड में बदल दें जहां आंकड़ों को आसानी से एकत्र किया जा सके।
शुरू करने से पहले, वास्तव में चैट GPT क्या है? मैंने यह सवाल चैटबॉट से ही पूछा, और यह उसकी प्रतिक्रिया है:
GPT ("जनरेटिव प्री-ट्रेनिंग ट्रांसफार्मर" के लिए संक्षिप्त) OpenAI द्वारा विकसित एक प्रकार का भाषा मॉडल है। यह एक तंत्रिका नेटवर्क है जिसे उदाहरणों के एक बड़े डेटासेट के अनुक्रम में अगले शब्द की भविष्यवाणी करके मानव-जैसा पाठ उत्पन्न करने के लिए प्रशिक्षित किया गया है। चैट जीपीटी चैट अनुप्रयोगों में इस मॉडल के उपयोग को संदर्भित करता है, जहां इसका उपयोग वास्तविक समय में उपयोगकर्ता संदेशों की प्रतिक्रिया उत्पन्न करने के लिए किया जा सकता है। यह बातचीत के संदर्भ को समझकर और उचित प्रतिक्रिया उत्पन्न करके बातचीत जारी रखने में सक्षम होने के लिए डिज़ाइन किया गया है।
चलो शुरू करो!
सबसे पहले, मैंने चैट GPT से पूछा, "बहुभुज के भीतर एक जियोडेटाफ़्रेम ग्रिड बनाएं", और यह उसकी प्रतिक्रिया थी:
import geopandas as gpd
# create a polygon
polygon = gpd.GeoDataFrame({'geometry': gpd.GeoSeries([Polygon([(0,0), (0,1), (1,1), (1,0)])])})
# create a grid of geodataframe within the polygon
grid = gpd.gridify(polygon, cell_size=0.1, geometry='Polygon')
# plot the grid
grid.plot()
हालाँकि, एक और अजगर मॉड्यूल है, जिसे कहा जाता है gridify, इसलिए शायद चैटबॉट इससे भ्रमित हो गया, यहां लिंक देखें । shapelyयह उपयोग करने से पहले विशेषता को आयात करना भी भूल गया Polygon, लेकिन वह केवल एक मामूली समस्या थी।
चैट जीपीटी के बारे में दिलचस्प बात यह है कि आप इसके साथ लगातार बातचीत कर सकते हैं, और यह आपके पिछले इंटरैक्शन को याद रखेगा। इसलिए मैंने कोड का एक कार्यशील टुकड़ा प्राप्त करने का प्रयास करने के लिए एक अनुवर्ती प्रश्न पूछा। तो मैंने पूछा, "मैंने इस कोड को आजमाया लेकिन त्रुटि मिली" मॉड्यूल 'जियोपैन्डस' में कोई विशेषता नहीं है 'ग्रिडीफाई''। क्या आप इसे मेरे लिए ठीक कर सकते हैं?", और यह उसकी प्रतिक्रिया थी:
जबकि बॉट ने दावा किया था कि shapelyविशेषता है gridify, मुझे पता चला कि जब मैंने कोड चलाया तो यह सच नहीं था। गुण भी shapelyनहीं है ।gridify
इसलिए मैंने एक और फॉलो-अप प्रश्न पूछा, "मैंने कोड की कोशिश की लेकिन त्रुटि संदेश मिला" शेपली.ग्रिडिफाई नाम का कोई मॉड्यूल नहीं। कोई अन्य विकल्प?"
फिर बॉट ने आत्मविश्वास से मुझे बताया कि पुस्तकालय का हिस्सा gridify हैshapely , लेकिन नए संस्करणों में हटा दिया गया है - यह भी सच नहीं है जहां तक मुझे पता है।
इसके द्वारा लिखा गया कोड ... एक चौकोर लूप, जो कि मैं जो खोज रहा था, उससे बहुत दूर है। ईमानदारी से कहूं तो मुझे यह काफी प्रफुल्लित करने वाला लगा।
दूसरा प्रयास: यह काम किया!
चैट GPT के साथ मेरी पहली बातचीत स्पष्ट रूप से बहुत अच्छी नहीं चल रही थी, इसलिए मैंने फिर से शुरू करने का फैसला किया, और अपना प्रश्न अधिक स्पष्ट रूप से पूछा। मैंने इसे "जियोडेटाफ्रेम के रूप में कोशिकाओं का ग्रिड बनाने के लिए अजगर कोड" पूछा, और यहां इसकी प्रतिक्रिया है:
import geopandas as gpd
from shapely.geometry import Polygon
# Define the bounds of the grid
min_x, min_y = 0, 0
max_x, max_y = 10, 10
# Define the size of the cells in the grid
cell_width, cell_height = 1, 1
# Define the projection to use
crs = "EPSG:4326" # WGS84
# Initialize an empty list to store the grid cells
grid_cells = []
# Iterate over the bounds of the grid and create a Polygon object for each cell
for x in range(min_x, max_x, cell_width):
for y in range(min_y, max_y, cell_height):
# Define the coordinates of the cell
cell_coords = [(x, y), (x+cell_width, y), (x+cell_width, y+cell_height), (x, y+cell_height)]
# Create the Polygon object
cell = Polygon(cell_coords)
# Add the Polygon to the list
grid_cells.append(cell)
# Create the GeoDataFrame
gdf = gpd.GeoDataFrame(geometry=grid_cells, crs=crs)
# Visualize the grid
gdf.plot()
तो चैट जीपीटी वास्तव में स्थानिक डेटा विज्ञान के लिए पायथन में सरल कोड लिखने में सक्षम है, जब तक कि इसे एक अच्छी तरह से लिखित और स्पष्ट प्रश्न दिया जाता है।
अंतिम विचार
चैटजीपीटी के साथ यह संक्षिप्त प्रयोग चैटबॉट और शायद एआई के बारे में दो दिलचस्प बातों पर प्रकाश डालता है।
सबसे पहले, हम देख सकते हैं कि एआई ऐसी कलाकृतियों को उत्पन्न कर सकता है जो पहली नजर में वैध लग सकती हैं, लेकिन आगे की जांच में गलत साबित होती हैं। एक सामान्य उदाहरण एआई द्वारा उत्पन्न चेहरों की छवियां हैं , जहां चेहरे पहली नज़र में यथार्थवादी दिख सकते हैं, लेकिन अधिक बारीकी से देखने पर अजीब विसंगतियाँ सामने आती हैं।
geopandasहमारा कोड लिखते समय, चैट जीपीटी ने एक मॉड्यूल बनाकर कुछ ऐसा ही किया gpd.gridify()- एक मॉड्यूल जो समझ में आता है, लेकिन वास्तव में मौजूद नहीं है।
दूसरे, चैटजीपीटी (और शायद अन्य एआई बॉट्स) का उद्देश्य सटीक जानकारी प्रस्तुत करना नहीं है, बल्कि सटीक जानकारी जैसा दिखता है । चैटजीपीटी के एफएक्यू पेज के अनुसार , मॉडल को यथासंभव मानव भाषण की नकल करने के लिए प्रशिक्षित किया जाता है, न कि हमें सच्चाई प्रदान करने के लिए।
यही कारण है कि यह इतने आत्मविश्वास से दावा करता है कि पुस्तकालय gridifyका हिस्सा है geopandas, और गलत साबित होने पर दावा करता है कि पुस्तकालय gridifyका हिस्सा है । shapelyइनमें से कोई भी कथन सत्य नहीं है, लेकिन शायद यह चैटजीपीटी की बात नहीं है।
आगे क्या होगा?
मैं निश्चित रूप से चैटजीपीटी की क्षमताओं के बारे में बहुत उत्साहित हूं, और भविष्य में अन्य कठिन कोडिंग कार्यों पर काम करने के लिए इसका उपयोग करूंगा।
मैंने यह भी पाया कि यह विचारों को उत्पन्न करने में काफी उपयोगी है - मैंने स्थिरता + स्थानिक डेटा विज्ञान के लिए डेटा विज्ञान परियोजनाओं के लिए विचारों के लिए कहा, और जब इसने ऐसे विचार उत्पन्न नहीं किए जो मेरे लिए नए थे, इसने स्थिरता का काफी अच्छा अवलोकन प्रदान किया / स्थानिक डेटा विज्ञान की दुनिया, जिसकी मैं कल्पना कर सकता हूं, इस क्षेत्र में किसी नए व्यक्ति के लिए काफी उपयोगी हो सकता है।
जब मैंने प्रोजेक्ट आइडिया के बारे में पूछा तो यहां चैट जीपीटी की प्रतिक्रिया है:
- सतत परिवहन योजना: एक उपकरण विकसित करें जो योजनाकारों को ग्रीनहाउस गैस उत्सर्जन को कम करने और पहुंच में सुधार करने के लिए सार्वजनिक परिवहन नेटवर्क का अनुकूलन करने में सहायता करता है। इसमें यात्रा की मांग के पैटर्न का विश्लेषण, सार्वजनिक परिवहन डेटा स्रोतों के साथ एकीकरण, और नेटवर्क डिज़ाइन और रूटिंग के लिए एल्गोरिदम लागू करना शामिल हो सकता है।
- सतत भूमि उपयोग योजना: एक उपकरण विकसित करें जो योजनाकारों को पर्यावरणीय प्रभावों को कम करने और स्थिरता को बढ़ाने के लिए भूमि उपयोग के पैटर्न को अनुकूलित करने में सहायता करता है। इसमें भूमि उपयोग और भूमि कवर के पैटर्न का विश्लेषण, भूमि उपयोग डेटा स्रोतों के साथ एकीकरण, और भूमि उपयोग आवंटन और अनुकूलन के लिए एल्गोरिदम लागू करना शामिल हो सकता है।
- पर्यावरणीय प्रभाव मूल्यांकन: एक उपकरण विकसित करें जो संगठनों को उनके संचालन या परियोजनाओं के पर्यावरणीय प्रभावों का आकलन करने में सहायता करता है। इसमें पर्यावरणीय संकेतकों, जैसे हवा और पानी की गुणवत्ता, और प्रभाव मूल्यांकन और भविष्यवाणी के लिए एल्गोरिदम लागू करने पर डेटा स्रोतों के साथ एकीकरण शामिल हो सकता है।
- अक्षय ऊर्जा साइट चयन: एक उपकरण विकसित करें जो संगठनों को नवीकरणीय ऊर्जा उत्पादन के लिए उपयुक्त साइटों की पहचान करने में मदद करता है, जैसे कि सौर या पवन फार्म। इसमें सौर आतपन, हवा की गति और अन्य प्रासंगिक कारकों के पैटर्न का विश्लेषण करना और भूमि उपयोग और स्थलाकृति पर डेटा स्रोतों के साथ एकीकरण शामिल हो सकता है।
- सतत आपूर्ति श्रृंखला अनुकूलन: एक उपकरण विकसित करें जो संगठनों को पर्यावरणीय प्रभावों को कम करने और स्थिरता को बढ़ाने के लिए उनकी आपूर्ति श्रृंखलाओं को अनुकूलित करने में मदद करे। इसमें सामग्री और ऊर्जा प्रवाह के पैटर्न का विश्लेषण, आपूर्ति श्रृंखला डेटा स्रोतों के साथ एकीकरण, और अनुकूलन और जोखिम मूल्यांकन के लिए एल्गोरिदम लागू करना शामिल हो सकता है।
स्वीकृतियाँ
मैं अपने दोस्तों एलेक्सी इलिस्किन और एलेक्सिस ओह को मेरे साथ चैटजीपीटी और एआई पर अपने विचार साझा करने के लिए धन्यवाद देना चाहता हूं। हमारे कवरेशन को इस लेख के 'अंतिम विचार' खंड में एकीकृत किया गया था।

![क्या एक लिंक्ड सूची है, वैसे भी? [भाग 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































