LangChain to otwarty framework do tworzenia aplikacji AI w języku Python, który zapewnia moduły i narzędzia potrzebne do budowy aplikacji opartych na dużych modelach językowych. Dzięki LangChain programiści mogą łatwo integrować się z dużymi modelami językowymi (LLM), aby wykonywać zadania takie jak generowanie tekstu, odpowiadanie na pytania, tłumaczenie i prowadzenie rozmów. LangChain obniża próg rozwoju aplikacji opartych na sztucznej inteligencji, umożliwiając każdemu stworzenie własnych kreatywnych aplikacji opartych na LLM.
Funkcje LangChain:
- LLM i prompty: LangChain abstrahuje interfejs API dla wszystkich dużych modeli, unifikuje dostęp do dużych modeli i dostarcza mechanizm do zarządzania szablonami promptów.
- Łańcuchy: LangChain enkapsuluje niektóre wspólne scenariusze w gotowe moduły, takie jak systemy odpowiadania na pytania oparte na kontekście, generowanie naturalnego języka zapytań SQL itp. Te zadania są wykonywane krok po kroku jak workflow, stąd nazwa "łańcuch".
- LCEL: LangChain Expression Language (LCEL) to główna funkcja nowej wersji LangChain, służy do rozwiązywania problemów z orkiestracją workflow. Dzięki wyrażeniom LCEL możemy elastycznie dostosowywać przepływ przetwarzania zadań AI, znane również jako elastyczne niestandardowe "łańcuchy".
- Retrieval Augmented Generation (RAG): Ponieważ duże modele (LLM) nie rozumieją nowych informacji i nie potrafią odpowiadać na nowe pytania, importujemy nowe informacje do LLM, aby poprawić jakość wygenerowanej treści. Model ten nazywa się Retrieval Augmented Generation (RAG).
- Agenci: Jest to wzorzec projektowania aplikacji opartych na dużych modelach (LLM), wykorzystujący zdolności zrozumienia języka naturalnego i wnioskowania LLM (działający jak mózg), do automatycznego wywoływania zewnętrznych systemów i urządzeń w celu wykonania zadań zgodnie z wymaganiami użytkownika. Na przykład użytkownik wprowadza "wziąć jutro dzień wolny", a duży model (LLM) automatycznie wywołuje system urlopów w celu zainicjowania wniosku o urlop.
- Pamięć modelu: Pozwala to dużemu modelowi (LLM) zapamiętywać treści poprzednich rozmów, znane jako pamięć modelu.