LLM
FreeA CLI utility and Python library for interacting with Large Language Models, remote and local. [#opensource](https://github.com/simonw/llm)
About LLM
LLM is an open-source CLI tool and Python library for interacting with dozens of large language models (LLMs) from OpenAI, Anthropic, Google, Meta, and more. It supports both remote APIs and locally running models (via plugins like Ollama). Users can run prompts from the command line, store conversation logs and responses in SQLite, generate and query embeddings, extract structured data from text and images, and grant models the ability to execute tools. Additional features include interactive chat mode, system prompts, template fragments, model aliases, and a plugin system for adding new models or embedding functions. LLM is designed for developers, data scientists, and anyone who wants to interact with LLMs efficiently from the terminal or within Python scripts.
Key Features
Pros & Cons
- Open source and completely free to use
- Supports a wide range of models (OpenAI, Anthropic, Google, Meta, local via Ollama)
- Can run both remote APIs and local models, giving flexibility
- Stores all interactions in SQLite for easy querying and reproducibility
- Extensible via plugins for custom models and embedding functions
- Supports multimodal inputs (images, audio, video) for compatible models
- Enables structured data extraction directly from prompts
- Interactive chat mode with session history
- Requires API keys for remote models (OpenAI, etc.)
- Local model support depends on external tools like Ollama or llama.cpp plugins
- Primarily command-line based, no graphical user interface
- Some advanced features (plugins, schemas) have a learning curve
- Python installation and dependency management required