O que é Semantic Kernel? SDK da Microsoft para orquestração de IA

O que é Semantic Kernel? SDK de código aberto da Microsoft para orquestrar IA em C#, Python e Java, com kernel, plugins e importação de OpenAPI para plugins.

Ashley Goolam

Ashley Goolam

26 junho 2026

O que é Semantic Kernel? SDK da Microsoft para orquestração de IA

Apidog para empresas

Implantação local

SSO & RBAC

Conforme SOC 2

Explorar Apidog Enterprise

Se você constrói software na pilha da Microsoft e quer adicionar IA sem anexar um serviço Python à parte, o Semantic Kernel é o SDK que a Microsoft criou para você. É um kit de código aberto que conecta seu código e APIs existentes a grandes modelos de linguagem, e é executado em C#, Python e Java. Este guia explica o que é, como o kernel e os plugins se encaixam, e como seu suporte à especificação OpenAPI transforma qualquer API REST em algo que um modelo pode chamar.

botão

O que é o Semantic Kernel de fato

Semantic Kernel (SK) é um kit de desenvolvimento leve e de código aberto da Microsoft para construir agentes de IA e integrar modelos ao seu código. A Microsoft o descreve como um middleware: ele se posiciona entre sua aplicação e o modelo, traduz as requisições do modelo em chamadas de função reais, as executa e retorna os resultados. Você escreve código normal. O modelo decide quando chamá-lo.

Três coisas fazem o SK se destacar da multidão de bibliotecas de agentes.

Primeiro, ele é genuinamente multilíngue. O SK distribui SDKs oficiais para C#/.NET, Python e Java, com compromissos de estabilidade de versão 1.0+ para todos os três. A maioria dos frameworks de agentes são Python-first e tratam outras linguagens como algo secundário. Se o seu backend é .NET, o SK é uma das poucas opções maduras que se sente nativa.

Segundo, ele é agnóstico em relação ao modelo. O SK se conecta a OpenAI, Azure OpenAI e outros provedores através de um conjunto de conectores. Quando você quiser trocar de modelo, você muda a configuração, não toda a sua aplicação.

Terceiro, ele é construído pensando em preocupações empresariais. Telemetria, hooks e filtros são de primeira classe, então você pode registrar, auditar e interceptar o que a IA faz. Esse foco é o motivo pelo qual a Microsoft e várias equipes da Fortune 500 o adotaram.

O kernel, plugins e funções

O objeto central é o kernel. Pense nele como um contêiner de injeção de dependência para IA. Você registra seus conectores de modelo e seus plugins no kernel, e então pede para ele executar as coisas. O kernel gerencia a orquestração: prompt, chamada de modelo, chamada de função, resultado, repetição.

Um plugin é um grupo nomeado de funções que você expõe ao modelo. Uma função é uma única capacidade que o modelo pode invocar. As funções vêm em dois tipos:

Aqui está a estrutura em C#. Você constrói um kernel, registra um modelo de chat, adiciona um plugin e permite que o modelo chame funções quando precisar delas.

var builder = Kernel.CreateBuilder();
builder.AddOpenAIChatCompletion("gpt-4o", apiKey);
builder.Plugins.AddFromType<LightsPlugin>("Lights");
Kernel kernel = builder.Build();

// The model can now invoke LightsPlugin functions during a chat
var result = await kernel.InvokePromptAsync("Turn the kitchen light blue");

Quando o modelo retorna e o kernel percebe que ele quer chamar change_light_state, o kernel executa seu código, captura o resultado e o alimenta de volta ao modelo. Esse loop é o coração do SK.

O padrão OpenAPI para plugin

Este é o recurso que mais vale a pena conhecer, e é a ponte mais limpa para seus serviços existentes. O SK pode importar uma especificação OpenAPI e transformar cada operação em uma função chamável automaticamente. Você não escreve código de "wrapper". Você aponta o SK para uma especificação, e cada caminho/operação se torna uma função que o modelo pode invocar.

Em C#, a chamada é ImportPluginFromOpenApiAsync. Em Python, é add_plugin_from_openapi. Java possui um importador equivalente. Aqui está a versão C# carregando uma especificação de uma URL:

await kernel.ImportPluginFromOpenApiAsync(
    pluginName: "lights",
    uri: new Uri("https://example.com/v1/swagger.json"),
    executionParameters: new OpenApiFunctionExecutionParameters()
    {
        EnablePayloadNamespacing = true
    }
);

Nos bastidores, o SK analisa a especificação, extrai o nome, a descrição, o tipo e o esquema para cada parâmetro, e entrega esses metadados ao modelo. O modelo raciocina sobre qual operação chamar e quais argumentos passar. O SK então constrói a requisição HTTP, aplica seu callback de autenticação, a envia e lê a resposta de volta. O SK suporta OpenAPI 2.0 e 3.0, e rebaixa especificações 3.1 para 3.0 quando possível.

O problema é que as especificações escritas para humanos nem sempre são claras para um modelo. A própria orientação da Microsoft é adicionar IDs de operação descritivos, escrever descrições de parâmetros úteis, manter a contagem de endpoints baixa e preferir enums e parâmetros tipados em vez de strings soltas. A qualidade da sua especificação influencia diretamente a forma como o agente chama sua API. Isso faz da especificação em si algo que vale a pena projetar e testar cuidadosamente, e não um detalhe.

Agentes e planejamento

O SK começou com planejadores explícitos que decompunham um objetivo em etapas. Desde então, o framework mudou para a chamada de função, onde o próprio modelo decide quais funções invocar e em que ordem, o que é mais confiável com modelos modernos. Além disso, o SK adicionou uma camada de Agent Framework para construir agentes e padrões multiagentes, com estado baseado em sessão, loops agentic e suporte ao Model Context Protocol (MCP) para conectar ferramentas externas.

Se você está comparando abordagens, veja como o SK se alinha a outros SDKs de agentes abordados neste blog.

Framework Linguagens primárias Modelo de orquestração Melhor para
Semantic Kernel C#/.NET, Python, Java Chamada de função + agentes Equipes .NET e empresariais
LangGraph Python, JS Grafo de estado explícito Fluxos de agentes complexos e ramificados
Google ADK Python Modelo de agente + ferramenta Pilha Google Cloud e Gemini
OpenAI Agents SDK Python, JS Agentes + transferências Aplicativos centrados em OpenAI

Nenhum destes é estritamente melhor. A escolha certa depende da sua linguagem, do seu provedor de modelo e de quanto controle explícito sobre a execução você deseja.

Onde o Semantic Kernel se encaixa com o Microsoft Agent Framework

Esta área evolui rapidamente, então aqui está o estado atual das coisas. A Microsoft introduziu o Microsoft Agent Framework (MAF), e a documentação o descreve como o sucessor direto do Semantic Kernel e do AutoGen, ambos construídos pelas mesmas equipes. O MAF combina as abstrações de agente do AutoGen com os recursos corporativos do SK e adiciona fluxos de trabalho baseados em grafos para orquestração multiagente.

O que isso significa na prática:

Então, trate o SK como uma escolha sólida e comprovada em produção que ainda é mantida, sabendo que o investimento mais recente está indo para o MAF. Se você está decidindo hoje e seu código já está em SK, não há pressa. Se você está começando do zero e quer a direção mais recente, leia a documentação do MAF antes de se comprometer.

Quando usar o Semantic Kernel

Use o SK quando:

Procure outras opções quando sua equipe for apenas Python e você quiser os recursos multiagentes mais recentes, caso em que o MAF ou uma biblioteca "graph-first" pode ser mais adequada para você.

Testando as APIs por trás do seu agente Semantic Kernel

É aqui que as ferramentas de API importam, e onde o Apidog se encaixa perfeitamente. O SK não constrói nem substitui suas APIs. Ele as chama. Um agente SK depende de dois tipos de endpoints: o endpoint LLM com o qual ele se comunica, e as APIs REST que você importa como plugins OpenAPI. Ambos precisam estar corretos, bem descritos e confiáveis, caso contrário, o agente fará chamadas ruins.

Algumas tarefas práticas:

Este é um trabalho de API comum, feito antes e ao redor do agente, não em vez dele. Se você quiser um guia mais aprofundado, testar as chamadas de ferramenta de um agente com o Apidog detalha o "harness".

Perguntas frequentes

O Semantic Kernel é gratuito e de código aberto?

Sim. O Semantic Kernel é de código aberto e publicado pela Microsoft no GitHub sob uma licença permissiva, com SDKs para C#/.NET, Python e Java. Você paga pelo uso do modelo (OpenAI, Azure OpenAI e assim por diante), não pelo SK em si.

Quais linguagens o Semantic Kernel suporta?

C#/.NET, Python e Java, todos com compromissos de estabilidade de versão 1.0+. O SDK C# é o mais maduro, mas os SDKs Python e Java cobrem os recursos essenciais de kernel, plugins e importação OpenAPI.

Como o Semantic Kernel usa as especificações OpenAPI?

Você importa uma especificação com ImportPluginFromOpenApiAsync (C#) ou add_plugin_from_openapi (Python). O SK analisa a especificação, transforma cada operação em uma função invocável com seus metadados de parâmetro e permite que o modelo invoque essas operações. Como o modelo depende de suas descrições, vale a pena validar a especificação primeiro. Você pode fazer isso, e testar os endpoints ao vivo, com o Apidog.

Devo usar o Semantic Kernel ou o Microsoft Agent Framework?

Se você já tem uma aplicação SK, continue usando-a; ela é suportada e estável. Para novos projetos, a Microsoft posiciona o Agent Framework como o sucessor e fornece um guia de migração. Verifique a documentação atual do MAF antes de começar do zero, já que esta área está mudando rapidamente. Para testar as APIs que qualquer um deles chama, veja como testar a API do ChatGPT com Apidog.

Conclusão

O Semantic Kernel oferece às equipes da pilha Microsoft uma maneira clara de orquestrar a IA: um kernel que conecta modelos ao seu código, plugins e funções que o modelo pode chamar, e um caminho de importação OpenAPI que expõe suas APIs REST existentes como ferramentas de agente. Ele é estável e comprovado em produção, com o Agent Framework agora levando a direção mais recente adiante. Seja qual for a sua escolha, as APIs subjacentes ainda precisam ser sólidas. Para projetar, simular e testar as especificações e endpoints dos quais seu agente depende, baixe o Apidog e construa o contrato antes que o agente o chame.

Pratique o design de API no Apidog

Descubra uma forma mais fácil de construir e usar APIs