LangChain LLM е горещият разговор в града. Получете общ преглед на това какво представлява и как можете да започнете с него.
С въвеждането на големи езикови модели (LLM) обработката на естествения език стана тема за разговори в интернет. Ежедневно се разработват нови приложения благодарение на LLM като ChatGPT и LangChain.
LangChain е Python рамка с отворен код, позволяваща на разработчиците да разработват приложения, задвижвани от големи езикови модели. Неговите приложения са чатботове, обобщаване, генеративни въпроси и отговори и много други.
Тази статия ще предостави въведение в LangChain LLM. Ще обхване основните понятия, как се сравнява с други езикови модели и как да започнете с него.
Разбиране на LangChain LLM
Преди да обясните как работи LangChain, първо трябва да разберете как работят големите езикови модели. Големият езиков модел е вид изкуствен интелект (AI), който използва дълбоко обучение за обучение на моделите за машинно обучение на големи данни, състоящи се от текстови, числови и кодови данни.
Огромното количество данни позволява на модела да научи съществуващите модели и връзки между думи, фигури и символи. Тази функция позволява на модела да изпълнява набор от задачи, като например:
- Генериране на текст, езиков превод, творческо, техническо и академично писане на съдържание и точни и уместни отговори на въпроси.
- Откриване на обекти в изображения.
- Резюмиране на книги, статии и научни доклади.
Най-същественото ограничение на LLM е, че моделите са много общи. Тази функция означава, че въпреки способността им да изпълняват няколко задачи ефективно, те понякога могат да предоставят общи отговори на въпроси или подкани, изискващи експертен опит и задълбочени познания в областта, вместо конкретни отговори.
Разработена от Harrison Chase в края на 2022 г., рамката LangChain предлага иновативен подход към LLM. Процесът започва с предварителна обработка на текстовете на набора от данни, като го разделя на по-малки части или резюмета. След това резюметата се вграждат във векторно пространство. Моделът получава въпрос, търси в резюметата и предоставя подходящия отговор.
Методът за предварителна обработка на LangChain е критична функция, която е неизбежна, тъй като LLM стават по-мощни и интензивни за данни. Този метод се използва главно в случаи на кодово и семантично търсене, тъй като осигурява събиране в реално време и взаимодействие с LLM.
LangChain LLM срещу. Други езикови модели
Следният сравнителен преглед има за цел да подчертае уникалните характеристики и възможности, които отличават LangChain LLM от другите съществуващи езикови модели на пазара:
- памет: Няколко LLM имат кратка памет, което обикновено води до загуба на контекст, ако подканите надхвърлят лимита на паметта. LangChain обаче предоставя предишните подкани и отговори за чат, решавайки проблема с ограниченията на паметта. Историята на съобщенията позволява на потребителя да повтори предишните съобщения до LLM, за да обобщи предишния контекст.
- LLM Превключване: В сравнение с други LLM, които заключват вашия софтуер с API на един модел, LangChain предоставя абстракция, която опростява превключването на LLM или интегрирането на множество LLM във вашето приложение. Това е полезно, когато искате да надстроите софтуерните си възможности с помощта на компактен модел, като например StableLM на Stability AI, да речем от GPT-3.5 на OpenAI.
- Интеграция: Интегрирането на LangChain във вашето приложение е лесно в сравнение с други LLMs. Той осигурява работни потоци на тръбопровода вериги и агенти, което ви позволява бързо да включите LangChain във вашето приложение. По отношение на линейните тръбопроводи, веригите са обекти, които по същество свързват множество части. Агентите са по-усъвършенствани, позволявайки ви да изберете как компонентите да си взаимодействат с помощта на бизнес логиката. Например, може да искате да използвате условна логика, за да определите следващия курс на действие въз основа на резултатите от LLM.
- Предаване на данни: Поради общия текстово-базиран характер на LLMs, обикновено е трудно да се подадат данни към модела. LangChain решава този проблем, като използва индекси. Индексите позволяват на приложението да импортира данни в променливи формати и да ги съхранява по начин, който прави възможно обслужването им ред по ред на LLM.
- Отговори: LangChain предоставя инструменти за анализатор на изхода, за да даде отговори в подходящ формат, за разлика от други LLM, чийто отговор на модела се състои от общ текст. Когато използвате AI в приложение, за предпочитане е да имате структуриран отговор, срещу който можете да програмирате.
Първи стъпки с LangChain LLM
Сега ще научите как да внедрите LangChain в реален сценарий на употреба, за да разберете как работи. Преди да започнете разработката, трябва да настроите средата за разработка.
Настройване на вашата среда за разработка
първо, създайте виртуална среда и инсталирайте зависимостите по-долу:
- OpenAI: За да интегрирате GPT-3 API във вашето приложение.
- LangChain: За да интегрирате LangChain във вашето приложение.
Използвайки pip, изпълнете командата по-долу, за да инсталирате зависимостите:
pipenv инсталирайте langchain openai
Командата по-горе инсталира пакетите и създава виртуална среда.
Импортирайте инсталираните зависимости
Първо, импортирайте необходимите класове като LLMChain, OpenAI, ConversationChain, и PromptTemplate от Langchain пакет.
от Langchain импортиране ConversationChain, OpenAI, PromptTemplate, LLMChain
от langchain.memory импортиране ConversationBufferWindowMemory
Класовете LangChain очертават и изпълняват веригите на езиковия модел.
Достъп до OpenAI API ключ
След това вземете OpenAI API ключа. За достъп до API ключа на OpenAI трябва да имате акаунт в OpenAI, след което преминете към OpenAI API платформа.
На таблото за управление щракнете върху иконата на профил. След това щракнете върху Вижте API ключове бутон.
След това щракнете върху Създайте нов таен ключ бутон, за да получите нов API ключ.
Въведете исканото име на API ключа.
Ще получите a таен ключ подкана.
Копирайте и запазете API ключа на сигурно място за бъдеща употреба.
Разработване на приложение с помощта на LangChain LLM
Сега ще продължите да разработвате просто приложение за чат, както следва:
# Персонализирайте шаблона за LLM
шаблон = Assistant е голям езиков модел, обучен от OpenAI.{история}
Човек: {human_input}
асистент:
подкана = PromptTemplate (input_variables=["история", "човешки_принос"], шаблон=шаблон)
След това ще заредите веригата ChatGPT, като използвате API ключа, който сте съхранили по-рано.
chatgpt_chain = LLMChain(
llm=OpenAI(openai_api_key=„OPENAI_API_KEY“,температура=0),
prompt=подкана,
многословен=Вярно,
memory=ConversationBufferWindowMemory (k=2),
)
# Предскажете изречение с помощта на веригата chatgpt
изход = chatgpt_chain.predict(
човешки_вход=„Какво е MakeUseOf?“
)
# Показване на отговора на модела
печат (изход)
Този код зарежда LLM веригата с OpenAI API ключа и шаблона за подкана. След това се предоставя въвеждане от потребителя и изходът му се показва.
По-горе е очакваният резултат.
Нарастващото влияние на LLM
Потреблението на LLMs нараства бързо и променя начина, по който хората взаимодействат с машините за знания. Рамки като LangChain са в челните редици на предоставянето на разработчиците на плавен и лесен начин за обслужване на LLM на приложения. Генеративни AI модели като ChatGPT, Bard и Hugging Face също не са изоставени в напредналите LLM приложения.