top | item 37822642

(no title)

pleonasticity | 2 years ago

SK is basically langchain in C# or .NET.

discuss

order

brakmic|2 years ago

Hi, article author here,

Semantic Kernel and LangChain are both geared towards NLP but they have different takes on it. While LangChain revolves around creating sequences of calls known as "Chains", SK employs a "Kernel" to manage these sequences and has a "Planner" to auto-create chains for new user needs.

SK steps up the game with plugins supporting both semantic and native functions, which isn't a feature in LangChain. Also, SK has a memory feature to store context and embeddings, broadening its use case.

Moreover, SK is more welcoming to C# integration alongside Python, and has a knack for blending AI services like OpenAI with conventional coding, which LangChain doesn't offer.

So, in a nutshell, while there are similarities, SK packs more features and a bit of a different approach compared to LangChain.

Hope this clears things up!

screye|2 years ago

Not sure if I agree here. Langchain's LLMChains while initially popular, is not what people have been using. With function calling and agent+tools, both langchain and chatgpt do quite a lot of the same things that semantic kernel does.

You've mentioned a few things that langchain doesn't offer and I'm not sure how true that is. Langchain has a typescript offering which is easier to interweave with traditional coding, and if you're even the tiniest bit serious about your ML system then you'll likely use python anyway.

Langchain is a bunch of thin abstractions that can quickly scale up with the pace of growth in the LLM world. All the features you mention are now mature features within langchain too.

I'm genuinely interested in semantic kernel, and langchain has obvious pitfalls. But I am yet to find another solution that moves as quickly, integrates broadly, has a large community and still ends up being an acceptable product from a quality standpoint.