Semantic Kernel: создание интеллектуальных AI-агентов и систем
Semantic Kernel — это модельно-независимый SDK для создания и оркестрации интеллектуальных AI-агентов и многопользовательских систем. Этот проект позволяет быстро интегрировать современные технологии LLM в приложения, обслуживая как простые чат-боты, так и сложные рабочие процессы с несколькими агентами.
Переход к Microsoft Agent Framework (MAF) обозначает более высокий уровень стабильности и поддержки. Если ты заинтересован в создании робота-ассистента или мультиагентной системы, именно этот фреймворк даст тебе необходимые инструменты для эффективной работы с многими провайдерами. Будь готов к тому, что для оптимальной работы может потребоваться дополнительная настройка и изучение документации.
Проект написан на C# и Python, доступен через NuGet и PyPI. Информация о системных требованиях не указана, но общая направленность на серверные решения подразумевает работу в средах, поддерживающих эти языки. Будь готов к миграции, если использовал предыдущую версию Semantic Kernel, и подчеркни, что проект находится на стадии активной разработки с возможными изменениями в будущем.
Проект Semantic Kernel от Microsoft представляет собой модель-агностический SDK, который помогает разработать, организовать и развернуть AI-агентов и многопользовательские системы. Это решение подходит для создания как простых чат-ботов, так и сложных рабочих процессов с несколькими агентами, предлагая инструменты для надежной и гибкой разработки.
Основные возможности
- Гибкость моделей: Подключение к любому LLM с поддержкой таких провайдеров, как OpenAI, Azure OpenAI, Hugging Face и других.
- Каркас агентов: Создание модульных AI-агентов с доступом к инструментам/плагинам, памяти и возможностям планирования.
- Многопользовательские системы: Организация сложных рабочих процессов с взаимодействующими специализированными агентами.
- Экосистема плагинов: Возможности расширения с помощью функций на родном коде, шаблонов запросов и спецификаций OpenAPI.
- Поддержка векторных БД: Легкая интеграция с Azure AI Search, Elasticsearch, Chroma и другими.
- Мультимодальная поддержка: Обработка текстовых, визуальных и аудио входов.
- Локальное развертывание: Запуск с Ollama, LMStudio или ONNX.
- Готовность к предприятию: Разработка с акцентом на наблюдаемость, безопасность и стабильные API.
Системные требования
- Python: 3.10+
- .NET: .NET 10.0+
- Java: JDK 17+
- Поддерживаемые ОС: Windows, macOS, Linux
Установка
Сначала необходимо установить переменную окружения для своих AI-сервисов:
- Azure OpenAI:
export AZURE_OPENAI_API_KEY=AAA.... - или OpenAI напрямую:
export OPENAI_API_KEY=sk-...
После этого можно установить SDK:
- Python:
pip install semantic-kernel - .NET:
dotnet add package Microsoft.SemanticKernel dotnet add package Microsoft.SemanticKernel.Agents.Core - Java: Следуй инструкциям по сборке на [вики GitHub](https://github.com/microsoft/semantic-kernel-java/blob/main/BUILD.md).
Пример использования
Вот пример, как можно создать простого помощника на Python:
import asyncio
from semantic_kernel.agents import ChatCompletionAgent
from semantic_kernel.connectors.ai.open_ai import AzureChatCompletion
async def main():
agent = ChatCompletionAgent(
service=AzureChatCompletion(),
name="SK-Assistant",
instructions="You are a helpful assistant.",
)
response = await agent.get_response(messages="Write a haiku about Semantic Kernel.")
print(response.content)
asyncio.run(main())
Проблемы и их решение
Если ты столкнулся с ошибками, проверь следующее:
- Ошибки аутентификации: Убедись, что переменные окружения с API-ключами настроены правильно.
- Доступность модели: Убедись, что у тебя есть доступ к развертыванию Azure OpenAI или модели OpenAI.
Кроме того, ты можешь обратиться к [сообществу Discord](https://aka.ms/SKDiscord) для получения помощи или заглянуть на [GitHub Issues](https://github.com/microsoft/semantic-kernel/issues) для проверки известных проблем.
Открыть на GitHub: microsoft/semantic-kernel →
RepoRadar