Malik Talha

Journey into GSoC 2023

GSoC 2023 Journey: Week 01 Report

02 June 2023

4 Minutes

My contribution details and experiences during the first week of coding period of Google Summer of Code (GSoC) 2023.

Introduction

Welcome to my weekly report documenting my journey during Google Summer of Code 2023 with the Linux Foundation! In this project, I am working on enhancing the existing speech-to-text feature of Automotive Grade Linux (AGL) by introducing a Natural Language Intent engine and implementing software daemons/controllers to execute the extracted intent. This endeavor aims to significantly improve the user experience and functionality of the speech-to-text feature in automotive environments. Throughout this report, I will share my progress, challenges faced, and achievements made as I contribute to the development of AGL and pave the way for more intuitive and intelligent voice interactions in automobiles.

Summary of the week

During this week of Google Summer of Code, my primary focus was on setting up and building the AGL master branch repository locally and on a virtual machine. Along with that I made use of the AGL/meta-agl-devel+28928 commit for the integration of "meta-offline-voice-agent" layer.

Tasks completed

During this week, I made significant progress towards achieving the goals and objectives of my project. Here are all the tasks completed as part of my weekly progress:

  • Repository Setup: Configured and cloned the AGL master branch repository on my local development environment and on the remote virtual machine.
    • Setup build environment and download repo tool.
      $ export AGL_TOP=$HOME/AGL
      $ echo 'export AGL_TOP=$HOME/AGL' >> $HOME/.bashrc
      $ mkdir -p $AGL_TOP
      $ mkdir -p $HOME/bin
      $ export PATH=$HOME/bin:$PATH
      $ echo 'export PATH=$HOME/bin:$PATH' >> $HOME/.bashrc
      $ curl https://storage.googleapis.com/git-repo-downloads/repo > $HOME/bin/repo
      $ chmod a+x $HOME/bin/repo
      
    • Clone the master branch of AGL.
      $ cd $AGL_TOP
      $ mkdir master
      $ cd master
      $ repo init -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo
      $ repo sync
      $ cd ..
      
  • Integration of "meta-offline-voice-agent": Utilized the "meta-offline-voice-agent" layer and made necessary modifications and improvements to ensure seamless integration.
    • (Optional) Enable ptests for this layer by adding following two lines into the meta-agl-devel/templates/feature/agl-offline-voice-agent/50_local.conf.inc file.
      DISTRO_FEATURES:append = " ptest"
      EXTRA_IMAGE_FEATURES += "ptest-pkgs"
      
  • Build Process: Built the AGL master branch using the established repository, ensuring a successful build process.
    • Initiate the build process.
      $ source master/meta-agl/scripts/aglsetup.sh -m qemux86-64 -b build-master agl-demo agl-devel agl-offline-voice-agent
      $ source agl-init-build-env
      $ bitbake agl-demo-platform
      
    • Now sit back and relax as it can take anywhere from few hours to days for the build to finish depending upon your hardware. (It took 18-20 hours on Intel i7-8565u 8th Gen CPU with 16 GB of RAM)

Tasks leftover

All tasks for this week were completed successfully with no leftovers.

Next steps

In the upcoming week, I have outlined the following tasks to further enhance the speech-to-text feature in Automotive Grade Linux and make progress towards achieving the project goals:

  • Updating Snips NLU Library: Update the existing Snips NLU library to support the latest versions of Python. This involves addressing any deprecated or incompatible code, ensuring compatibility with the required Python version.
  • Library Refactoring: Refactor the Snips NLU library by dividing it into two distinct parts: data preprocessing and model training plus inference. (this work is subjective)

Conclusion

Overall, this week was productive, and I am satisfied with the progress made in achieving the goals outlined for the week. I am excited to continue my GSoC journey and further enhance the speech-to-text feature in Automotive Grade Linux.

Resources

There were no resources found attached to this post.

TwitterGitHubLinkedIn

© 2023 Malik Talha, All rights reserved.