Develop AI agents with Semantic Kernel - Jakob Ehn - NDC Oslo 2024

Learn how to build AI agents and co-pilots with Microsoft's Semantic Kernel framework. Explore plugins, planners, and best practices for integrating LLMs in your apps.

Key takeaways
  • Semantic Kernel is an open-source framework from Microsoft that helps combine language models with application code through plugins, planners, and personas

  • Plugins can be either prompts (defined in YAML) or native code (C#) and serve as the bridge between AI and data/services

  • Models are stateless and require context/history to be passed with each interaction - Semantic Kernel handles this automatically

  • Function calling allows models to identify and call appropriate plugins based on user queries without explicit instructions

  • Different planners are available:

    • Sequential planner for basic function chaining
    • Handlebars planner for more structured planning
    • Custom planners can be implemented for specific needs
  • Temperature settings control how deterministic vs creative the model responses are

  • Co-pilots built with Semantic Kernel can:

    • Access internal company data and services
    • Maintain conversation context
    • Execute actions through plugins
    • Validate before executing sensitive operations
  • Best practices:

    • Use simpler/cheaper models when possible
    • Store prompts separately from code
    • Include examples in prompts for better results
    • Break down complex tasks into smaller specialized agents
  • Multiple models can be used in the same application for different purposes (GPT-3.5 vs GPT-4)

  • Support exists for .NET, Python and Java with similar feature parity across platforms