{"id":48828461,"url":"https://github.com/ashishpatel26/aiagentworkshop","last_synced_at":"2026-04-14T19:02:19.586Z","repository":{"id":277166353,"uuid":"931541199","full_name":"ashishpatel26/AIAgentWorkshop","owner":"ashishpatel26","description":"AI Agent Work shop include Agent from Corepython, using CrewAI and Using SmolAgent","archived":false,"fork":false,"pushed_at":"2025-03-24T06:20:10.000Z","size":58382,"stargazers_count":68,"open_issues_count":0,"forks_count":7,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-24T06:26:28.861Z","etag":null,"topics":["agent","aiagent","aiagents","crewai","generative-ai","notebook","python","rag","smolagents"],"latest_commit_sha":null,"homepage":"https://github.com/ashishpatel26/AIAgentWorkshop.git","language":"Jupyter Notebook","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/ashishpatel26.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}},"created_at":"2025-02-12T13:02:58.000Z","updated_at":"2025-03-24T06:20:14.000Z","dependencies_parsed_at":"2025-02-12T14:39:25.808Z","dependency_job_id":null,"html_url":"https://github.com/ashishpatel26/AIAgentWorkshop","commit_stats":null,"previous_names":["ashishpatel26/aiagentworkshop"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ashishpatel26/AIAgentWorkshop","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashishpatel26%2FAIAgentWorkshop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashishpatel26%2FAIAgentWorkshop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashishpatel26%2FAIAgentWorkshop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashishpatel26%2FAIAgentWorkshop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ashishpatel26","download_url":"https://codeload.github.com/ashishpatel26/AIAgentWorkshop/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashishpatel26%2FAIAgentWorkshop/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31810741,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T18:05:02.291Z","status":"ssl_error","status_checked_at":"2026-04-14T18:05:01.765Z","response_time":153,"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":["agent","aiagent","aiagents","crewai","generative-ai","notebook","python","rag","smolagents"],"created_at":"2026-04-14T19:02:08.630Z","updated_at":"2026-04-14T19:02:19.580Z","avatar_url":"https://github.com/ashishpatel26.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🧠 AI Agent Workshops\n\n***13 Feb 2025, University of Wollongong, GiftCity, Gandhinagar***\n\n---\n\n## 📌 Table of Contents\n\n#### **🔹Part 1: Building Blocks – The Augmented LLM**\n\n- **Basic LLM Calls** – Sending requests and processing responses\n- **Structured Output** – Formatting responses in structured formats\n- **Tool Use** – Integrating external tools with the LLM\n- **Retrieval** – Using memory and external sources for better responses\n\n#### 🔹**Part 2: Workflow Patterns for AI Systems**\n\n- **Prompt Chaining** – Structuring multi-step AI tasks\n- **Routing** – Directing requests to specialized handlers\n- **Parallelization** – Running multiple AI processes simultaneously\n\n#### 🔹Part 3: Introduction to Agentic Framework (CrewAI)\n\n- **CrewAI Framework Step by Step**\n- **Agent  :** Finance Agent App\n\n#### 🔹Part 4: Introduction to Agentic Framework(SmolAgent)\n\n- **SmolAgent Framework Step by Step**\n- **Agent** : AI News Agent App\n\n#### 🔹Part 5: Agentic AI in SQL(SmolAgent)\n\n- **SmolAgent Framework Step by Step for SQL**\n- **Agent** : SQL AI Agent Dashboard\n\n| Sr No | Topic                                                      | Colab Link                                                                                                                                                                                      |\n| ----- | ---------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| 1.    | CrewAI Notebook to Make A Finance Agent                    | [![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/ashishpatel26/AIAgentWorkshop/blob/main/1-CrewAI_Notebook.ipynb)               |\n| 2.    | SmolAgent Streamlit App Run in Notebook(AI news Agent)     | [![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/ashishpatel26/AIAgentWorkshop/blob/main/2-SmoleAgent_Streamlit_Notebook.ipynb) |\n| 3.    | CrewAI Gemini Streamlit App Run in Notebook(AI News Agent) | [![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/ashishpatel26/AIAgentWorkshop/blob/main/3_Gemini_crewAI_Agents.ipynb)          |\n| 4.    | Gemini Vision Pro Code Agent(Code Agent)                   | [![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/ashishpatel26/AIAgentWorkshop/blob/main/4_GeminiVisionPro_Agent.ipynb)         |\n| 5.    | Sql Agent to Communicate with Database(Sql Agent)          | [![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/ashishpatel26/AIAgentWorkshop/blob/main/5_SmolAgent_sqlAgent.ipynb)            |\n\n---\n\n## 🔄Part 2: Workflow Patterns for AI Systems\n\n### 🏗️ Prompt Chaining\n\nPrompt chaining **breaks down complex AI tasks** into smaller, more manageable steps. Each step **processes** and **validates** the output from the previous step, improving **control and reliability**.\n\n#### 📅 Calendar Assistant Example\n\n```mermaid\ngraph LR\n    A[User Input] --\u003e B[LLM 1: Extract]\n    B --\u003e C{Gate Check}\n    C --\u003e|Pass| D[LLM 2: Parse Details]\n    C --\u003e|Fail| E[Exit]\n    D --\u003e F[LLM 3: Generate Confirmation]\n    F --\u003e G[Final Output]\n```\n\n**📝 Step Breakdown:**\n\n| **Step**                             | **Description**                                                                                                                                   |\n| ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| **✅ Step 1: Extract \u0026 Validate**    | - Detects if input is a valid**calendar request**  \u003cbr /\u003e- Assigns a **confidence score** \u003cbr /\u003e- Filters out **irrelevant requests** |\n| **✅ Step 2: Parse Details**         | - Extracts structured information (**date, time, participants**) \u003cbr /\u003e- Converts **natural language** into a structured format             |\n| **✅ Step 3: Generate Confirmation** | - Creates a**user-friendly response** \u003cbr /\u003e- Generates calendar links if necessary                                                               |\n\n---\n\n### 🔀 Routing\n\nRouting is a pattern that directs different types of requests to specialized **handlers**, allowing for **clean separation of concerns** and **optimized processing**.\n\n#### 📅 Calendar Assistant Example\n\n```mermaid\ngraph LR\n    A[User Input] --\u003e B[LLM Router]\n    B --\u003e C{Route}\n    C --\u003e|New Event| D[New Event Handler]\n    C --\u003e|Modify Event| E[Modify Event Handler]\n    C --\u003e|Other| F[Exit]\n    D --\u003e G[Response]\n    E --\u003e G\n```\n\n**📝 Step Breakdown:**\n\n| **Component**               | **Description**                                                                                                 |\n| --------------------------------- | --------------------------------------------------------------------------------------------------------------------- |\n| **✅ Router**               | - Classifies requests into**new event** or **modification** \u003cbr /\u003e- Provides **confidence scoring** |\n| **✅ Specialized Handlers** | -**New Event Handler:** Creates calendar events\u003cbr /\u003e- **Modify Event Handler:** Updates existing events  |\n\n---\n\n### ⚡ Parallelization\n\nParallelization improves **efficiency** by running multiple LLM calls **simultaneously** to analyze different aspects of a request in parallel.\n\n#### 📅 Calendar Assistant Example\n\n```mermaid\ngraph LR\n    A[User Input] --\u003e B[Calendar Check]\n    A --\u003e C[Security Check]\n    B --\u003e D{Aggregate}\n    C --\u003e D\n    D --\u003e|Valid| E[Continue]\n    D --\u003e|Invalid| F[Exit]\n```\n\n**📝 Step Breakdown:**\n\n| **Component**            | **Description**                                                                                                      |\n| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------- |\n| **✅ Parallel Checks**   | **- Calendar Validation:** Ensures a valid request \u003cbr /\u003e**- Security Check** : Screens for prompt injection |\n| **✅ Aggregation Layer** | - Merges results from parallel checks\u003cbr /\u003e- Makes the**final validation decision**                                  |\n\n---\n\n### 🎭 Orchestrator-Workers\n\nThe **orchestrator-workers** pattern uses a **central LLM** to dynamically **analyze, coordinate, and synthesize** responses from specialized workers. This is useful for tasks requiring structured content generation.\n\n#### 📝 Blog Writing Example\n\n```mermaid\ngraph LR\n    A[Topic Input] --\u003e B[Orchestrator]\n    B --\u003e C[Planning Phase]\n    C --\u003e D[Writing Phase]\n    D --\u003e E[Review Phase]\n    style D fill:#f9f,stroke:#333,stroke-width:2px\n```\n\n**📝 Step Breakdown:**\n\n| 🛠️**Orchestrator**                                     | 📝**Planning Phase**                                 | ✍️**Writing Phase**                           | 🔍**Review Phase**                        |\n| -------------------------------------------------------------- | ---------------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------- |\n| 🔎 Analyzes the**blog topic** and **requirements** | 📌 Breaks content into**sections**                   | 🏗️ Assigns sections to**specialized writers** | ✅ Evaluates**content flow and cohesion** |\n| 🏗️ Generates a**structured content plan**              | 📏 Defines**word count** and **writing style** | 🔗 Maintains**context and consistency**         | ✨ Suggests**improvements**               |\n| 🔄 Oversees**content cohesion**                          | -                                                          | -                                                     | 🏆 Produces a**polished final version**   |\n\n---\n\n## 🔄Part 3: Introduction to Agentic Framework 🤖\n\nThis section introduces additional architectures for building AI agents, providing a structured overview of their workflows and modular designs.\n\n##### CrewAIAgent\n\n**CrewAI** follows a modular, step-by-step approach that includes:\n\n![](images/CrewAI.png)\n\n**Example:** **Finance Agent App**\n\n![](images/aiagentfinanceanalysis.gif)\n\n\u003e **Workflow**\n\n```mermaid\ngraph TD\n    A[Start] --\u003e B[Initialize Streamlit App]\n    B --\u003e C[Set Up API Keys \u0026 Load Environment Variables]\n    C --\u003e D[User Inputs Company Name]\n    D --\u003e E{Start Analysis Button Clicked?}\n  \n    E -- Yes --\u003e F[Display Progress \u0026 Setup Agents]\n    F --\u003e G[Create Financial Analyst Agent]\n    G --\u003e H[Create Investment Strategy Reviewer Agent]\n    H --\u003e I[Initialize Stock Market Scraper Tool]\n    I --\u003e J[Define Stock Market Analysis Task]\n    J --\u003e K[Define Investment Review Task]\n    K --\u003e L[Create Financial Analysis Crew]\n  \n    L --\u003e M[Run AI Analysis Crew Process]\n    M --\u003e N[Generate Financial Report]\n    N --\u003e O[Display Final Financial Analysis Report]\n  \n    E -- No --\u003e P[Wait for User Action]\n\n    style A fill:#ffcc00,stroke:#333,stroke-width:2px\n    style O fill:#ffcc00,stroke:#333,stroke-width:2px\n    style M fill:#00ccff,stroke:#333,stroke-width:2px\n    style J fill:#00ccff,stroke:#333,stroke-width:2px\n\n```\n\n## 🔄Part 4: Introduction to Agentic Framework(SmolAgent)\n\n##### **SmalAgent**\n\n**SmolAgent** provides a live coding guide for building lightweight agents. Key highlights include:\n\n- **Streamlit App:** Running using Colab as the backend server\n- **AI News Agent App**\n\n![](images/ainewsagent.gif)\n\n\u003e **Workflow**\n\n```mermaid\ngraph TD\n    A[Start] --\u003e B[Initialize Streamlit App]\n    B --\u003e C[Initialize LLM and Search Tool]\n    C --\u003e D[User Inputs News Topic]\n    D --\u003e E[Set Search Depth and Analysis Type]\n    E --\u003e F{Analyze News Button Clicked?}\n  \n    F -- Yes --\u003e G[Perform DuckDuckGo Search]\n    G --\u003e H{Results Found?}\n  \n    H -- Yes --\u003e I[Create Analysis Prompt]\n    I --\u003e J[Generate Analysis Using LLM]\n    J --\u003e K[Display Analysis Results]\n    K --\u003e L[Log Activity]\n  \n    H -- No --\u003e M[Show No Results/Error Message]\n  \n    F -- No --\u003e N[Wait for User Action]\n  \n    K --\u003e O[Show Tips for Better Results]\n    M --\u003e O\n    O --\u003e P[End]\n\n    style A fill:#ffcc00,stroke:#333,stroke-width:2px\n    style P fill:#ffcc00,stroke:#333,stroke-width:2px\n    style G fill:#00ccff,stroke:#333,stroke-width:2px\n    style J fill:#00ccff,stroke:#333,stroke-width:2px\n```\n\n\u003e **Running live in Colab**\n\n```mermaid\ngraph TD\n    SA[SmolAgent]\n    SA --\u003e SC[Step-by-Step Live Coding]\n    SC --\u003e S[Streamlit App via Colab]\n    SC --\u003e N[AI News Agent App]\n```\n\n#### 🔹Part 5: Agentic AI in SQL(SmolAgent)\n\n- **SmolAgent Framework Step by Step for SQL**\n- **Agent** : SQL AI Agent Dashboard\n\n![](images/sqlagent.gif)\n\n---\n\n## 🤝 Contributing\n\nContributions are welcome! To get started:\n\n1. **Fork** the repository\n2. **Create a branch** (`feature-new-pattern`)\n3. **Commit your changes**\n4. **Push to GitHub** and **open a PR**\n\nFor detailed guidelines, check [CONTRIBUTING.md](CONTRIBUTING.md).\n\n---\n\n## 📜 License\n\nThis project is licensed under the **MIT License** – see [LICENSE](LICENSE) for details.\n\n---\n\n## 📬 Contact\n\nFor questions or collaborations, feel free to reach out:\n\n📧 **Email:** ashishpatel.ce.2011@gmail.com\n\n---\n\n_🎯 Happy Coding! 🚀_\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashishpatel26%2Faiagentworkshop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fashishpatel26%2Faiagentworkshop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashishpatel26%2Faiagentworkshop/lists"}