The best framework currently going forward: LangChain vs Microsoft (Guidance and Semantic kernel)?
Posted by Caesar_Zalad@reddit | LocalLLaMA | View on Reddit | 17 comments
Hi there!
I'm currently trying to figure out what the best way forward is between either LangChain or the more closed-source Semantic Kernel+Guidance. There seems to be limited in-depth discussion about the comparisons (except for this post: https://www.reddit.com/r/aipromptprogramming/comments/13q7q2n/my_dive_into_langchain_vs_microsoft_guidance_a/?utm_name=ioscss) and would like some advice going forward. The project would not involve agents (yet) but will have both long and short term memory and other custom components.
Currently nudging towards LangChain because of the extensive documentation and popularity of the project. Although after some testing, have found it to be slower than Guidance in certain instances and more token intensive than Semantic kernel.
Any insights are appreciated!
necati-ozmen@reddit
LangChain has great docs and a big ecosystem, which is super helpful early on. But depending on your needs, it can add some structure you might not always want, especially if you’re experimenting with memory and custom flows.
If you ever lean toward more modular, inspectable agents down the line, VoltAgent (I'm maintainer))might be worth a look. It’s TypeScript-based and lets you build agent logic with clearer control.
https://github.com/VoltAgent/voltagent
Curious where you land with this:/
fieryscorpion@reddit
Semantic Kernel all the way. It's just so well designed.
VanCliefMedia@reddit
Semantic Kernal if you know C# and want to work with enterprise companies and have full implementation control. Langchan if you want to launch fast.
fieryscorpion@reddit
Semantic Kernel is amazing and you can use any language from C#, Java or Python.
NoHuckleberry5221@reddit
Could you elaborate further on why you would prefer Semantic Kernel for enterprise companies ?
VanCliefMedia@reddit
Well you're able to implement it entirely into c-sharp frameworks and have control over a lot more of the implementation. And back end of front-end process, which generally speaking Enterprise companies desire more because you can make more bespoke Solutions that specifically fit their efficiency workloads
kryptkpr@reddit
LangChain has excellent documentation with many examples and lots of projects that use it.
Guidance hurt my brain. I don't understand their abstractions, I don't understand how to use any of it, I stared at their demo apps for 2 hours like an idiot and couldn't get a single useful modification to work.
Summary is I am too stupid for Guidance, so I use LangChain.
nbuster@reddit
You're not wrong! I thought it was me, but hey, your post gave me hope.
kryptkpr@reddit
I understand how guidance works in theory: it's doing max_tokens=1 and playing with logit propabilities so the output can always be constrained. This is a great idea! But they've created a highly opinionated implementation based on a custom markup language that they "execute" in entirely unclear ways.
If guidance code could be written via plain python APIs it could be 10x more useful imo
Ok-Improvement-3108@reddit
as a .net/C#/VB.Net/F# guy - I don't want anything python like. Period.
jkail1011@reddit
Its been a year, how did things end up? :)
VanCliefMedia@reddit
We have been experimenting and implementing with Semantic Kernal for over a year now. Two days ago they just dropped the Process framework, I can officially say nothing can compete with Semantic kernel now for what we are doing.
It will be the Layer 1 for all major enterprise Agentic systems.
jkail1011@reddit
Interesting!
Semantic Kernal is neat, what do your agentic workloads look like?
So much has changed in a year :)
VanCliefMedia@reddit
Honestly, ours are absolutely insane at the moment.
We're experimenting with a couple directions right now, but one of them is using the semantic kernel to create functions that pull from a many-to-many group chat of both agents and people to use their comments or statements as input to call functions or start a giantic workflows edit or create something (Like a document) Which is entirely separate from the chat and agent's context window
jkail1011@reddit
Awesome I’ll check it out!
Caesar_Zalad@reddit (OP)
Went ahead with Langchain and it did what was needed at the time! Though if starting the project now again, would go ahead with something a bit less verbose :)
Creepy-Two496@reddit
like guy!!!!
langchain happens to be too slow for my application and i need a better solution