A comprehensive, hands-on workshop for learning Python programming and AI development from basics to production-ready applications.
This tutorial takes you on a journey from Python fundamentals to building sophisticated AI chatbots with web interfaces. Each module builds upon the previous one, ensuring a solid foundation while progressing toward real-world applications.
π 00 - Python Basics
Foundation Level | Time: 2-3 hours
Master the fundamental building blocks of Python programming:
- Conditional statements and decision making
- Loops and iteration patterns
- Command-line interfaces and user interaction
- Input validation and error handling
Skills Gained: Basic programming logic, control flow, user interaction
Beginner Level | Time: 2-3 hours
Understand Python's type system and modern programming practices:
- Python data types with type hints
- Variable naming conventions and best practices
- String formatting and f-strings
- Type safety and validation
Skills Gained: Data management, type-safe programming, modern Python syntax
Intermediate Level | Time: 3-4 hours
Learn code organization and reusable programming patterns:
- Function design with type annotations
- Module creation and import systems
- Error handling and exception management
- Documentation and testing patterns
Skills Gained: Code organization, modularity, professional development practices
π€ 03 - Basic Chatbot
Advanced Level | Time: 4-5 hours
Build AI-powered applications through structured progression:
- 01-simple-api-calls: Direct AI model integration
- 02-basic-classes: Object-oriented chatbot design
- 03-advanced-chatbot: Production-ready patterns
Skills Gained: AI integration, object-oriented programming, production patterns
Expert Level | Time: 3-4 hours
Create production-ready web applications:
- Modern web interfaces with Streamlit
- Real-time streaming responses
- Session management and deployment
- Professional UI/UX design
Skills Gained: Web development, deployment, production-ready applications
- Python 3.8+ installed on your system
- Basic familiarity with command line/terminal
- Text editor or IDE (VS Code recommended)
- Enthusiasm for learning! π
- Clone or download this repository
- Navigate to the workshop directory:
cd gen_ai_tutorial - Start with module 00:
cd 00-python-basics python conditional_statements.py
Each module contains:
- Comprehensive README: Learning objectives and concepts
- Commented Code Examples: Real-world, practical examples
- Progressive Complexity: Building from simple to sophisticated
- Hands-on Exercises: Practical challenges to reinforce learning
- Best Practices: Industry-standard patterns and conventions
- Language Fundamentals: Variables, functions, classes
- Modern Features: Type hints, f-strings, dataclasses
- Best Practices: PEP 8, documentation, testing
- LiteLLM: Unified interface for multiple AI providers
- Google Gemini: Fast, capable AI models
- OpenAI GPT: Industry-standard models
- Local Models: Ollama for privacy and control
- Streamlit: Rapid web app development
- Session Management: Persistent application state
- Real-time Features: Streaming and dynamic updates
- Deployment: Production-ready applications
- Pydantic: Type-safe data validation
- Environment Variables: Secure configuration
- JSON Handling: Data serialization and storage
- Error Handling: Robust error management
By completing this workshop, you'll be able to:
- Write Clean Python Code: Following modern best practices and conventions
- Build AI Applications: Integrate various AI models into your applications
- Create Web Interfaces: Develop professional web applications
- Handle Production Concerns: Manage errors, security, and deployment
- Design Scalable Architecture: Structure code for maintainability and growth
Every concept is demonstrated with real, working code that solves actual problems.
Start simple and build complexity gradually, ensuring solid understanding at each step.
Learn patterns and practices used in real-world professional development.
Each module builds on the previous, showing evolution from basic to sophisticated.
Emphasize code quality, documentation, testing, and professional development standards.
00-python-basics
β
01-data-types-variables
β
02-functions-modules
β
03-basic-chatbot
β
04-streamlit-chatbot
| Module | Estimated Time | Complexity |
|---|---|---|
| 00 - Python Basics | 2-3 hours | ββ |
| 01 - Data Types & Variables | 2-3 hours | βββ |
| 02 - Functions & Modules | 3-4 hours | ββββ |
| 03 - Basic Chatbot | 4-5 hours | βββββ |
| 04 - Streamlit Chatbot | 3-4 hours | ββββ |
| Total | 14-19 hours | - |
- Each module has detailed README files with explanations
- Code examples include comprehensive comments
- Common troubleshooting sections in each module
- Follow the sequence - each module builds on the previous
- Run all examples - hands-on practice is essential
- Experiment freely - modify code to see what happens
- Read the comments - they explain the "why" behind the code
- Take breaks - complex concepts need time to solidify
After completing the main workshop, consider these advanced topics:
- FastAPI: Building REST APIs
- Database Integration: SQL and NoSQL databases
- Authentication: User management and security
- React/Vue.js: Modern JavaScript frameworks
- WebSockets: Real-time communication
- PWAs: Progressive web applications
- Docker: Containerization
- CI/CD: Automated testing and deployment
- Cloud Platforms: AWS, Google Cloud, Azure
- Custom Models: Fine-tuning and training
- Vector Databases: Semantic search and RAG
- AI Agents: Multi-step reasoning systems
This workshop is designed to be a living resource. Contributions are welcome:
- Bug fixes in code examples
- Clarifications in documentation
- Additional examples that reinforce concepts
- Extension ideas for advanced learners
This workshop is open source and available for educational use. Feel free to adapt it for your learning needs or teaching contexts.
This workshop combines best practices from the Python community, AI development patterns, and modern web development approaches. Special thanks to the open source community for the excellent tools and libraries that make this learning experience possible.
Ready to start your AI development journey?
Begin with 00 - Python Basics and work your way through each module. Take your time, experiment with the code, and most importantly - have fun building! π