I feel the same! Just look at all the separate classes for different model providers for tackling minor input/output differences.
As for the alternatives, I think there are 3 things to think about:
1. LLM call itself
2. Orchestration of calls & monitoring/input/output
3. Integrations with external services
For #1, if we were to limit the discussion to model providers with REST APIs (OpenAI, Anthropic, Google, Cohere, Groq, Together, ElevenLabs all have them), I think it would be much simpler to build a simple wrapper directly on top of fetch or equivalent APIs and even skip the SDKs.
For #2, don't think LangChain is a better solution than alternatives like state charts.
#3 is where LangChain might offer some value, but it's pretty thin.
> Just look at all the separate classes for different model providers for tackling minor input/output differences.
It's bizarre: Standardize the API via individually wrapped endpoints. WTF?
Yes, after spending more time trying to decypher the LangChain docs than it would take to roll-my-own, everything I've done so far has involved rolling-my-own.
I still think I might need to work with LangChain however: I'm afraid it's going to be what employers will be looking for.
> It's bizarre: Standardize the API via individually wrapped endpoints. WTF?
Exactly!
> Yes, after spending more time trying to decypher the LangChain docs than it would take to roll-my-own, everything I've done so far has involved rolling-my-own.
Looks like quite a few are doing the same, that is, rolling their own. Wonder if there needs to be a way to do it where it's standardized but still feels like rolling your own.
> I still think I might need to work with LangChain however: I'm afraid it's going to be what employers will be looking for.
Yeah workplaces are so different than working on your own projects. Been there! Might be you can get started that way, and slowly help people "see the light"!
As for the alternatives, I think there are 3 things to think about: 1. LLM call itself 2. Orchestration of calls & monitoring/input/output 3. Integrations with external services
For #1, if we were to limit the discussion to model providers with REST APIs (OpenAI, Anthropic, Google, Cohere, Groq, Together, ElevenLabs all have them), I think it would be much simpler to build a simple wrapper directly on top of fetch or equivalent APIs and even skip the SDKs.
For #2, don't think LangChain is a better solution than alternatives like state charts.
#3 is where LangChain might offer some value, but it's pretty thin.