Πώς να χρησιμοποιήσετε τη συνάρτηση LangChain LLMChain στην Python

Pos Na Chresimopoiesete Te Synartese Langchain Llmchain Sten Python



Το LangChain διαθέτει μια πληθώρα ενοτήτων για τη δημιουργία εφαρμογών μοντέλων γλώσσας. Οι εφαρμογές μπορούν να γίνουν πιο περίπλοκες συνδυάζοντας ενότητες ή μπορούν να γίνουν απλούστερες χρησιμοποιώντας μια ενιαία ενότητα. Η κλήση ενός LLM σε μια συγκεκριμένη είσοδο είναι το πιο ουσιαστικό στοιχείο LangChain.

Οι αλυσίδες δεν λειτουργούν μόνο για μία κλήση LLM. είναι συλλογές κλήσεων, είτε σε ένα LLM είτε σε άλλο βοηθητικό πρόγραμμα. Οι αλυσίδες από άκρο σε άκρο για ευρέως χρησιμοποιούμενες εφαρμογές παρέχονται από τη LangChain μαζί με ένα τυπικό API αλυσίδας και πολυάριθμες ενσωματώσεις εργαλείων.

Η ευελιξία και η δυνατότητα σύνδεσης πολλών στοιχείων σε μια ενιαία οντότητα μπορεί να είναι χρήσιμη όταν θέλουμε να σχεδιάσουμε μια αλυσίδα που δέχεται τα στοιχεία χρήστη, τη ρυθμίζει χρησιμοποιώντας ένα PromptTemplate και, στη συνέχεια, παραδίδει το αποτέλεσμα που δημιουργείται σε ένα LLM.







Αυτό το άρθρο σας βοηθά να κατανοήσετε τη χρήση μιας συνάρτησης LangChain LLMchain στην Python.



Παράδειγμα: Πώς να χρησιμοποιήσετε τη λειτουργία LLMchain στο LangChain

Μιλήσαμε για το τι είναι αλυσίδες. Τώρα, θα δούμε μια πρακτική επίδειξη αυτών των αλυσίδων που υλοποιούνται σε ένα σενάριο Python. Σε αυτό το παράδειγμα, χρησιμοποιούμε την πιο βασική αλυσίδα LangChain που είναι η LLMchain. Περιέχει ένα PromptTemplate και ένα LLM και τα συνδέει μεταξύ τους για να δημιουργήσει μια έξοδο.



Για να ξεκινήσουμε την υλοποίηση της ιδέας, πρέπει να εγκαταστήσουμε κάποιες απαιτούμενες βιβλιοθήκες που δεν περιλαμβάνονται στην τυπική βιβλιοθήκη της Python. Οι βιβλιοθήκες που πρέπει να εγκαταστήσουμε είναι οι LangChain και OpenAI. Εγκαθιστούμε τη βιβλιοθήκη LangChain επειδή πρέπει να χρησιμοποιήσουμε την ενότητα LLMchain καθώς και το PromptTemplate. Η βιβλιοθήκη OpenAI μας επιτρέπει να χρησιμοποιήσουμε τα μοντέλα του OpenAI για να προβλέψουμε τις εξόδους, δηλαδή το GPT-3.





Για να εγκαταστήσετε τη βιβλιοθήκη LangChain, εκτελέστε την ακόλουθη εντολή στο τερματικό:

$ pip εγκατάσταση langchain

Εγκαταστήστε τη βιβλιοθήκη OpenAI με την ακόλουθη εντολή:



$ pip εγκατάσταση openai

Μόλις ολοκληρωθούν οι εγκαταστάσεις, μπορούμε να αρχίσουμε να εργαζόμαστε για το κύριο έργο.

από langchain. προτρέπει εισαγωγή PromptTemplate

από langchain. llms εισαγωγή OpenAI

εισαγωγή εσείς

εσείς . κατά προσέγγιση [ 'OPENAI_API_KEY' ] = 'sk-YOUR API KEY'

Το κύριο έργο ξεκινάει εισάγοντας τις απαραίτητες ενότητες. Έτσι, εισάγουμε πρώτα το PromptTemplate από τη βιβλιοθήκη 'langchain.prompts'. Στη συνέχεια, εισάγουμε το OpenAI από τη βιβλιοθήκη 'langchain.llms'. Στη συνέχεια, εισάγουμε το 'os' για να ορίσουμε τη μεταβλητή περιβάλλοντος.

Αρχικά, ορίσαμε το κλειδί OpenAI API ως μεταβλητή περιβάλλοντος. Η μεταβλητή περιβάλλοντος είναι μια μεταβλητή που αποτελείται από ένα όνομα και μια τιμή και ορίζεται στο λειτουργικό μας σύστημα. Το 'os.environ' είναι ένα αντικείμενο που χρησιμοποιείται για τη χαρτογράφηση των μεταβλητών περιβάλλοντος. Έτσι, ονομάζουμε 'os.environ'. Το όνομα που ορίσαμε για το κλειδί API είναι OPENAI_API_KEY. Στη συνέχεια εκχωρούμε το κλειδί API ως τιμή του. Το κλειδί API είναι μοναδικό για κάθε χρήστη. Έτσι, όταν εξασκείτε αυτό το σενάριο κώδικα, γράψτε το μυστικό κλειδί API σας.

llm = OpenAI ( θερμοκρασία = 0,9 )

προτροπή = PromptTemplate (

input_variables = [ 'προϊόντα' ] ,

πρότυπο = 'Πώς θα ονομαζόταν μια επωνυμία που πουλά {προϊόντα};' ,

)

Τώρα που το κλειδί έχει οριστεί ως μεταβλητή περιβάλλοντος, αρχικοποιούμε ένα περιτύλιγμα. Ρυθμίστε τη θερμοκρασία για τα μοντέλα OpenAI GPT. Η θερμοκρασία είναι ένα χαρακτηριστικό που μας βοηθά να προσδιορίσουμε πόσο απρόβλεπτη θα είναι η απόκριση. Όσο υψηλότερη είναι η τιμή της θερμοκρασίας, τόσο πιο ασταθείς είναι οι αποκρίσεις. Εδώ ορίσαμε την τιμή θερμοκρασίας στο 0,9. Έτσι, παίρνουμε τα πιο τυχαία αποτελέσματα.

Στη συνέχεια, αρχικοποιούμε μια κλάση PromptTemplate. Όταν χρησιμοποιούμε το LLM, δημιουργούμε μια προτροπή από την είσοδο που λαμβάνεται από τον χρήστη και στη συνέχεια τη περνάμε στο LLM αντί να στέλνουμε την είσοδο απευθείας στο LLM που απαιτεί σκληρή κωδικοποίηση (μια προτροπή είναι μια είσοδος που λάβαμε από το χρήστη και στον οποίο το καθορισμένο μοντέλο τεχνητής νοημοσύνης θα πρέπει να δημιουργήσει μια απάντηση). Έτσι, αρχικοποιούμε το PromptTemplate. Στη συνέχεια, μέσα στα σγουρά στηρίγματα, ορίζουμε τη μεταβλητή_input ως 'Προϊόντα' και το κείμενο του προτύπου είναι 'Πώς θα ονομαζόταν μια επωνυμία που πουλά {products};' Η εισαγωγή χρήστη λέει τι κάνει η επωνυμία. Στη συνέχεια, μορφοποιεί το μήνυμα με βάση αυτές τις πληροφορίες.

από langchain. αλυσίδες εισαγωγή LLMCchain

αλυσίδα = LLMCchain ( llm = llm , προτροπή = προτροπή )

Τώρα που το PromptTemplate μας έχει διαμορφωθεί, το επόμενο βήμα είναι να δημιουργήσουμε μια αλυσίδα LLM. Πρώτα, εισαγάγετε τη λειτουργική μονάδα LLMchain από τη βιβλιοθήκη 'langchain.chain'. Στη συνέχεια, δημιουργούμε μια αλυσίδα καλώντας τη συνάρτηση LLMchain() η οποία λαμβάνει την είσοδο του χρήστη και μορφοποιεί την προτροπή με αυτήν. Τέλος, στέλνει την απάντηση στο LLM. Έτσι, συνδέει το PromptTemplate και το LLM.

Τυπώνω ( αλυσίδα. τρέξιμο ( 'Προμήθειες τέχνης' ) )

Για να εκτελέσουμε την αλυσίδα, καλούμε τη μέθοδο chain.run() και παρέχουμε την είσοδο του χρήστη ως παράμετρο που ορίζεται ως 'Προμήθειες τέχνης'. Στη συνέχεια, περνάμε αυτή τη μέθοδο στη συνάρτηση Python print() για να εμφανιστεί το προβλεπόμενο αποτέλεσμα στην κονσόλα Python.

Το μοντέλο τεχνητής νοημοσύνης διαβάζει την προτροπή και κάνει μια απάντηση βάσει αυτής.

Δεδομένου ότι ζητήσαμε να ονομάσουμε μια μάρκα που πουλάει προμήθειες τέχνης, το προβλεπόμενο όνομα από το μοντέλο AI φαίνεται στο παρακάτω στιγμιότυπο:

Αυτό το παράδειγμα μας δείχνει το LLMchaining όταν παρέχεται μια μεμονωμένη μεταβλητή εισόδου. Αυτό είναι επίσης δυνατό όταν χρησιμοποιείτε πολλές μεταβλητές. Για αυτό, πρέπει απλώς να δημιουργήσουμε ένα λεξικό μεταβλητών για να τις εισάγουμε συνολικά. Ας δούμε πώς λειτουργεί αυτό:

από langchain. προτρέπει εισαγωγή PromptTemplate

από langchain. llms εισαγωγή OpenAI

εισαγωγή εσείς

εσείς . κατά προσέγγιση [ 'OPENAI_API_KEY' ] = 'sk- Your-API-KEY'

llm = OpenAI (θερμοκρασία=0,9)

prompt = PromptTemplate(

input_variables=['
Μάρκα ',' Προϊόν '],

πρότυπο='
Ποιο θα ήταν το όνομα του { Μάρκα } που πουλάει { Προϊόν } ? ',

)

από το langchain.chains εισαγωγή LLMCchain

chain = LLMCchain(llm=llm, prompt=prompt)

print(chain.run({

'Brand': '
Προμήθειες τέχνης ',

'Προϊόν': '
χρωματιστά '

}))

Ο κώδικας πηγαίνει το ίδιο με το προηγούμενο παράδειγμα, με τη διαφορά ότι πρέπει να περάσουμε δύο μεταβλητές στην κλάση προτύπου προτροπής. Έτσι, δημιουργήστε ένα λεξικό με τις μεταβλητές_input. Οι μεγάλες αγκύλες αντιπροσωπεύουν ένα λεξικό. Εδώ, έχουμε δύο μεταβλητές - 'Brand' και 'Product' - οι οποίες χωρίζονται με κόμμα. Τώρα, το κείμενο προτύπου που παρέχουμε είναι 'Ποιο θα ήταν το όνομα του {Brand} που πουλά το {Product};' Έτσι, το μοντέλο AI προβλέπει ένα όνομα που εστιάζει σε αυτές τις δύο μεταβλητές εισόδου.

Στη συνέχεια, δημιουργούμε μια αλυσίδα LLM η οποία μορφοποιεί την είσοδο του χρήστη με την προτροπή αποστολής της απάντησης στο LLM. Για να εκτελέσουμε αυτήν την αλυσίδα, χρησιμοποιούμε τη μέθοδο chain.run() και περνάμε το λεξικό των μεταβλητών με την είσοδο του χρήστη ως 'Επωνυμία': 'Προμήθειες τέχνης' και 'Προϊόν' ως 'Χρώματα'. Στη συνέχεια, περνάμε αυτή τη μέθοδο στη συνάρτηση Python print() για να εμφανιστεί η ληφθείσα απόκριση.

Η εικόνα εξόδου δείχνει το προβλεπόμενο αποτέλεσμα:

συμπέρασμα

Οι αλυσίδες είναι τα δομικά στοιχεία της LangChain. Αυτό το άρθρο περιγράφει την έννοια της χρήσης του LLMchain στο LangChain. Κάναμε μια εισαγωγή στο LLMchain και απεικονίσαμε την ανάγκη να τους χρησιμοποιήσουμε στο έργο Python. Στη συνέχεια, πραγματοποιήσαμε μια πρακτική απεικόνιση που δείχνει την υλοποίηση της αλυσίδας LLM συνδέοντας το PromptTemplate και το LLM. Μπορείτε να δημιουργήσετε αυτές τις αλυσίδες με μία μόνο μεταβλητή εισόδου καθώς και με πολλές μεταβλητές που παρέχονται από τον χρήστη. Παρέχονται επίσης οι δημιουργούμενες αποκρίσεις από το μοντέλο GPT.