This project focuses on designing and evaluating a modular framework for using the Gemini API based on the official Gemini 2.5 Flash Notebook.
The goal is to transform an educational notebook structure into a more organized, maintainable, and evaluable software framework by separating configurations, shared utilities, capability modules, validation logic, and result tracking.
- Analyze the structure of the official Gemini 2.5 Flash Notebook
- Identify limitations of the sequential notebook-based approach
- Design a modular architecture for Gemini API usage
- Implement reusable components for different Gemini capabilities
- Compare the original structure with the modular implementation
- Text Generation
- Multi-turn Chat
- Image Input
- Video Input
- Structured Output
- Function Calling
- Code Execution
.
├── notebooks/
│ ├── 01_original_notebook.ipynb
│ ├── 02b_baseline_evaluation_completed.ipynb
│ └── 03_modular_notebook_completed.ipynb
│
├── results/
│ ├── baseline_results.csv
│ └── modular_results.csv
│
├── report/
│ └── Bachelor_Project_Report.pdf
│
├── assets/
│ └── synthetic_shapes.png
│
└── README.md
- Analysis of the original Gemini Notebook
- Preparation of an executable baseline version
- Design and implementation of the modular framework
- Execution of controlled evaluation scenarios
- Comparison of both approaches
The modular version separates:
- Model configuration
- API client initialization
- Common utility functions
- Capability-specific modules
- Validation components
- Result recording system
Evaluation metrics include:
- Output correctness
- Token consumption
- Code readability
- Extensibility
- Execution information tracking
- Python
- Google Gemini API
- Gemini 2.5 Flash
- Jupyter Notebook / Google Colab
- CSV-based result tracking
01_original_notebook.ipynb
Original notebook used as the reference implementation.
02b_baseline_evaluation_completed.ipynb
Baseline version prepared for controlled execution and evaluation.
03_modular_notebook_completed.ipynb
Final modular implementation containing the redesigned framework.
Bachelor_Project_Report.pdf
Complete bachelor project report.
The project compares the original notebook approach with the modular framework to investigate improvements in:
- Maintainability
- Reusability
- Evaluation consistency
- Development scalability
Bachelor Project
Computer Engineering - Artificial Intelligence
Project Title:
Design and Evaluation of a Modular Framework for Using Gemini API Based on Official Gemini 2.5 Flash Notebook