Πώς να χρησιμοποιήσετε τη βιβλιοθήκη 'asyncio' στο LangChain;

Pos Na Chresimopoiesete Te Bibliotheke Asyncio Sto Langchain



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

Αυτό το άρθρο δείχνει πώς να χρησιμοποιήσετε τη βιβλιοθήκη 'asyncio' στο LangChain.







Πώς να χρησιμοποιήσετε/εκτελέσετε τη βιβλιοθήκη 'asyncio' στο LangChain;

Το Async API μπορεί να χρησιμοποιηθεί ως υποστήριξη για LLM, επομένως για τη χρήση της βιβλιοθήκης asyncio στο LangChain, απλώς ακολουθήστε αυτόν τον οδηγό:



Εγκαταστήστε προαπαιτούμενα



Εγκαταστήστε τη λειτουργική μονάδα LangChain για να αρχίσετε να χρησιμοποιείτε τη βιβλιοθήκη asyncio στο LangChain για να καλείτε ταυτόχρονα LLMs:





κουκούτσι εγκαθιστώ langchain



Η ενότητα OpenAI απαιτείται επίσης για τη δημιουργία LLM χρησιμοποιώντας τα OpenAIEmbeddings:

κουκούτσι εγκαθιστώ openai

Μετά τις εγκαταστάσεις, απλώς διαμορφώστε το κλειδί OpenAI API χρησιμοποιώντας τον ακόλουθο κώδικα:

εισάγετε μας
εισαγωγή getpass

os.περιβάλλον [ 'OPENAI_API_KEY' ] = getpass.getpass ( 'Κλειδί OpenAI API:' )

Χρήση του asyncio για τη δημιουργία LLM

Η βιβλιοθήκη asyncio μπορεί να χρησιμοποιηθεί για την υποστήριξη LLM καθώς ο ακόλουθος κώδικας τη χρησιμοποιεί στο LangChain:

εισαγωγή χρόνος
εισαγωγή asyncio
#Εισαγωγή βιβλιοθηκών asyncio από το LangChain για να το χρησιμοποιήσετε
από το langchain.llms εισαγωγή OpenAI

#define τη συνάρτηση για να λάβετε τη χρονική σήμανση της σειριακής δημιουργίας
def generate_serially ( ) :
llm = OpenAI ( θερμοκρασία = 0,9 )
Για _ σε εύρος ( 5 ) :
resp = llm.δημιουργώ ( [ 'Τι κάνεις?' ] )
Τυπώνω ( αντιστοίχως γενιές [ 0 ] [ 0 ] .κείμενο )

#define τη συνάρτηση για να λάβετε τη χρονική σήμανση της σύγχρονης παραγωγής
async def async_generate ( llm ) :
resp = περιμένω llm.generate ( [ 'Τι κάνεις?' ] )
Τυπώνω ( αντιστοίχως γενιές [ 0 ] [ 0 ] .κείμενο )

#define τη συνάρτηση για τη λήψη της χρονικής σήμανσης της ταυτόχρονης δημιουργίας δεδομένων
async def generate_concurrently ( ) :
llm = OpenAI ( θερμοκρασία = 0,9 )
εργασίες = [ async_generate ( llm ) Για _ σε εύρος ( 10 ) ]
περιμένω asyncio.μαζεύομαι ( * καθήκοντα )

#διαμορφώστε την προκύπτουσα έξοδο χρησιμοποιώντας το asyncio για να λάβετε ταυτόχρονη έξοδο
s = time.perf_counter ( )
περιμένουμε την παραγωγή_ταυτόχρονα ( )
παρήλθε = χρόνος.perf_counter ( ) - s
Τυπώνω ( '\033[1m' + στ 'Ταυτόχρονη εκτέλεση σε {elapsed:0.2f} δευτερόλεπτα.' + '\033[0m' )

#διαμορφώστε τη χρονική σήμανση για την προκύπτουσα έξοδο για να λάβετε σειριακή έξοδο
s = time.perf_counter ( )
δημιουργώ_σειριακά ( )
παρήλθε = χρόνος.perf_counter ( ) - s
Τυπώνω ( '\033[1m' + στ 'Η σειρά εκτελέστηκε σε {elapsed:0.2f} δευτερόλεπτα.' + '\033[0m' )

Ο παραπάνω κώδικας χρησιμοποιεί τη βιβλιοθήκη asyncio για τη μέτρηση του χρόνου για τη δημιουργία κειμένων χρησιμοποιώντας δύο διακριτές συναρτήσεις όπως π.χ. generate_serially() και generate_concurrently() :

Παραγωγή

Το ακόλουθο στιγμιότυπο οθόνης δείχνει ότι η χρονική πολυπλοκότητα τόσο για τις λειτουργίες όσο και για τη χρονική πολυπλοκότητα της ταυτόχρονης δημιουργίας κειμένου είναι καλύτερη από τη σειριακή δημιουργία κειμένου:

Αυτό αφορά τη χρήση της βιβλιοθήκης 'asyncio' για τη δημιουργία LLM στο LangChain.

συμπέρασμα

Για να χρησιμοποιήσετε τη βιβλιοθήκη asyncio στο LangChain, απλώς εγκαταστήστε τις μονάδες LangChain και OpenAI για να ξεκινήσετε τη διαδικασία. Το Async API μπορεί να είναι χρήσιμο κατά τη δημιουργία ενός μοντέλου LLM για τη δημιουργία chatbots για να μάθετε από προηγούμενες συνομιλίες. Αυτός ο οδηγός έχει εξηγήσει τη διαδικασία χρήσης της βιβλιοθήκης asyncio για την υποστήριξη των LLMs χρησιμοποιώντας το πλαίσιο LangChain.