Создание контекстно-осведомленного AI-ассистента с использованием LangChain и Gemini Pro



Создание Контекстно-Осознанного AI Ассистента

Создание Контекстно-Осознанного AI Ассистента

В этом практическом руководстве мы реализуем простого контекстно-осознанного AI ассистента с использованием LangChain, LangGraph и языковой модели Gemini от Google. Данный пример демонстрирует основные принципы Протокола Контекста Модели (MCP) в упрощенной версии, которая позволяет взаимодействовать с внешними инструментами и получать контекстную информацию.

Шаг 1: Установка необходимых библиотек

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

        !pip install langchain langchain-google-genai langgraph python-dotenv
        !pip install google-generativeai
    

Шаг 2: Настройка API ключа

Установите ваш ключ API для Gemini как переменную окружения, что обеспечит безопасный доступ к нему. Просто замените ‘Ваш API ключ’ вашим фактическим ключом.

        import os
        os.environ['GEMINI_API_KEY'] = 'Ваш API ключ'
    

Шаг 3: Инициализация языковой модели

Мы инициализируем языковую модель Gemini и создаем простой инструмент для извлечения информации о концепциях AI:

        from langchain_google_genai import ChatGoogleGenerativeAI

        model = ChatGoogleGenerativeAI(
            model='gemini-2.0-flash-lite',
            temperature=0.7,
            google_api_key=os.getenv('GEMINI_API_KEY')
        )

        class SimpleKnowledgeBaseTool(BaseTool):
            name: str = 'simple_knowledge_base'
            description: str = 'Извлекает основную информацию о концепциях AI.'

            def _run(self, query: str):
                knowledge = {
                    'MCP': 'Модель Контекста (MCP) - это открытый стандарт, предназначенный для связи AI ассистентов с внешними источниками данных.',
                    'RAG': 'Повышение Ответов (RAG) улучшает ответы LLM динамическим извлечением релевантных документов.'
                }
                return knowledge.get(query, "У меня нет информации по этой теме.")
        

Шаг 4: Создание асинхронного чата

Мы создаем асинхронный цикл общения с ассистентом, который будет обрабатывать пользовательские запросы:

        import nest_asyncio
        import asyncio

        nest_asyncio.apply()

        async def chat_with_agent():
            inputs = {"messages": []}
            print("Ассистент готов! Введите 'exit' для выхода.")
            while True:
                user_input = input("Вы: ")
                if user_input.lower() == 'exit':
                    print("Завершение чата.")
                    break
                inputs["messages"].append(HumanMessage(content=user_input))
                async for state in model(inputs, stream_mode="values"):
                    last_message = state["messages"][-1]
                    if isinstance(last_message, AIMessage):
                        print("Ассистент:", last_message.content)
                    inputs["messages"] = state["messages"]

        await chat_with_agent()
    

Заключение

Этот учебник предоставляет практическую основу для создания контекстно-осознанных AI агентов, вдохновленных стандартом MCP. Мы продемонстрировали использование настраиваемых инструментов и извлечение знаний, что открывает возможности для создания более сложных AI систем.

Дополнительные Рекомендации

Ищите процессы, которые можно автоматизировать, и идентифицируйте ключевые показатели эффективности (KPI) для оценки влияния AI на бизнес. Начните с небольшого проекта и постепенно расширяйте использование AI. Если вам нужна помощь в управлении AI, свяжитесь с нами по адресу hello@itinai.ru.

AI Assistant

Не забудьте подписаться на наш Telegram и посетить наш сайт для получения дополнительной информации о решениях на основе AI.


Новости в сфере искусственного интеллекта