Σας ενδιαφέρει να αναλύσετε τα δεδομένα σας χρησιμοποιώντας φυσική γλώσσα; Μάθετε πώς να το κάνετε χρησιμοποιώντας τη βιβλιοθήκη Python PandasAI.
Σε έναν κόσμο όπου τα δεδομένα είναι ζωτικής σημασίας, η κατανόηση και η ανάλυσή τους είναι απαραίτητη. Ωστόσο, η παραδοσιακή ανάλυση δεδομένων μπορεί να είναι πολύπλοκη. Εκεί μπαίνει το PandasAI. Απλοποιεί την ανάλυση δεδομένων, επιτρέποντάς σας να μιλάτε στα δεδομένα σας χρησιμοποιώντας φυσική γλώσσα.
Το Pandas AI λειτουργεί μετατρέποντας τις ερωτήσεις σας σε κώδικα για ανάλυση δεδομένων. Βασίζεται στα δημοφιλή panda της βιβλιοθήκης Python. PandasAI είναι μια βιβλιοθήκη Python που επεκτείνει τα panda, το γνωστό εργαλείο ανάλυσης και χειρισμού δεδομένων, με χαρακτηριστικά Generative AI. Προορίζεται να συμπληρώσει τα πάντα αντί να τα αντικαταστήσει.
Το PandasAI εισάγει μια πτυχή συνομιλίας στα panda (καθώς και σε άλλες ευρέως χρησιμοποιούμενες βιβλιοθήκες ανάλυσης δεδομένων), δίνοντάς σας τη δυνατότητα να αλληλεπιδράτε με τα δεδομένα σας χρησιμοποιώντας ερωτήματα φυσικής γλώσσας.
Αυτό το σεμινάριο θα σας καθοδηγήσει στα βήματα της ρύθμισης του Pandas AI, χρησιμοποιώντας το με ένα πραγματικό σύνολο δεδομένων, δημιουργώντας γραφικά, εξερευνώντας συντομεύσεις και εξερευνώντας τα δυνατά σημεία και τους περιορισμούς αυτού του ισχυρού εργαλείου.
Αφού το ολοκληρώσετε, θα μπορείτε να κάνετε ανάλυση δεδομένων πιο εύκολα και διαισθητικά χρησιμοποιώντας φυσική γλώσσα.
Λοιπόν, ας εξερευνήσουμε τον συναρπαστικό κόσμο της ανάλυσης δεδομένων φυσικής γλώσσας με το Pandas AI!
Πίνακας περιεχομένων
Ρύθμιση του περιβάλλοντος σας
Για να ξεκινήσετε με το PandasAI, θα πρέπει να ξεκινήσετε εγκαθιστώντας τη βιβλιοθήκη PandasAI.
Χρησιμοποιώ ένα σημειωματάριο Jupyter για αυτό το έργο. Αλλά μπορείτε να χρησιμοποιήσετε το Google Collab ή τον VS Code σύμφωνα με τις απαιτήσεις σας.
Εάν σκοπεύετε να χρησιμοποιήσετε μοντέλα ανοιχτής τεχνητής νοημοσύνης με μεγάλες γλώσσες (LLM), είναι επίσης σημαντικό να εγκαταστήσετε το Open AI Python SDK για μια ομαλή εμπειρία.
# Installing Pandas AI !pip install pandas-ai # Pandas AI uses OpenAI's language models, so you need to install the OpenAI Python SDK !pip install openai
Τώρα, ας εισάγουμε όλες τις απαραίτητες βιβλιοθήκες:
# Importing necessary libraries import pandas as pd import numpy as np # Importing PandasAI and its components from pandasai import PandasAI, SmartDataframe from pandasai.llm.openai import OpenAI
Μια βασική πτυχή της ανάλυσης δεδομένων χρησιμοποιώντας το PandasAI είναι το κλειδί API. Αυτό το εργαλείο υποστηρίζει πολλά μοντέλα Large Language Models (LLM) και LangChains, τα οποία χρησιμοποιούνται για τη δημιουργία κώδικα από ερωτήματα φυσικής γλώσσας. Αυτό καθιστά την ανάλυση δεδομένων πιο προσιτή και φιλική προς τον χρήστη.
Το PandasAI είναι ευέλικτο και μπορεί να λειτουργήσει με διάφορους τύπους μοντέλων. Αυτά περιλαμβάνουν μοντέλα Hugging Face, Azure OpenAI, Google PALM και Google VertexAI. Κάθε ένα από αυτά τα μοντέλα φέρνει τις δικές του δυνάμεις στο τραπέζι, ενισχύοντας τις δυνατότητες του PandasAI.
Θυμηθείτε, για να χρησιμοποιήσετε αυτά τα μοντέλα, θα χρειαστείτε τα κατάλληλα κλειδιά API. Αυτά τα κλειδιά ελέγχουν την ταυτότητα των αιτημάτων σας και σας επιτρέπουν να αξιοποιήσετε τη δύναμη αυτών των προηγμένων μοντέλων γλώσσας στις εργασίες ανάλυσης δεδομένων σας. Επομένως, φροντίστε να έχετε τα κλειδιά API σας εύχρηστα όταν ρυθμίζετε το PandasAI για τα έργα σας.
Μπορείτε να λάβετε το κλειδί API και να το εξαγάγετε ως μεταβλητή περιβάλλοντος.
Στο επόμενο βήμα, θα μάθετε πώς να χρησιμοποιείτε το PandasAI με διαφορετικούς τύπους μοντέλων μεγάλων γλωσσών (LLM) από το OpenAI και το Hugging Face Hub.
Χρήση μοντέλων μεγάλων γλωσσών
Μπορείτε είτε να επιλέξετε ένα LLM δημιουργώντας ένα στιγμιότυπο και περνώντας το στον κατασκευαστή SmartDataFrame ή SmartDatalake, είτε μπορείτε να καθορίσετε ένα στο αρχείο pandasai.json.
Εάν το μοντέλο αναμένει μία ή περισσότερες παραμέτρους, μπορείτε να τις μεταβιβάσετε στον κατασκευαστή ή να τις καθορίσετε στο αρχείο pandasai.json στην παράμετρο llm_options, ως εξής:
{ "llm": "OpenAI", "llm_options": { "api_token": "API_TOKEN_GOES_HERE" } }
Πώς να χρησιμοποιήσετε μοντέλα OpenAI;
Για να χρησιμοποιήσετε μοντέλα OpenAI, πρέπει να έχετε ένα κλειδί OpenAI API. Μπορείτε να πάρετε ένα εδώ.
Αφού έχετε ένα κλειδί API, μπορείτε να το χρησιμοποιήσετε για να δημιουργήσετε ένα αντικείμενο OpenAI:
#We have imported all necessary libraries in privious step llm = OpenAI(api_token="my-api-key") pandas_ai = SmartDataframe("data.csv", config={"llm": llm})
Μην ξεχάσετε να αντικαταστήσετε το “my-api-key” με το αρχικό κλειδί API
Εναλλακτικά, μπορείτε να ορίσετε τη μεταβλητή περιβάλλοντος OPENAI_API_KEY και να δημιουργήσετε το αντικείμενο OpenAI χωρίς να περάσετε το κλειδί API:
# Set the OPENAI_API_KEY environment variable llm = OpenAI() # no need to pass the API key, it will be read from the environment variable pandas_ai = SmartDataframe("data.csv", config={"llm": llm})
Εάν βρίσκεστε πίσω από έναν ρητό διακομιστή μεσολάβησης, μπορείτε να καθορίσετε το openai_proxy κατά τη δημιουργία του αντικειμένου OpenAI ή να ορίσετε τη μεταβλητή περιβάλλοντος OPENAI_PROXY ώστε να διέρχεται.
Σημαντική σημείωση: Όταν χρησιμοποιείτε τη βιβλιοθήκη PandasAI για ανάλυση δεδομένων με το κλειδί API, είναι σημαντικό να παρακολουθείτε τη χρήση του διακριτικού σας για τη διαχείριση του κόστους.
Αναρωτιέστε πώς να το κάνετε αυτό; Απλώς εκτελέστε τον παρακάτω κωδικό μετρητή διακριτικών για να έχετε μια σαφή εικόνα της χρήσης του διακριτικού σας και των αντίστοιχων χρεώσεων. Με αυτόν τον τρόπο, μπορείτε να διαχειριστείτε αποτελεσματικά τους πόρους σας και να αποφύγετε τυχόν εκπλήξεις στη χρέωσή σας.
Μπορείτε να μετρήσετε τον αριθμό των διακριτικών που χρησιμοποιούνται από μια προτροπή ως εξής:
"""Example of using PandasAI with a pandas dataframe""" from pandasai import SmartDataframe from pandasai.llm import OpenAI from pandasai.helpers.openai_info import get_openai_callback import pandas as pd llm = OpenAI() # conversational=False is supposed to display lower usage and cost df = SmartDataframe("data.csv", {"llm": llm, "conversational": False}) with get_openai_callback() as cb: response = df.chat("Calculate the sum of the gdp of north american countries") print(response) print(cb)
Θα έχετε αποτελέσματα όπως αυτό:
# The sum of the GDP of North American countries is 19,294,482,071,552. # Tokens Used: 375 # Prompt Tokens: 210 # Completion Tokens: 165 # Total Cost (USD): $ 0.000750
Μην ξεχάσετε να κρατήσετε αρχείο με το συνολικό κόστος σας εάν έχετε περιορισμένη πίστωση!
Πώς να χρησιμοποιήσετε τα μοντέλα Hugging Face;
Για να χρησιμοποιήσετε μοντέλα HuggingFace, πρέπει να έχετε ένα κλειδί API HuggingFace. Μπορείτε να δημιουργήσετε έναν λογαριασμό HuggingFace εδώ και λάβετε ένα κλειδί API εδώ.
Αφού έχετε ένα κλειδί API, μπορείτε να το χρησιμοποιήσετε για να δημιουργήσετε ένα από τα μοντέλα HuggingFace.
Προς το παρόν, το PandasAI υποστηρίζει τα ακόλουθα μοντέλα HuggingFace:
- Starcoder: bigcode/starcoder
- Falcon: tiiuae/falcon-7b-instruct
from pandasai.llm import Starcoder, Falcon llm = Starcoder(api_token="my-huggingface-api-key") # or llm = Falcon(api_token="my-huggingface-api-key") df = SmartDataframe("data.csv", config={"llm": llm})
Εναλλακτικά, μπορείτε να ορίσετε τη μεταβλητή περιβάλλοντος HUGGINGFACE_API_KEY και να δημιουργήσετε το αντικείμενο HuggingFace χωρίς να περάσετε το κλειδί API:
from pandasai.llm import Starcoder, Falcon llm = Starcoder() # no need to pass the API key, it will be read from the environment variable # or llm = Falcon() # no need to pass the API key, it will be read from the environment variable df = SmartDataframe("data.csv", config={"llm": llm})
Το Starcoder και το Falcon είναι και τα δύο μοντέλα LLM διαθέσιμα στο Hugging Face.
Ρυθμίσαμε με επιτυχία το περιβάλλον μας και εξερευνήσαμε πώς να χρησιμοποιούμε τα μοντέλα OpenAI και Hugging Face LLM. Τώρα, ας προχωρήσουμε με το ταξίδι ανάλυσης δεδομένων.
Θα χρησιμοποιήσουμε το σύνολο δεδομένων Big Mart Sales, το οποίο περιέχει πληροφορίες σχετικά με τις πωλήσεις διαφόρων προϊόντων σε διαφορετικά καταστήματα του Big Mart. Το σύνολο δεδομένων έχει 12 στήλες και 8524 σειρές. Θα λάβετε τον σύνδεσμο στο τέλος του άρθρου.
Ανάλυση δεδομένων με το PandasAI
Τώρα που εγκαταστήσαμε και εισαγάγαμε με επιτυχία όλες τις απαραίτητες βιβλιοθήκες, ας προχωρήσουμε στη φόρτωση των δεδομένων μας.
Φορτώστε το σύνολο δεδομένων
Μπορείτε είτε να επιλέξετε ένα LLM δημιουργώντας ένα στιγμιότυπο και περνώντας το στο SmartDataFrame. Θα λάβετε τη σύνδεση με το σύνολο δεδομένων στο τέλος του άρθρου.
#Load the dataset from device path = r"D:\Pandas AI\Train.csv" df = SmartDataframe(path)
Χρησιμοποιήστε το μοντέλο LLM του OpenAI
Μετά τη φόρτωση των δεδομένων μας. Θα χρησιμοποιήσω το μοντέλο LLM του OpenAI για να χρησιμοποιήσω το PandasAI
llm = OpenAI(api_token="API_Key") pandas_ai = PandasAI(llm, conversational=False)
Ολα καλά! Τώρα, ας προσπαθήσουμε να χρησιμοποιήσουμε προτροπές.
Εκτυπώστε τις πρώτες 6 σειρές του συνόλου δεδομένων μας
Ας προσπαθήσουμε να φορτώσουμε τις πρώτες 6 σειρές, παρέχοντας οδηγίες:
Result = pandas_ai(df, "Show the first 6 rows of data in tabular form") Result
Οι πρώτες 6 σειρές από το σύνολο δεδομένων
Ήταν πραγματικά γρήγορο! Ας κατανοήσουμε το σύνολο δεδομένων μας.
Δημιουργία Περιγραφικών Στατιστικών του DataFrame
# To get descriptive statistics Result = pandas_ai(df, "Show the description of data in tabular form") Result
Περιγραφή
Υπάρχουν 7060 τιμές στο Item_Weigth. ίσως λείπουν κάποιες τιμές.
Βρείτε τις αξίες που λείπουν
Υπάρχουν δύο τρόποι για να βρείτε τιμές που λείπουν χρησιμοποιώντας το pandas ai.
#Find missing values Result = pandas_ai(df, "Show the missing values of data in tabular form") Result
Εύρεση αξιών που λείπουν
# Συντόμευση για τον καθαρισμό δεδομένων
df = SmartDataframe('data.csv') df.clean_data()
Αυτή η συντόμευση θα κάνει καθαρισμό δεδομένων στο πλαίσιο δεδομένων.
Τώρα, ας συμπληρώσουμε τις μηδενικές τιμές που λείπουν.
Συμπληρώστε τις τιμές που λείπουν
#Fill Missing values result = pandas_ai(df, "Fill Item Weight with median and Item outlet size null values with mode and Show the missing values of data in tabular form") result
Συμπληρωμένες μηδενικές τιμές
Είναι μια χρήσιμη μέθοδος για τη συμπλήρωση μηδενικών τιμών, αλλά αντιμετώπισα ορισμένα προβλήματα κατά τη συμπλήρωση μηδενικών τιμών.
# Συντόμευση για Συμπλήρωση μηδενικών τιμών
df = SmartDataframe('data.csv') df.impute_missing_values()
Αυτή η συντόμευση θα καταλογίσει τιμές που λείπουν στο πλαίσιο δεδομένων.
Απόθεση μηδενικών τιμών
Εάν θέλετε να αφαιρέσετε όλες τις μηδενικές τιμές από το df σας, μπορείτε να δοκιμάσετε αυτήν τη μέθοδο.
result = pandas_ai(df, "Drop the row with missing values with inplace=True") result
Η ανάλυση δεδομένων είναι απαραίτητη για τον εντοπισμό τάσεων, τόσο βραχυπρόθεσμων όσο και μακροπρόθεσμων, οι οποίες μπορεί να είναι ανεκτίμητες για τις επιχειρήσεις, τις κυβερνήσεις, τους ερευνητές και τα άτομα.
Ας προσπαθήσουμε να βρούμε μια συνολική τάση πωλήσεων όλα αυτά τα χρόνια από την ίδρυσή του.
Εύρεση τάσης πωλήσεων
# finding trend in sales result = pandas_ai(df, "What is the overall trend in sales over the years since outlet establishment?") result
Πωλήσεις καθ’ όλη τη διάρκεια του έτους (Line plot)
Η αρχική διαδικασία δημιουργίας πλοκής ήταν λίγο αργή, αλλά μετά την επανεκκίνηση του πυρήνα και την εκτέλεση όλων, έτρεξε πιο γρήγορα.
# Συντόμευση για τη γραφική παράσταση γραμμών
df.plot_line_chart(x = ['a', 'b', 'c'], y = [1, 2, 3])
Αυτή η συντόμευση θα σχεδιάσει ένα γραμμικό γράφημα του πλαισίου δεδομένων.
Ίσως αναρωτιέστε γιατί υπάρχει μια πτώση στην τάση. Αυτό οφείλεται στο ότι δεν έχουμε στοιχεία από το 1989 έως το 1994.
Εύρεση έτους με τις υψηλότερες πωλήσεις
Τώρα, ας μάθουμε ποια χρονιά έχει τις υψηλότερες πωλήσεις.
# finding year of highest sales result = pandas_ai(df, "Explain which years have highest sales") result
Έτσι, η χρονιά με τις υψηλότερες πωλήσεις είναι το 1985.
Όμως, θέλω να μάθω ποιος τύπος αντικειμένου δημιουργεί τις υψηλότερες μέσες πωλήσεις και ποιος τύπος δημιουργεί τις χαμηλότερες μέσες πωλήσεις.
Οι υψηλότερες και οι χαμηλότερες μέσες πωλήσεις
# finding highest and lowest average sale result = pandas_ai(df, "Which item type generates the highest average sales, and which one generates the lowest?") result
Τα Starchy Foods έχουν τις υψηλότερες μέσες πωλήσεις και άλλα έχουν τις χαμηλότερες μέσες πωλήσεις. Εάν δεν θέλετε άλλους να έχουν τις χαμηλότερες πωλήσεις, μπορείτε να βελτιώσετε την προτροπή σύμφωνα με τις ανάγκες σας.
Υπέροχος! Τώρα, θέλω να μάθω την κατανομή των πωλήσεων σε διαφορετικά σημεία πώλησης.
Διανομή πωλήσεων σε διαφορετικά σημεία πώλησης
Υπάρχουν τέσσερις τύποι καταστημάτων: Σούπερ μάρκετ Τύπου 1/2/3 και Παντοπωλεία.
# distribution of sales across different outlet types since establishment response = pandas_ai(df, "Visualize the distribution of sales across different outlet types since establishment using bar plot, plot size=(13,10)") response
Κατανομή των πωλήσεων σε διάφορα σημεία πώλησης
Όπως παρατηρήθηκε σε προηγούμενα μηνύματα, οι κορυφαίες πωλήσεις σημειώθηκαν το 1985 και αυτό το οικόπεδο υπογραμμίζει τις υψηλότερες πωλήσεις το 1985 από καταστήματα σούπερ μάρκετ τύπου 3.
# Συντόμευση στο γράφημα ράβδου γραφήματος
df = SmartDataframe('data.csv') df.plot_bar_chart(x = ['a', 'b', 'c'], y = [1, 2, 3])
Αυτή η συντόμευση θα σχεδιάσει ένα γράφημα ράβδων του πλαισίου δεδομένων.
# Συντόμευση στο Ιστόγραμμα Σχεδίου
df = SmartDataframe('data.csv') df.plot_histogram(column = 'a')
Αυτή η συντόμευση θα σχεδιάσει ένα ιστόγραμμα του πλαισίου δεδομένων.
Τώρα, ας μάθουμε Ποιες είναι οι μέσες πωλήσεις για τα είδη με περιεκτικότητα σε λιπαρά είδη «Χαμηλά λιπαρά» και «κανονικά».
Βρείτε μέσες πωλήσεις για είδη με λιπαρά περιεχόμενα
# finding index of a row using value of a column result = pandas_ai(df, "What is the average sales for the items with 'Low Fat' and 'Regular' item fat content?") result
Η σύνταξη προτροπών όπως αυτή σάς επιτρέπει να συγκρίνετε δύο ή περισσότερα προϊόντα.
Μέσες πωλήσεις για κάθε τύπο αντικειμένου
Θέλω να συγκρίνω όλα τα προϊόντα με τις μέσες πωλήσεις τους.
#Average Sales for Each Item Type result = pandas_ai(df, "What are the average sales for each item type over the past 5 years?, use pie plot, size=(6,6)") result
Γράφημα πίτας μέσες πωλήσεις
Όλα τα τμήματα του γραφήματος πίτας εμφανίζονται παρόμοια επειδή έχουν σχεδόν τα ίδια στοιχεία πωλήσεων.
# Συντόμευση στο γράφημα πίτας γραφήματος
df.plot_pie_chart(labels = ['a', 'b', 'c'], values = [1, 2, 3])
Αυτή η συντόμευση θα σχεδιάσει ένα γράφημα πίτας του πλαισίου δεδομένων.
Κορυφαίοι 5 τύποι αντικειμένων με τις υψηλότερες πωλήσεις
Αν και έχουμε ήδη συγκρίνει όλα τα προϊόντα με βάση τις μέσες πωλήσεις, τώρα θα ήθελα να προσδιορίσω τα 5 κορυφαία προϊόντα με τις υψηλότερες πωλήσεις.
#Finding top 5 highest selling items result = pandas_ai(df, "What are the top 5 highest selling item type based on average sells? Write in tablular form") result
Όπως ήταν αναμενόμενο, το Starchy Foods είναι το προϊόν με τις υψηλότερες πωλήσεις με βάση τις μέσες πωλήσεις.
Κορυφαίοι 5 τύποι αντικειμένων με τις χαμηλότερες πωλήσεις
result = pandas_ai(df, "What are the top 5 lowest selling item type based on average sells?") result
Ίσως εκπλαγείτε αν δείτε αναψυκτικά στην κατηγορία με τις χαμηλότερες πωλήσεις. Ωστόσο, είναι σημαντικό να σημειωθεί ότι αυτά τα δεδομένα φτάνουν μέχρι το 2008 και η τάση για τα αναψυκτικά απογειώθηκε λίγα χρόνια αργότερα.
Πωλήσεις Κατηγοριών Προϊόντων
Εδώ, χρησιμοποίησα τη λέξη «κατηγορία προϊόντος» αντί για «τύπος αντικειμένου» και η PandasAI εξακολουθεί να δημιουργεί τις πλοκές, δείχνοντας ότι κατανοεί παρόμοιες λέξεις.
result = pandas_ai(df, "Give a stacked large size bar chart of the sales of the various product categories for the last FY") result
Πωλήσεις τύπου αντικειμένου
Μπορείτε να βρείτε τις υπόλοιπες συντομεύσεις μας Εδώ.
Μπορεί να παρατηρήσετε ότι όταν γράφουμε μια προτροπή και παρέχουμε οδηγίες σε ένα PandasAI, παρέχει αποτελέσματα που βασίζονται αποκλειστικά στη συγκεκριμένη προτροπή. Δεν αναλύει τις προηγούμενες προτροπές σας για να προσφέρει πιο ακριβείς απαντήσεις.
Ωστόσο, με τη βοήθεια ενός πράκτορα συνομιλίας, μπορείτε να επιτύχετε και αυτή τη λειτουργία.
Πράκτορας συνομιλίας
Με τον πράκτορα συνομιλίας, μπορείτε να συμμετέχετε σε δυναμικές συνομιλίες όπου ο πράκτορας διατηρεί το πλαίσιο καθ’ όλη τη διάρκεια της συζήτησης. Αυτό σας δίνει τη δυνατότητα να έχετε πιο διαδραστικές και ουσιαστικές ανταλλαγές.
Τα βασικά χαρακτηριστικά που ενισχύουν αυτήν την αλληλεπίδραση περιλαμβάνουν τη διατήρηση περιβάλλοντος, όπου ο πράκτορας θυμάται το ιστορικό συνομιλιών, επιτρέποντας απρόσκοπτες αλληλεπιδράσεις με επίγνωση του περιβάλλοντος. Μπορείτε να χρησιμοποιήσετε τη μέθοδο Ερωτήσεις διευκρίνισης για να ζητήσετε διευκρινίσεις σχετικά με οποιαδήποτε πτυχή της συνομιλίας, διασφαλίζοντας ότι κατανοείτε πλήρως τις πληροφορίες που παρέχονται.
Επιπλέον, η μέθοδος Explain είναι διαθέσιμη για τη λήψη λεπτομερών εξηγήσεων για το πώς ο πράκτορας έφτασε σε μια συγκεκριμένη λύση ή απάντηση, προσφέροντας διαφάνεια και πληροφορίες σχετικά με τη διαδικασία λήψης αποφάσεων του πράκτορα.
Μη διστάσετε να ξεκινήσετε συνομιλίες, να αναζητήσετε διευκρινίσεις και να εξερευνήσετε εξηγήσεις για να βελτιώσετε τις αλληλεπιδράσεις σας με τον πράκτορα συνομιλίας!
from pandasai import Agent agent = Agent(df, config={"llm": llm}, memory_size=10) result = agent.chat("Which are top 5 items with highest MRP") result
Σε αντίθεση με ένα SmartDataframe ή ένα SmartDatalake, ένας πράκτορας θα παρακολουθεί την κατάσταση της συνομιλίας και θα μπορεί να απαντά σε συνομιλίες πολλαπλών στροφών.
Ας προχωρήσουμε προς τα Πλεονεκτήματα και τους Περιορισμούς του PandasAI
Πλεονεκτήματα του PandasAI
Η χρήση του Pandas AI προσφέρει πολλά πλεονεκτήματα που το καθιστούν πολύτιμο εργαλείο για την ανάλυση δεδομένων, όπως:
- Προσβασιμότητα: Το PandasAI απλοποιεί την ανάλυση δεδομένων, καθιστώντας το προσβάσιμο σε ένα ευρύ φάσμα χρηστών. Οποιοσδήποτε, ανεξάρτητα από το τεχνικό υπόβαθρό του, μπορεί να το χρησιμοποιήσει για να εξάγει πληροφορίες από δεδομένα και να απαντά σε επιχειρηματικές ερωτήσεις.
- Ερωτήματα φυσικής γλώσσας: Η δυνατότητα να κάνετε ερωτήσεις απευθείας και να λαμβάνετε απαντήσεις από δεδομένα χρησιμοποιώντας ερωτήματα φυσικής γλώσσας καθιστά την εξερεύνηση και την ανάλυση δεδομένων πιο φιλική προς το χρήστη. Αυτή η δυνατότητα επιτρέπει ακόμη και μη τεχνικούς χρήστες να αλληλεπιδρούν αποτελεσματικά με τα δεδομένα.
- Λειτουργικότητα συνομιλίας με πράκτορα: Η λειτουργία συνομιλίας επιτρέπει στους χρήστες να αλληλεπιδρούν με δεδομένα, ενώ η λειτουργία συνομιλίας με πράκτορα αξιοποιεί το προηγούμενο ιστορικό συνομιλιών για να παρέχει απαντήσεις που έχουν επίγνωση του περιβάλλοντος. Αυτό προωθεί μια δυναμική και συνομιλητική προσέγγιση στην ανάλυση δεδομένων.
- Οπτικοποίηση δεδομένων: Το PandasAI παρέχει μια σειρά επιλογών οπτικοποίησης δεδομένων, συμπεριλαμβανομένων χαρτών θερμότητας, διαγραμμάτων διασποράς, ραβδώσεων, γραφημάτων πίτας, γραμμών και άλλων. Αυτές οι απεικονίσεις βοηθούν στην κατανόηση και την παρουσίαση προτύπων και τάσεων δεδομένων.
- Συντομεύσεις εξοικονόμησης χρόνου: Η διαθεσιμότητα συντομεύσεων και λειτουργιών εξοικονόμησης χρόνου απλοποιεί τη διαδικασία ανάλυσης δεδομένων, βοηθώντας τους χρήστες να εργάζονται πιο αποτελεσματικά και αποτελεσματικά.
- Συμβατότητα αρχείων: Το PandasAI υποστηρίζει διάφορες μορφές αρχείων, όπως CSV, Excel, Φύλλα Google και άλλα. Αυτή η ευελιξία επιτρέπει στους χρήστες να εργάζονται με δεδομένα από διάφορες πηγές και μορφές.
- Προσαρμοσμένες προτροπές: Οι χρήστες μπορούν να δημιουργήσουν προσαρμοσμένες προτροπές χρησιμοποιώντας απλές οδηγίες και κώδικα Python. Αυτή η δυνατότητα δίνει τη δυνατότητα στους χρήστες να προσαρμόζουν τις αλληλεπιδράσεις τους με δεδομένα ώστε να ταιριάζουν σε συγκεκριμένες ανάγκες και ερωτήματα.
- Αποθήκευση αλλαγών: Η δυνατότητα αποθήκευσης των αλλαγών που έγιναν σε πλαίσια δεδομένων διασφαλίζει ότι η εργασία σας διατηρείται και μπορείτε να επισκεφθείτε ξανά και να μοιραστείτε την ανάλυσή σας ανά πάσα στιγμή.
- Προσαρμοσμένες απαντήσεις: Η επιλογή δημιουργίας προσαρμοσμένων απαντήσεων επιτρέπει στους χρήστες να ορίζουν συγκεκριμένες συμπεριφορές ή αλληλεπιδράσεις, κάνοντας το εργαλείο ακόμα πιο ευέλικτο.
- Ενσωμάτωση μοντέλου: Το PandasAI υποστηρίζει διάφορα μοντέλα γλώσσας, συμπεριλαμβανομένων εκείνων από τα μοντέλα Hugging Face, Azure, Google Palm, Google VertexAI και LangChain. Αυτή η ενοποίηση ενισχύει τις δυνατότητες του εργαλείου και επιτρέπει την προηγμένη επεξεργασία και κατανόηση φυσικής γλώσσας.
- Ενσωματωμένη υποστήριξη LangChain: Η ενσωματωμένη υποστήριξη για μοντέλα LangChain διευρύνει περαιτέρω το φάσμα των διαθέσιμων μοντέλων και λειτουργιών, ενισχύοντας το βάθος της ανάλυσης και τις πληροφορίες που μπορούν να προκύψουν από τα δεδομένα.
- Κατανοήστε τα ονόματα: Το PandasAI επιδεικνύει την ικανότητα κατανόησης της συσχέτισης μεταξύ των ονομάτων στηλών και της πραγματικής ορολογίας. Για παράδειγμα, ακόμα κι αν χρησιμοποιείτε όρους όπως «κατηγορία προϊόντος» αντί για «τύπος αντικειμένου» στις προτροπές σας, το εργαλείο μπορεί να παρέχει σχετικά και ακριβή αποτελέσματα. Αυτή η ευελιξία στην αναγνώριση συνωνύμων και την αντιστοίχιση τους στις κατάλληλες στήλες δεδομένων ενισχύει την ευκολία του χρήστη και την προσαρμοστικότητα του εργαλείου σε ερωτήματα φυσικής γλώσσας.
Ενώ το PandasAI προσφέρει πολλά πλεονεκτήματα, έρχεται επίσης με ορισμένους περιορισμούς και προκλήσεις που πρέπει να γνωρίζουν οι χρήστες:
Περιορισμοί του PandasAI
Ακολουθούν ορισμένοι περιορισμοί που παρατήρησα:
- Απαίτηση κλειδιού API: Για να χρησιμοποιήσετε το PandasAI, είναι απαραίτητο να έχετε ένα κλειδί API. Εάν δεν έχετε επαρκείς πιστώσεις στον λογαριασμό σας OpenAI, ενδέχεται να μην μπορείτε να χρησιμοποιήσετε την υπηρεσία. Ωστόσο, αξίζει να σημειωθεί ότι το OpenAI παρέχει πίστωση 5 $ για νέους χρήστες, καθιστώντας το προσβάσιμο για όσους είναι νέοι στην πλατφόρμα.
- Χρόνος επεξεργασίας: Μερικές φορές, η υπηρεσία ενδέχεται να παρουσιάσει καθυστερήσεις στην παροχή αποτελεσμάτων, οι οποίες μπορεί να αποδοθούν σε υψηλή χρήση ή φόρτο διακομιστή. Οι χρήστες θα πρέπει να είναι προετοιμασμένοι για πιθανούς χρόνους αναμονής όταν ρωτούν την υπηρεσία.
- Ερμηνεία των μηνυμάτων: Ενώ μπορείτε να κάνετε ερωτήσεις μέσω προτροπών, η ικανότητα του συστήματος να εξηγεί τις απαντήσεις ενδέχεται να μην έχει αναπτυχθεί πλήρως και η ποιότητα των επεξηγήσεων μπορεί να ποικίλλει. Αυτή η πτυχή του PandasAI μπορεί να βελτιωθεί στο μέλλον με περαιτέρω ανάπτυξη.
- Ευαισθησία προτροπής: Οι χρήστες πρέπει να είναι προσεκτικοί όταν δημιουργούν προτροπές, καθώς ακόμη και μικρές αλλαγές μπορούν να οδηγήσουν σε διαφορετικά αποτελέσματα. Αυτή η ευαισθησία στη φράση και τη δομή άμεσης επικοινωνίας μπορεί να επηρεάσει τη συνέπεια των αποτελεσμάτων, ειδικά όταν εργάζεστε με γραφικά δεδομένα ή πιο σύνθετα ερωτήματα.
- Περιορισμοί στις σύνθετες προτροπές: Το PandasAI ενδέχεται να μην χειρίζεται εξαιρετικά πολύπλοκα μηνύματα ή ερωτήματα τόσο αποτελεσματικά όσο πιο απλά. Οι χρήστες θα πρέπει να προσέχουν την πολυπλοκότητα των ερωτήσεών τους και να διασφαλίζουν ότι το εργαλείο είναι κατάλληλο για τις συγκεκριμένες ανάγκες τους.
- Ασυνεπείς αλλαγές στο DataFrame: Οι χρήστες έχουν αναφέρει προβλήματα με την πραγματοποίηση αλλαγών στα DataFrames, όπως η πλήρωση μηδενικών τιμών ή η απόρριψη σειρών μηδενικών τιμών, ακόμη και όταν καθορίζουν “Inplace=True”. Αυτή η ασυνέπεια μπορεί να είναι απογοητευτική για τους χρήστες που προσπαθούν να τροποποιήσουν τα δεδομένα τους.
- Μεταβλητά Αποτελέσματα: Κατά την επανεκκίνηση ενός πυρήνα ή την εκ νέου εκτέλεση μηνυμάτων, είναι δυνατό να λαμβάνετε διαφορετικά αποτελέσματα ή ερμηνείες δεδομένων από προηγούμενες εκτελέσεις. Αυτή η μεταβλητότητα μπορεί να είναι προκλητική για χρήστες που απαιτούν συνεπή και αναπαραγώγιμα αποτελέσματα. Δεν ισχύει για όλα τα μηνύματα.
Μπορείτε να κατεβάσετε το σύνολο δεδομένων εδώ.
Ο κωδικός είναι διαθέσιμος στο GitHub.
συμπέρασμα
Το PandasAI προσφέρει μια φιλική προς το χρήστη προσέγγιση στην ανάλυση δεδομένων, προσβάσιμη ακόμη και σε όσους δεν διαθέτουν εκτεταμένες δεξιότητες κωδικοποίησης.
Σε αυτό το άρθρο, έχω καλύψει τον τρόπο ρύθμισης και χρήσης του PandasAI για ανάλυση δεδομένων, συμπεριλαμβανομένης της δημιουργίας γραφικών παραστάσεων, του χειρισμού μηδενικών τιμών και της αξιοποίησης της λειτουργικότητας συνομιλίας με πράκτορες.
Εγγραφείτε στο ενημερωτικό μας δελτίο για περισσότερα ενημερωτικά άρθρα. Μπορεί να σας ενδιαφέρει να μάθετε για μοντέλα τεχνητής νοημοσύνης για τη δημιουργία γενετικής τεχνητής νοημοσύνης.
‘Ηταν αυτό το άρθρο χρήσιμο?
Ευχαριστούμε για την ανταπόκρισή σας!