// the find
kennethreitz/simplemind
Python API client for AI providers that intends to replace LangChain and LangGraph for most common use cases.
Simplemind is a thin Python wrapper that gives you a consistent API across OpenAI, Anthropic, Gemini, Ollama, and a few others. The pitch is that you write one call and swap providers by changing a string. It's aimed at developers who want quick LLM access without reading eight different SDK docs.
The provider-agnostic interface is genuinely useful for prototyping — switching from OpenAI to Anthropic really is one parameter change. The Pydantic structured output via Instructor is well-integrated and saves real boilerplate. The plugin system with pre/post hooks is a clean design: you get memory and context injection without framework magic. The examples directory is thorough and executable, which matters more than most README demos.
The last commit is February 2025 and the default Anthropic model is still claude-3-5-sonnet-20241022 — that alone tells you maintenance is slow. With 541 stars and 28 forks, this hasn't caught on, and for good reason: if you're already committing to one provider in production, the abstraction layer costs more than it saves. No async support mentioned anywhere in the README, which rules it out for any real server-side workload. The 'replace LangChain' claim is marketing — it has no retrieval, no agent loop, no memory persistence beyond a plugin you write yourself.