A Machine Learning Engineer designs, builds, productionizes, optimizes, operates, and maintains ML systems.
21 activities
A Machine Learning Engineer designs, builds, productionizes, optimizes, operates, and maintains ML systems. This learning path guides you through a curated collection of on-demand courses, labs, and skill badges that provide you with real-world, hands-on experience using Google Cloud technologies essential to the ML Engineer role. Once you complete the path, check out the Google Cloud Machine Learning Engineer certification to take the next steps in your professional journey.
Ось і закінчився
5 денний інтенсив на тему Генеративного ШІ. Захопило це після прослуховування LiveStreams кожного дня, але у запису
коли зʼявлялися субтитри котрі вже можна перекласти. По закінченню отримав
такий
бейдж від Kaggle
😉
Оформив простий Colab projet
ParkingAI.ipynb. Для його виконання необхідно отримати GOOGLE_API_KEY від
aistudio.google.com
і додати до секретних ключів. Зверніть увагу на список країн де AI
Studio може працювати.
Ось ядро логіки роботи з models/gemini-1.5-flash
In general the state diagram is.
# https://github.com/google-gemini/generative-ai-python
# https://colab.research.google.com/github/google-gemini/cookbook/blob/main/quickstarts/Function_calling.ipynb
# List of tools/functions for the parking AI system with explicit parameter types
parking_tools = [get_free_space, get_statistics, get_user_preferences, check_parked_car]
# Instruction to the model on how to use the tools
instruction = """
You are a helpful AI assistant for a smart parking app. Users can ask you questions about the app's features,
their parking status, and how to use the app. Use the available tools (get_free_space, get_statistics,
get_user_preferences, check_parked_car) to access relevant information and provide clear and concise answers.
"""
model = genai.GenerativeModel(
"models/gemini-1.5-flash-latest",
tools=parking_tools,
system_instruction=instruction,
)
user_query = input("Ask your question (commands: [e]xit, [h]istory): ")
response = chat.send_message(user_query)
print(response.text)
Приклади запитів:
Ask your question (commands: [e]xit, [h]istory): user 23 what preferred place ?
User 23 prefers Zone A and Zone B.
Ask your question (commands: [e]xit, [h]istory): user 24 and 33 ?
User 24 prefers Zone B and Zone C. There is no preference on record for user 33.
Ask your question (commands: [e]xit, [h]istory): h
user -> [{'text': 'user 23 what preferred place ?'}]
--------------------------------------------------------------------------------
model -> [{'function_call': {'name': 'get_user_preferences', 'args': {'user_id': 23.0}}}]
--------------------------------------------------------------------------------
user -> [{'function_response': {'name': 'get_user_preferences', 'response': {'preferred_locations': ['Zone A', 'Zone B']}}}]
--------------------------------------------------------------------------------
model -> [{'text': 'User 23 prefers Zone A and Zone B.\n'}]
--------------------------------------------------------------------------------
user -> [{'text': 'user 24 and 33 ?'}]
--------------------------------------------------------------------------------
model -> [{'function_call': {'name': 'get_user_preferences', 'args': {'user_id': 24.0}}}, {'function_call': {'name': 'get_user_preferences', 'args': {'user_id': 33.0}}}]
--------------------------------------------------------------------------------
user -> [{'function_response': {'name': 'get_user_preferences', 'response': {'preferred_locations': ['Zone B', 'Zone C']}}}, {'function_response': {'name': 'get_user_preferences', 'response': {'preferred_locations': []}}}]
--------------------------------------------------------------------------------
model -> [{'text': 'User 24 prefers Zone B and Zone C. There is no preference on record for user 33.\n'}]
--------------------------------------------------------------------------------
Ask your question (commands: [e]xit, [h]istory): q
Exiting the chat. Goodbye!
Ask your question (type 'exit' to quit): What you can?
I can:
* Tell you how many free parking spaces are available.
* Provide overall usage statistics for the app.
* Tell you your preferred parking locations (if you provide your user ID).
* Check if your car is currently parked (if you provide your license plate number).
Ask your question (type 'exit' to quit): how many parking space ?
There are currently 10 free parking spaces.
Ask your question (type 'exit' to quit): My car ABC123
OK. And what about your car with license plate ABC123? Do you want to know if it's currently parked?
Ask your question (type 'exit' to quit): yes
Yes, the car with license plate ABC123 is currently parked.
Ask your question (type 'exit' to quit): What about car AJJS11, is parked ?
No, the car with license plate AJJS11 is not currently parked.
Ask your question (type 'exit' to quit): Скільки вільних місць зараз є?
There are currently 10 free parking spaces.
Ask your question (type 'exit' to quit): Відповідай мені укаріїнською мовою.
Гаразд, я буду відповідати українською. Задавайте питання!
Ask your question (type 'exit' to quit): Скільки вільних місць зараз є? І який номер моєї машини?
Зараз є 10 вільних паркувальних місць. Повідомте мені номер вашої машини, щоб я міг перевірити, чи вона припаркована.
Ask your question (type 'exit' to quit): Я вже відповідав, чи ти не мамʼятаєш ?
Вибачте, я не маю пам'яті попередніх розмов. Для того, щоб перевірити, чи ваша машина припаркована, будь ласка, вкажіть її номерний знак.
Ask your question (type 'exit' to quit): ABC123
Так, автомобіль з номером ABC123 припаркований.
Ask your question (type 'exit' to quit): Яка сататистика використання ?
Загальна кількість зареєстрованих користувачів становить 100. Середнє використання додатку за тиждень складає 5.
Аsk your question (type 'exit' to quit, 'history' for history show): history
Ask your question (type 'exit' to quit, 'history' for history show): Мова спілкування українська
Добре, я буду спілкуватися з вами українською. Задавайте питання.
Ask your question (type 'exit' to quit, 'history' for history show): Номер моєї машини ABC123, вона припаркована ?
Так, ваш автомобіль з номером ABC123 припаркований.
Ask your question (type 'exit' to quit, 'history' for history show): history
user -> [{'text': 'Мова спілкування українська'}]
--------------------------------------------------------------------------------
model -> [{'text': 'Добре, я буду спілкуватися з вами українською. Задавайте питання.\n'}]
--------------------------------------------------------------------------------
user -> [{'text': 'Номер моєї машини ABC123, вона припаркована ?'}]
--------------------------------------------------------------------------------
model -> [{'text': 'Перевіряю...\n\n'}, {'function_call': {'name': 'check_parked_car', 'args': {'license_plate': 'ABC123'}}}]
--------------------------------------------------------------------------------
user -> [{'function_response': {'name': 'check_parked_car', 'response': {'is_parked': True}}}]
--------------------------------------------------------------------------------
model -> [{'text': 'Так, ваш автомобіль з номером ABC123 припаркований.\n'}]
--------------------------------------------------------------------------------
Ask your question (type 'exit' to quit, 'history' for history show): яка моя улюблена зона ?
Для того, щоб відповісти на це питання, мені потрібен ваш ідентифікатор користувача. Будь ласка, вкажіть його.
Ask your question (type 'exit' to quit, 'history' for history show): 23
Ваші улюблені зони паркування - це Зона A та Зона B.
Ask your question (type 'exit' to quit, 'history' for history show): history
user -> [{'text': 'Мова спілкування українська'}]
--------------------------------------------------------------------------------
model -> [{'text': 'Добре, я буду спілкуватися з вами українською. Задавайте питання.\n'}]
--------------------------------------------------------------------------------
user -> [{'text': 'Номер моєї машини ABC123, вона припаркована ?'}]
--------------------------------------------------------------------------------
model -> [{'text': 'Перевіряю...\n\n'}, {'function_call': {'name': 'check_parked_car', 'args': {'license_plate': 'ABC123'}}}]
--------------------------------------------------------------------------------
user -> [{'function_response': {'name': 'check_parked_car', 'response': {'is_parked': True}}}]
--------------------------------------------------------------------------------
model -> [{'text': 'Так, ваш автомобіль з номером ABC123 припаркований.\n'}]
--------------------------------------------------------------------------------
user -> [{'text': 'яка моя улюблена зона ?'}]
--------------------------------------------------------------------------------
model -> [{'text': 'Для того, щоб відповісти на це питання, мені потрібен ваш ідентифікатор користувача. Будь ласка, вкажіть його.\n'}]
--------------------------------------------------------------------------------
user -> [{'text': '23'}]
--------------------------------------------------------------------------------
model -> [{'text': 'Добре, перевіряю ваші налаштування...\n\n'}, {'function_call': {'name': 'get_user_preferences', 'args': {'user_id': 23.0}}}, {'text': '\n'}]
--------------------------------------------------------------------------------
user -> [{'function_response': {'name': 'get_user_preferences', 'response': {'preferred_locations': ['Zone A', 'Zone B']}}}]
--------------------------------------------------------------------------------
model -> [{'text': 'Ваші улюблені зони паркування - це Зона A та Зона B.\n'}]
--------------------------------------------------------------------------------
Що було на курсі?
[Day 1 Assignments] 5-Day Gen AI Intensive:
💡What You’ll Learn
Today you’ll explore the evolution of LLMs,
from transformers to techniques like fine-tuning and inference acceleration.
You’ll also get trained in the art of prompt engineering for optimal LLM
interaction.
The code lab will walk you through getting started
with the Gemini API and cover several prompt techniques and how different
parameters impact the prompts.
Today you will learn about the conceptual
underpinning of embeddings and vector databases and how they can be used to
bring live or specialist data into your LLM application. You’ll also explore
their geometrical powers for classifying and comparing textual data.
Learn to build sophisticated AI agents by
understanding their core components and the iterative development process.
The
code labs cover how to connect LLMs to existing systems and to the real world.
Learn about function calling by giving SQL tools to a chatbot, and learn how
to build a LangGraph agent that takes orders in a café.
In today’s reading, you’ll delve into the
creation and application of specialized LLMs like SecLM and MedLM/Med-PaLM,
with insights from the researchers who built them.
In the code labs
you will learn how to add real world data to a model beyond its knowledge
cut-off by grounding with Google Search. You will also learn how to
fine-tune a custom Gemini model using your own labeled data to solve custom
tasks.
Кроки для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
This course introduces participants to MLOps tools and best practices
for deploying, evaluating, monitoring and operating production ML
systems on Google Cloud. MLOps is a discipline focused on the
deployment, testing, monitoring, and automation of ML systems in
production. Machine Learning Engineering professionals use tools for
continuous improvement and evaluation of deployed models. They work with
(or can be) Data Scientists, who develop models, to enable velocity and
rigor in deploying the best performing models.
Кроки для для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
Complete the Implement Load Balancing on Compute Engine skill badge to demonstrate skills in the following: write gcloud commands and use Cloud Shell, create and deploy virtual machines in Compute Engine, run containerized applications on Google Kubernetes Engine, and configure network and HTTP load balancers.
Кроки для для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
In this course, you apply your knowledge of classification models and
embeddings to build a ML pipeline that functions as a recommendation
engine.
This is the fifth and final course of the Advanced Machine Learning on
Google Cloud series.
Кроки для для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
This course introduces the products and solutions to solve NLP problems on Google Cloud. Additionally, it explores the processes, techniques, and tools to develop an NLP project with neural networks by using Vertex AI and TensorFlow.
Кроки для для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
This course describes different types of computer vision use cases and then highlights different machine learning strategies for solving these use cases. The strategies vary from experimenting with pre-built ML models through pre-built ML APIs and AutoML Vision to building custom image classifiers using linear models, deep neural network (DNN) models or convolutional neural network (CNN) models.
The course shows how to improve a model's accuracy with augmentation, feature extraction, and fine-tuning hyperparameters while trying to avoid overfitting the data.
The course also looks at practical issues that arise, for example, when one doesn't have enough data and how to incorporate the latest research findings into different models.
Learners will get hands-on practice building and optimizing their own image classification models on a variety of public datasets in the labs they will work on.
Module 1: Introduction to Computer Vision and Pre-built ML Models with Vision API
Module 2: Vertex AI and AutoML Vision on Vertex AI
Module 3: Custom Training with Linear, Neural Network and Deep Neural Network model
Кроки для для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
This course covers how to implement the various flavors of production ML systems— static, dynamic, and continuous training; static and dynamic inference; and batch and online processing. You delve into TensorFlow abstraction levels, the various options for doing distributed training, and how to write distributed training models with custom estimators.
This is the second course of the Advanced Machine Learning on Google Cloud series. After completing this course, enroll in the Image Understanding with TensorFlow on Google Cloud course.
Кроки для для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
This course encompasses a real-world practical approach to the ML Workow: a case study approach that presents an ML team faced with several ML business requirements and use cases. This team must understand the tools required for data management and governance and consider the best approach for data preprocessing: from providing an overview of Dataow and Dataprep to using BigQuery for preprocessing tasks.
The team is presented with three options to build machine learning models for two specic use cases. This course explains why the team would use AutoML, BigQuery ML, or custom training to achieve their objectives. A deeper dive into custom training is presented in this course. We describe custom training requirements from training code structure, storage, and loading large datasets to expoing a trained model.
You will build a custom training machine learning model, which allows you to build a container image with lile knowledge of Docker.
The case study team examines hyperparameter tuning using Veex Vizier and how it can be used to improve model peormance. To understand more about model improvement, we dive into a bit of theory: we discuss regularization, dealing with sparsity, and many other essential concepts and principles. We end with an overview of prediction and model monitoring and how Veex AI can be used to manage ML models
● Module 1: Understanding the ML Enterprise Workow ● Module 2: Data in the Enterprise ● Module 3: Science of Machine Learning and Custom Training ● Module 4: Veex Vizier Hyperparameter Tuning ● Module 5: Prediction and Model Monitoring Using Veex AI ● Module 6: Veex AI Pipelines ● Module 7: Best Practices for ML Developmen
Кроки для для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
Want to know about Veex AI Feature Store? Want to know how you can improve the accuracy of your ML models? What about how to nd which data columns make the most useful features? Welcome to Feature Engineering, where we discuss good versus bad features and how you can preprocess and transform them for optimal use in your models. This course includes content and labs on feature engineering using BigQuery ML, Keras, and TensorFlow.
Кроки для для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
This course covers designing and building a TensorFlow input data
pipeline, building ML models with TensorFlow and Keras, improving the
accuracy of ML models, writing ML models for scaled use, and writing
specialized ML models.
Кроки для для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
● Describe how to improve data quality ● Peorm exploratory data analysis ● Build and train AutoML Models using Veex AI ● Build and train AutoML Models using BigQuery ML ● Optimize and evaluate models using loss functions and peormance metrics ● Create repeatable and scalable training, evaluation, and test datasets
Summary
The course begins with a discussion about data: how to improve data quality and peorm exploratory data analysis. We describe Veex AI AutoML and how to build, train, and deploy an ML model without writing a single line of code. You will understand the benets of Big Query ML. We then discuss how to optimize a machine learning model and how generalization and sampling can help assess the quality of ML models for custom training
Кроки для для здобуття необхідних навичок для спеціальностей з напрямку AI & Data на платформі Google Cloud Skills Boost завдяки можливості надданій Google Ukraine.
This course introduces the artificial intelligence (AI) and machine learning (ML) offerings on Google Cloud that support the data-to-AI lifecycle through AI foundations, AI development, and AI solutions. It explores the technologies, products, and tools available to build an ML model, an ML pipeline, and a generative AI project based on the different goals of users, including data scientists, AI developers, and ML engineers.
This six-course certificate, developed by Google, is designed to provide
IT professionals with in-demand skills -- including Python, Git, and IT
automation -- that can help them advance their careers. The hands-on
curriculum is designed to teach learners how to write code in Python,
with a special focus on how this applies to automating tasks in the
world of IT support and systems administration. Those who received
this certificate passed all graded assessments with a score of 80% of
above. They should have a strong foundation in how to use Git and
GitHub, troubleshoot and debug complex problems, and apply
automation at scale by using configuration management and the
Cloud in order to prepare them for more advanced IT Support
Specialist or Junior Systems Administrator positions.
Unlock the potential of automation for computer fleet management in our all-encompassing course. Whether you're new to the field or seeking to expand your skills, this program provides a solid foundation in automation techniques, offering a pathway to becoming a versatile IT professional prepared to launch and support modern cloud based applications and systems.
You’ll start by discovering the art of automating computer deployment and management in a cloud-based environment. Then delve into the world of containerization with Docker and learn container orchestration with Kubernetes. Next gain expertise in configuration management tools and techniques to ensure system consistency and reliability. You will explore the world of monitoring, enabling proactive responses to potential issues. Finally, embrace the DevOps culture as you learn the principles of CI/CD. Become proficient in the art of automating software delivery pipelines, ensuring efficiency, quality, and consistency.