{"id":29022450,"url":"https://github.com/yossifibrahem/fix-llm","last_synced_at":"2025-09-01T12:13:55.659Z","repository":{"id":272105586,"uuid":"915544689","full_name":"yossifibrahem/FIX-LLM","owner":"yossifibrahem","description":"A Flask-based application with chat interface with LLM to interact with multiple tools via function calling.","archived":false,"fork":false,"pushed_at":"2025-06-24T11:06:14.000Z","size":726,"stargazers_count":28,"open_issues_count":0,"forks_count":10,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-24T12:29:41.859Z","etag":null,"topics":["function-calling","image-search","run-python","tool-calling","web-search","web-ui","website-summarize","webui","wikipidia-search","youtube-search","youtube-summarization"],"latest_commit_sha":null,"homepage":"","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/yossifibrahem.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"zenodo":null}},"created_at":"2025-01-12T06:03:41.000Z","updated_at":"2025-06-24T11:06:17.000Z","dependencies_parsed_at":"2025-01-12T07:18:04.779Z","dependency_job_id":"bda916f9-fe9a-4421-ada5-362105591d06","html_url":"https://github.com/yossifibrahem/FIX-LLM","commit_stats":null,"previous_names":["yossifibrahem/tools_gui","yossifibrahem/llm-tool-calling-web-application","yossifibrahem/llm-with-tool-calling-web-application","yossifibrahem/fix-llm"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/yossifibrahem/FIX-LLM","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yossifibrahem%2FFIX-LLM","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yossifibrahem%2FFIX-LLM/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yossifibrahem%2FFIX-LLM/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yossifibrahem%2FFIX-LLM/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yossifibrahem","download_url":"https://codeload.github.com/yossifibrahem/FIX-LLM/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yossifibrahem%2FFIX-LLM/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261990270,"owners_count":23241185,"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":["function-calling","image-search","run-python","tool-calling","web-search","web-ui","website-summarize","webui","wikipidia-search","youtube-search","youtube-summarization"],"created_at":"2025-06-26T03:01:24.549Z","updated_at":"2025-09-01T12:13:55.647Z","avatar_url":"https://github.com/yossifibrahem.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LLM Tool Calling Web Application 🤖💬\n\n## Overview\nThis is a web application that enables a Large Language Model (LLM) to interact with multiple tools and perform tasks using function calling. Built with Flask and with LM Studio server, this application provides an interactive chat experience with multi-tool support.\n\n## 🌟 Key Features\n\n### Multi-Tool Integration\n- 🐍 **Python Code Execution**: Run and analyze Python code directly in the chat\n- 🌐 **Web Search**: Perform real-time web searches and extract citations\n- 📚 **Wikipedia Lookup**: Instantly retrieve Wikipedia article introductions\n- 🖼️ **Image Search**: Find and display images related to your queries\n- 🎥 **YouTube Search**: Search and retrieve YouTube video information\n- 🔗 **Web Scraping**: Extract content from specific websites\n- 🔍 **Deep Search**: Perform a smart deep web search to extract most Information\n\n### Advanced Conversation Management\n- 💬 **Persistent Conversations**: Save and load chat histories\n- ♻️ **Conversation Regeneration**: Easily regenerate or delete last messages\n- 🏷️ **Automatic Conversation Naming**: Smart, context-aware conversation titles\n- 📜 **Conversation Listing**: Browse and manage your chat history\n\n### User Experience\n- 🎨 **Responsive Design**: Clean, modern UI with Tailwind CSS\n- \u003c/\u003e **Code Highlighting**: Syntax highlighting with Prism.js\n- 📊 **Markdown \u0026 Math Support**: Render markdown and mathematical equations\n- 🌈 **Tool Results Visualization**: Interactive, collapsible tool result sections\n\n## 🖥️ Screenshots\n\n\u003cimg width=\"400\" alt=\"python\" src=\"https://github.com/user-attachments/assets/01762e23-575d-454c-8533-a1d10dc4c0cb\" /\u003e\n\u003cimg width=\"400\" alt=\"web and image\" src=\"https://github.com/user-attachments/assets/e1772634-064e-4592-9ae6-757281b45cd4\" /\u003e\n\u003cimg width=\"400\" alt=\"YT\" src=\"https://github.com/user-attachments/assets/cfa6d63e-fea8-4c2e-b5de-e16abfdbda24\" /\u003e\n\u003cimg width=\"400\" alt=\"urls\" src=\"https://github.com/user-attachments/assets/322db552-7f1a-4678-9039-46420f8e87ab\" /\u003e\n\u003cimg width=\"400\" alt=\"wikipidia\" src=\"https://github.com/user-attachments/assets/be587034-a76e-4785-bcb8-ab9573b5aa35\" /\u003e\n\u003cimg width=\"400\" alt=\"history\" src=\"https://github.com/user-attachments/assets/8cd972d2-b816-4588-8826-dcb82f1aa8ba\" /\u003e\n\n## 🔧 Prerequisites\n- Python 3.8+\n- [LM Studio](https://lmstudio.ai/)\n- Recommended Model: [Qwen2.5 7B Instruct](https://huggingface.co/lmstudio-community/Qwen2.5-7B-Instruct-GGUF)\n\n## 📦 Installation\nEnsure LM Studio is running on your machine with the server running.\n### Clone the Repository\n\n- Download the zip file for the repo by clicking [here](https://github.com/yossifibrahem/FIX-LLM/archive/refs/tags/v0.1.1.zip)\n- unzip the file\n- move to the project directory\n```bash\ncd LLM-Tool-Calling-Web-Application\n```\n\n## 🚀 Running the Application\n\n### 🐳 Option 1: Using Docker\n\u003cdetails\u003e\n\u003csummary\u003eClick here\u003c/summary\u003e\n  \n1. Install [Docker](https://www.docker.com/) on your machine (if you haven't already)\n\n2. Build the docker container with \n```bash\ndocker build -t llm_tool_app .\n```\n\n3. If on **Windows/MacOS** run\n\n```bash\ndocker run --name Tools-UI -p 8080:8080 --add-host=host.docker.internal:host-gateway -e LMSTUDIO_BASE_URL=\"http://host.docker.internal:1234/v1\" -e LMSTUDIO_API_KEY=\"lm-studio\" -e LMSTUDIO_MODEL=\"lmstudio-community/qwen2.5-7b-instruct\" llm_tool_app\n```\n\nOtherwise if you are on **Linux** run:\n\n```bash\ndocker run --name Tools-UI -p 8080:8080 -e LMSTUDIO_BASE_URL=\"http://host.docker.internal:1234/v1\" -e LMSTUDIO_API_KEY=\"lm-studio\" -e LMSTUDIO_MODEL=\"lmstudio-community/qwen2.5-7b-instruct\" llm_tool_app\n```\nIf your LMSTUDIO_BASE_URL, LMSTUDIO_API_KEY and/or LMSTUDIO_MODEL values are different on your setup, change that in the docker run command.\n\u003c/details\u003e\n\n### 🐍 Option 2: Using Python\n\u003cdetails\u003e\n\u003csummary\u003eClick here\u003c/summary\u003e\n  \n1. Install Dependencies\n\n```bash\npip install -r requirements.txt\n```\n\n2. post-installation setup\n\n**Setup crawl4ai**\n```bash\n# Run post-installation setup\ncrawl4ai-setup\n\n# Verify your installation\ncrawl4ai-doctor\n```\n\n**Set Environment Variables**\n```bash\n# For Windows\nset FLASK_ENV=production\nset FLASK_DEBUG=0\n\n# For Unix/MacOS\nexport FLASK_ENV=production\nexport FLASK_DEBUG=0\n```\n\n**(optional)** If you need to change the server host, port, LM Studio URL, API key, or model, set the following environment variables to the desired values like so:\n\n```bash\n# For Windows\nset LMSTUDIO_BASE_URL=YOUR_VALUE_HERE\nset LMSTUDIO_API_KEY=YOUR_VALUE_HERE\nset LMSTUDIO_MODEL=YOUR_VALUE_HERE\n\n# For Unix/MacOS\nexport LMSTUDIO_BASE_URL=YOUR_VALUE_HERE\nexport LMSTUDIO_API_KEY=YOUR_VALUE_HERE\nexport LMSTUDIO_MODEL=YOUR_VALUE_HERE\n```\n\nRun the server using\n```bash\npython server.py\n```\nor Double-click `serverstart.bat`\n\u003c/details\u003e\n\n## How to use the MCP servers\nAdd these MCP server config to claude desktop config file, LM Studio or any other client\n```json\n{\n    \"mcpServers\": {\n        \"Web\": {\n            \"command\": \"python\",\n            \"args\": [\n                \"path/to/FIX-LLM/mcp_web.py\"\n            ]\n        },\n        \"code-interpreter\": {\n            \"command\": \"python\",\n            \"args\": [\n                \"path/to/FIX-LLM/mcp_python.py\"\n            ]\n        }\n    }  \n}\n```\n### Access the Application\nOpen your browser and navigate to http://localhost:8080\n\n## 🤝 Contributing\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## 🙏 Acknowledgements\n- [llama.cpp](https://github.com/ggerganov/llama.cpp)\n- [LM Studio](https://lmstudio.ai/)\n- Open-source libraries and tools used in this project\n\n## 📞 Support\nFor issues or questions, please open a GitHub issue or contact the maintainer.\n\n*This README is written by Anthropic's Claude*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyossifibrahem%2Ffix-llm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyossifibrahem%2Ffix-llm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyossifibrahem%2Ffix-llm/lists"}