{"id":25543400,"url":"https://github.com/nchalimba/algo-ai","last_synced_at":"2026-02-06T02:30:22.134Z","repository":{"id":278418076,"uuid":"914426440","full_name":"nchalimba/algo-ai","owner":"nchalimba","description":"AlgoAI is a chatbot (RAG) for answering questions about Data Structures and Algorithms. Built with FastAPI, LangChain, and supports OpenAI or Cohere as LLM providers. Includes features like streaming responses, vector storage with Datastax Astra DB, and message persistence using Postgres.","archived":false,"fork":false,"pushed_at":"2025-02-19T16:40:10.000Z","size":80,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-19T17:35:01.253Z","etag":null,"topics":["ai","astradb","cohere","datastructures-algorithms","fastapi","generative-ai","langchain","langgraph","openai","python","rag"],"latest_commit_sha":null,"homepage":"https://www.algo-ai.api.abubeker.com/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nchalimba.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-09T15:18:43.000Z","updated_at":"2025-02-19T16:37:55.000Z","dependencies_parsed_at":"2025-02-19T17:46:34.246Z","dependency_job_id":null,"html_url":"https://github.com/nchalimba/algo-ai","commit_stats":null,"previous_names":["nchalimba/algo-ai"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nchalimba%2Falgo-ai","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nchalimba%2Falgo-ai/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nchalimba%2Falgo-ai/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nchalimba%2Falgo-ai/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nchalimba","download_url":"https://codeload.github.com/nchalimba/algo-ai/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239793063,"owners_count":19697893,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","astradb","cohere","datastructures-algorithms","fastapi","generative-ai","langchain","langgraph","openai","python","rag"],"created_at":"2025-02-20T07:19:12.351Z","updated_at":"2026-02-06T02:30:22.074Z","avatar_url":"https://github.com/nchalimba.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AlgoAI\n\nWelcome to **AlgoAI**! 🚀 A powerful Retrieval Augmented Generation (RAG) system designed to answer all your questions about **Data Structures** and **Algorithms**. Whether you're a student, developer, or enthusiast, this system is here to help you understand and explore DSA concepts like never before. 💡\n\nWith **LangChain** and **FastAPI** at its core, you can configure the system to use either **OpenAI** or **Cohere** as the LLM provider (though I highly recommend **Cohere** for a cost-effective option). 😎\n\n🚀 **Live Demo**: [Visit AlgoAI](https://algo-ai.api.abubeker.com/)\n\n## Technologies\n\nThis project is powered by a blend of cutting-edge technologies:\n\n- **Python**\n- **LangChain** \u0026 **LangGraph** (for seamless integration with various LLMs)\n- **Postgres** (for storing messages)\n- **Astra** (for vector storage)\n- **OpenAI** (LLM provider support)\n- **Cohere** (LLM provider support)\n- **FastAPI** (for fast API with async support)\n\n## Features\n\n- 🤖 **Multiple LLM Provider Support**: Choose between OpenAI and Cohere for your LLM needs, with **Cohere** being the recommended option for optimal performance.\n- 📚 **Diverse Source Types**: Easily add sources like Text, URLs, and PDFs to improve the system's knowledge.\n- 🔄 **Streaming Responses**: Enjoy real-time responses as you ask questions and get immediate answers!\n- 💾 **Vector Storage**: With **Astra DB**, the system efficiently stores vectors to power your queries.\n- 📦 **Persistent Messages**: Thanks to **Postgres**, all your interaction history is stored and easily accessible.\n- ⚡ **Fast and Async**: Powered by **FastAPI**, this system handles requests quickly and efficiently, even with heavy usage.\n- 🔧 **Customizable Chunking Strategies**: Configure how the system breaks down and processes data for optimal results.\n\n## Running locally\n\n1. **Clone the repository**:\n\n```bash\ngit clone https://github.com/nchalimba/algo-ai.git\ncd algo-ai\n```\n\n2. **Create and activate a virtual environment:**\n\n# Create environment\n\n```bash\n# Create environment\npython3 -m venv algo_ai_env\n\n# Activate on Windows:\nalgo_ai_env\\Scripts\\activate\n# Activate on macOS/Linux:\nsource algo_ai_env/bin/activate\n```\n\n3. **Install dependencies:**\n\n```bash\npip install -r requirements.txt\n```\n\n4. **Create `.env` file** and add your environment variables. Refer to `.env.example` for guidance.\n\n5. **Run the app**:\n\n```bash\nuvicorn src.main:app --reload\n```\n\n6. **Enjoy the app at [http://localhost:8000](http://localhost:8000)**\n\n## Contributing\n\nI’d love your help! If you'd like to improve the visualizations or add new algorithms, feel free to fork the repo and open a pull request.\n\n---\n\n## License\n\nThis project is licensed under the [MIT License](./LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnchalimba%2Falgo-ai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnchalimba%2Falgo-ai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnchalimba%2Falgo-ai/lists"}