Начинаем работу с агентами в LangChain?

Nacinaem Rabotu S Agentami V Langchain



LangChain — это платформа для решения задач обработки естественного языка для создания приложений или программного обеспечения, которые могут взаимодействовать и общаться с людьми. Чат-боты или модели большого языка (LLM) предназначены для создания среды, которая может выступать в качестве интерфейса для чата/разговора. Эти чаты ведутся на человеческих языках, называемых естественными языками, такими как английский и т. д., между людьми и моделью ИИ.

Краткое описание

Этот пост продемонстрирует следующее:







Что такое агенты в обработке естественного языка (NLP)



Начало работы с агентами в LangChain



Заключение





Что такое агенты в обработке естественного языка (NLP)?

Агенты являются жизненно важными компонентами приложения естественного языка и используют функцию распознавания естественного языка (NLU) для понимания запросов. Эти агенты представляют собой программы, которые действуют как шаблон диалога для взаимодействия с людьми с использованием последовательности задач. Агенты используют несколько инструментов, которые агент может вызывать для выполнения нескольких действий или указания следующей задачи для выполнения.

Начало работы с агентами в LangChain

Начните процесс создания агентов для общения с людьми, извлекая выходные данные с помощью агентов в LangChain. Чтобы изучить процесс начала работы с агентами в LangChain, просто выполните следующие шаги:



Шаг 1: Установка фреймворков

Сначала начните с процесса установки платформы LangChain, используя « пункт ” для получения необходимых зависимостей для использования агентов:

pip установить langchain

Установите модуль OpenAI для сборки LLM и используйте его для настройки агентов в LangChain:

pip установить openai

Настройте среду для модуля OpenAI, используя его ключ API от учетной записи, выполнив следующий код:

Импортировать ты
Импортировать получить пропуск

ты . примерно [ 'ОПЕНАЙ_API_KEY' ] '=' получить пропуск . получить пропуск ( «Ключ API OpenAI:» )

Шаг 2. Настройка модели чата

Импортируйте модуль ChatOpenAI из LangChain, чтобы создать LLM, используя его функцию:

от лангчейн. чат_модели Импортировать ЧатOpenAI

лм '=' ЧатOpenAI ( температура '=' 0 )

Импортируйте инструменты для агента, чтобы настроить задачи или действия, которые должен выполнить агент. Следующий код использует метод get_word_length() для получения длины слова, предоставленного пользователем:

от лангчейн. агенты Импортировать инструмент

@ инструмент

защита get_word_length ( слово: ул. ) - > интервал :

'''получение длины слова'''

возвращаться только ( слово )

инструменты '=' [ get_word_length ]

Настройте шаблон или структуру модели чата, чтобы создать интерфейс для чата:

от лангчейн. подсказки Импортировать ЧатПодсказкаШаблон , СообщенияЗаполнитель

быстрый '=' Шаблон чат-подсказки. from_messages ( [

( 'система' , «Ваш помощник потрясающий, но ему нужно усовершенствоваться в расчете длин» ) ,

( 'пользователь' , '{вход}' ) ,

СообщенияЗаполнитель ( имя_переменной '=' 'agent_scratchpad' ) ,

] )

Шаг 3: Строительный агент

Импортируйте библиотеку инструментов для построения LLM с помощью инструментов с использованием функций OpenAI из модуля LangChain:

от лангчейн. инструменты . оказывать Импортировать format_tool_to_openai_function

llm_with_tools '=' лм. связывать (

функции '=' [ format_tool_to_openai_function ( т ) для т в инструменты ]

)

Настройте агент с помощью агента функции OpenAI, чтобы он использовал синтаксический анализатор вывода для установки последовательностей действий/задач:

от лангчейн. агенты . format_scratchpad Импортировать format_to_openai_functions

от лангчейн. агенты . выходные_парсеры Импортировать OpenAIFunctionsAgentOutputParser

агент '=' {

'вход' : лямбда х: х [ 'вход' ] ,

'agent_scratchpad' : лямбда x: format_to_openai_functions ( Икс [ 'промежуточные_шаги' ] )

} | подсказать | llm_with_tools | OpenAIFunctionsAgentOutputParser ( )

Шаг 4. Вызов агента

На следующем шаге используется функция вызова() для вызова агента с использованием аргументов input и промежуточных_шагов:

агент. вызывать ( {

'вход' : «сколько букв в слове хорошо» ,

'промежуточные_шаги' : [ ]

} )

Шаг 5. Настройка инструментов агента

После этого просто импортируйте библиотеку AgentFinish, чтобы настроить промежуточные_шаги, объединив все шаги в последовательность для завершения действия:

от лангчейн. схема . агент Импортировать AgentFinish
промежуточные_шаги '=' [ ]
пока Истинный :
выход '=' агент. вызывать ( {
'вход' : «письма в добре» ,
'промежуточные_шаги' : промежуточные_шаги
} )
если isinstance ( выход , AgentFinish ) :
конечный результат '=' выход. возвращаемые_значения [ 'выход' ]
перерыв
еще :
Распечатать ( выход. инструмент , выход. инструмент_вход )
инструмент '=' {
'get_word_length' : get_word_length
} [ выход. инструмент ]
наблюдение '=' инструмент. бегать ( выход. инструмент_вход )
промежуточные_шаги. добавить ( ( выход , наблюдение ) )
Распечатать ( конечный результат )

Шаг 6. Тестирование агента

Теперь запустите агент, вызвав метод AgentExecutor() после импорта его библиотеки из LangChain:

от лангчейн. агенты Импортировать АгентИсполнитель

агент_исполнитель '=' АгентИсполнитель ( агент '=' агент , инструменты '=' инструменты , подробный '=' Истинный )

В конце вызовите агент_executor с входным аргументом, чтобы ввести запрос для агента:

агент_исполнитель. вызывать ( { 'вход' : «сколько букв в слове хорошо» } )

После завершения цепочки агент отобразил ответ на вопрос, указанный во входном аргументе:

Это все, что касается начала работы с агентами в рамках LangChain.

Заключение

Чтобы начать работу с агентами в LangChain, просто установите модули, необходимые для настройки среды, с помощью ключа API OpenAI. После этого настройте модель чата, задав шаблон подсказки для построения агента с последовательностью промежуточных шагов. После настройки агента просто создайте инструменты, указав задачи после предоставления пользователю входной строки. В этом блоге продемонстрирован процесс использования агентов в LangChain.