{"data":{"slug":"langroid-langroid","name":"langroid","tagline":"Harness LLMs with Multi-Agent Programming","github_url":"https://github.com/langroid/langroid","owner":"langroid","repo":"langroid","owner_avatar_url":"https://avatars.githubusercontent.com/u/130325191?v=4","primary_language":"Python","stars":4102,"forks":399,"topics":["agents","ai","chatgpt","function-calling","gpt","gpt-4","gpt4","information-retrieval","language-model","llama","llm","llm-agent","llm-framework","local-llm","multi-agent-systems","openai-api","rag","retrieval-augmented-generation"],"archived":false,"github_pushed_at":"2026-09-05T12:01:02+00:00","maintenance_label":"Very active","stars_delta_30d":12,"url":"https://www.graphcanon.com/tools/langroid-langroid","markdown_url":"https://www.graphcanon.com/tools/langroid-langroid.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/langroid-langroid","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=langroid-langroid","description":"Harness LLMs with Multi-Agent Programming","homepage_url":"https://langroid.github.io/langroid/","license":"MIT","open_issues":53,"watchers":29,"ai_summary":"Langroid is a Python-based framework designed for multi-agent programming and leveraging large language models (LLMs) such as OpenAI's models. It supports various functionalities including function-calling, information retrieval, and chat functionality with databases.","readme_excerpt":"### Install `langroid`\nLangroid requires Python 3.11+. We recommend using a virtual environment.\nUse `pip` to install a bare-bones slim version of `langroid` (from PyPi) to your virtual \nenvironment:\n```bash\npip install langroid\n```\nThe core Langroid package lets you use OpenAI Embeddings models via their API. \nIf you instead want to use the `sentence-transformers` embedding models from HuggingFace, \ninstall Langroid like this: \n```bash\npip install \"langroid[hf-embeddings]\"\n```\nFor many practical scenarios, you may need additional optional dependencies:\n- To use various document-parsers, install langroid with the `doc-chat` extra:\n    ```bash\n    pip install \"langroid[doc-chat]\"\n    ```\n- For \"chat with databases\", use the `db` extra:\n    ```bash\n    pip install \"langroid[db]\"\n    ```\n- You can specify multiple extras by separating them with commas, e.g.:\n    ```bash\n    pip install \"langroid[doc-chat,db]\"\n    ```\n- To simply install _all_ optional dependencies, use the `all` extra (but note that this will result in longer load/startup times and a larger install size):\n    ```bash\n    pip install \"langroid[all]\"\n    ```\n<details>\n<summary><b>Optional Installs for using SQL Chat with a PostgreSQL DB </b></summary>\n\nIf you are using `SQLChatAgent` \n(e.g. the script [`examples/data-qa/sql-chat/sql_chat.py`](https://github.com/langroid/langroid/blob/main/examples/data-qa/sql-chat/sql_chat.py)),\nwith a postgres db, you will need to:\n\n- Install PostgreSQL dev libraries for your platform, e.g.\n  - `sudo apt-get install libpq-dev` on Ubuntu,\n  - `brew install postgresql` on Mac, etc.\n- Install langroid with the postgres extra, e.g. `pip install langroid[postgres]`\n  or `poetry add \"langroid[postgres]\"` or `poetry install -E postgres`,\n  (or the corresponding `uv` versions, e.g. `uv add \"langroid[postgres]\"`\n  or `uv pip install langroid[postgres]`).\n  If this gives you an error, try `pip install psycopg2-binary` in your virtualenv.\n</details>\n\n📝 If you get strange errors involving `mysqlclient`, try doing `pip uninstall mysqlclient` followed by `pip install mysqlclient`.\n\n---\n\n# 🐳 Docker Instructions\n\nWe provide a containerized version of the [`langroid-examples`](https://github.com/langroid/langroid-examples) \nrepository via this [Docker Image](https://hub.docker.com/r/langroid/langroid).\nAll you need to do is set up environment variables in the `.env` file.\nPlease follow these steps to setup the container:\n\n```bash","github_created_at":"2023-04-16T20:47:28+00:00","created_at":"2026-07-11T10:39:14.344516+00:00","updated_at":"2026-09-20T04:23:37.961185+00:00","categories":[{"slug":"ai-agents","name":"AI Agents","url":"https://www.graphcanon.com/categories/ai-agents","markdown_url":"https://www.graphcanon.com/categories/ai-agents.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/ai-agents"},{"slug":"data-retrieval","name":"Data & Retrieval","url":"https://www.graphcanon.com/categories/data-retrieval","markdown_url":"https://www.graphcanon.com/categories/data-retrieval.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/data-retrieval"},{"slug":"inference-serving","name":"Inference & Serving","url":"https://www.graphcanon.com/categories/inference-serving","markdown_url":"https://www.graphcanon.com/categories/inference-serving.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/inference-serving"},{"slug":"model-training","name":"Model Training","url":"https://www.graphcanon.com/categories/model-training","markdown_url":"https://www.graphcanon.com/categories/model-training.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/model-training"}],"tags":[{"slug":"agents","name":"agents"},{"slug":"ai","name":"ai"},{"slug":"chatgpt","name":"chatgpt"},{"slug":"function-calling","name":"function-calling"},{"slug":"gpt","name":"gpt"},{"slug":"information-retrieval","name":"information retrieval"},{"slug":"language-model","name":"language-model"},{"slug":"llm-agent","name":"llm-agent"}],"trust":{"provenance":{"is_fork":false,"github_id":628729877,"owner_type":"Organization","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-09-07T06:01:19.222Z","maintenance":{"label":"Very active","score":96,"methodology":"github_public_v1","releases_90d":25,"days_since_push":1,"last_release_at":"2026-09-02T22:30:51Z","stars_delta_30d":12,"open_issues_delta_30d":-22},"security_summary":{"status":"findings","scanner":"mcp_manifest@v1","low_count":2,"high_count":0,"last_scan_at":"2026-07-11T10:39:15.831Z","medium_count":0,"scan_profile":"mcp_manifest","critical_count":0}},"capability_facts":{"scan":{"source":"repo_scan","observed_at":"2026-09-07T06:01:19.687Z"},"deploy":{"source":"dockerfile:Dockerfile","self_host":true,"observed_at":"2026-09-07T06:01:19.687Z","managed_saas":false},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-09-07T06:01:19.687Z"},"has_docker":{"value":true,"source":"dockerfile:Dockerfile","observed_at":"2026-09-07T06:01:19.687Z"},"license_spdx":{"value":"MIT","source":"github.license","observed_at":"2026-09-07T06:01:19.687Z"}},"decision_facts":{"hosting":null,"pricing":null,"requirements":null,"constraints":null,"when_to_use":["You need to integrate multiple agents working with large language models.","Your project involves complex information retrieval tasks augmented by AI."],"when_not_to_use":["You require support for a broad range of programming languages beyond Python.","The project scope does not include multi-agent interactions or function-calling capabilities."],"source":"enrich:decision_facts","observed_at":"2026-07-12T14:46:07.425Z"},"constraint_facets":null,"decision_summary":[{"label":"Adopt for","value":"Langroid specializes in multi-agent systems with large language models, providing a Python framework for function-calling and chat integrations."}]}}