Создание Контекстно-Осознанного 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.
Не забудьте подписаться на наш Telegram и посетить наш сайт для получения дополнительной информации о решениях на основе AI.