{"id":28259567,"url":"https://github.com/rahulsamant37/trip_planner-using_crewai","last_synced_at":"2026-04-29T16:10:00.041Z","repository":{"id":294076190,"uuid":"985914728","full_name":"rahulsamant37/Trip_Planner-using_CrewAI","owner":"rahulsamant37","description":"Trip Planner leverages the CrewAI framework to automate and enhance the trip planning experience, integrating a CLI, FASTAPI, and a user-friendly Streamlit interface.","archived":false,"fork":false,"pushed_at":"2025-05-18T19:50:29.000Z","size":66,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-10T12:34:36.998Z","etag":null,"topics":["automation","browserless","crewai","fastapi","google-api","python","serperapi","streamlit"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rahulsamant37.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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-05-18T19:28:39.000Z","updated_at":"2025-06-05T07:31:18.000Z","dependencies_parsed_at":"2025-05-18T20:41:34.194Z","dependency_job_id":null,"html_url":"https://github.com/rahulsamant37/Trip_Planner-using_CrewAI","commit_stats":null,"previous_names":["rahulsamant37/trip_planner-using_crewai"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rahulsamant37/Trip_Planner-using_CrewAI","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulsamant37%2FTrip_Planner-using_CrewAI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulsamant37%2FTrip_Planner-using_CrewAI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulsamant37%2FTrip_Planner-using_CrewAI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulsamant37%2FTrip_Planner-using_CrewAI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rahulsamant37","download_url":"https://codeload.github.com/rahulsamant37/Trip_Planner-using_CrewAI/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulsamant37%2FTrip_Planner-using_CrewAI/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32433090,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T13:34:34.882Z","status":"ssl_error","status_checked_at":"2026-04-29T13:34:29.830Z","response_time":110,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["automation","browserless","crewai","fastapi","google-api","python","serperapi","streamlit"],"created_at":"2025-05-20T03:12:21.861Z","updated_at":"2026-04-29T16:09:59.988Z","avatar_url":"https://github.com/rahulsamant37.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![CrewAI](https://miro.medium.com/v2/resize:fit:1400/0*-7HC-GJCxjn-Dm7i.png)\n\n# 🏖️ Trip Planner: Streamlit with CrewAI\n\n![Streamlit App](images/trip_planner.jpg)\n\n## Introduction\n\nTrip Planner leverages the CrewAI framework to automate and enhance the trip planning experience, integrating a CLI, FASTAPI, and a user-friendly Streamlit interface.\n\n\n## CrewAI Framework\n\nCrewAI simplifies the orchestration of role-playing AI agents. In VacAIgent, these agents collaboratively decide on cities and craft a complete itinerary for your trip based on specified preferences, all accessible via a streamlined Streamlit user interface.\n\n### Flow Diagram\n\n![Flow Diagram](flow_diagram.svg)\n\n## Running the Application\n\nTo experience the VacAIgent app:\n\n- **Configure Environment**: Set up the environment variables for [Browseless](https://www.browserless.io/), [Serper](https://serper.dev/), and [OpenAI](https://openai.com/). Use the `secrets.example` as a guide to add your keys then move that file (`secrets.toml`) to `.streamlit/secrets.toml`.\n\n- **Install Dependencies**: Execute `pip install -r requirements.txt` in your terminal.\n- **Launch the CLI Mode**: Run `python cli_app.py -o \"Bangalore, India\" -d \"Krabi, Thailand\" -s 2024-05-01 -e 2024-05-10 -i \"2 adults who love swimming, dancing, hiking, shopping, food, water sports adventures, rock climbing\"` to start the CLI Mode.\n- **Launch the FASTAPI**: Run `uvicorn api_app:app --reload` to start the FASTAPI server.\n- **Launch the Streamlit App**: Run `streamlit run streamlit_app.py` to start the Streamlit interface.\n\n★ **Disclaimer**: The application uses GEMINI by default. Ensure you have access to GEMINI's API and be aware of the associated costs.\n\n## Details \u0026 Explanation\n\n- **Streamlit UI**: The Streamlit interface is implemented in `streamlit_app.py`, where users can input their trip details.\n- **Components**:\n  - `./trip_tasks.py`: Contains task prompts for the agents.\n  - `./trip_agents.py`: Manages the creation of agents.\n  - `./tools directory`: Houses tool classes used by agents.\n  - `./streamlit_app.py`: The heart of the Streamlit app.\n\n## Using LLM Models\n\nTo switch LLMs from differnet Providers\n\n```python\nclass TripAgents():\n    def __init__(self, llm: BaseChatModel = None):\n        if llm is None:\n            #self.llm = LLM(model=\"groq/deepseek-r1-distill-llama-70b\")\n            self.llm = LLM(model=\"gemini/gemini-2.0-flash\")\n        else:\n            self.llm = llm\n\n```\n[Connect to LLMs](https://docs.crewai.com/how-to/llm-connections#connect-crewai-to-llms)\n\n\n\n### Integrating Ollama with CrewAI\n\nPass the Ollama model to agents in the CrewAI framework:\n\n```python\n    agent = Agent(\n        role='Local AI Expert',\n        goal='Process information using a local model',\n        backstory=\"An AI assistant running on local hardware.\",\n        llm=LLM(model=\"ollama/llama3.2\", base_url=\"http://localhost:11434\")\n    )\n```\n\n\n## License\n\nTrip Planner is open-sourced under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frahulsamant37%2Ftrip_planner-using_crewai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frahulsamant37%2Ftrip_planner-using_crewai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frahulsamant37%2Ftrip_planner-using_crewai/lists"}