Saturday, June 22, 2024

 

This is a summary of the book titled “Glad We Met – The Art and Science of 1:1 Meetings” written by Steven G. Rogelberg and published by Oxford UP in 2024. The workplace involves plenty of 1:1 meetings and almost half of them do not achieve the desired results. Drawing on extensive research, the author provides a framework on setting up, conducting, and following through on one-on-one meetings. Since career advancement depends on performance evaluation by manager for his or her reports, the author encourages managers to ask the right questions, foster engagement, illuminating each person’s progress. It works both ways for the manager to educate their reports and for their own leadership journey.

These one-on-one meetings do benefit from a framework, argues the author, and those between the manager and direct reports already come with an agenda. Weekly sessions are helpful to the managers and the meeting locations and questions to ask must be planned. Staying positive, sharing mutual priorities, and covering new material, asking for feedback, and saying thank you are all part of it. Regularly conducting these sessions gives more practice to both parties.

One-on-one meetings are crucial for team members and organizations, as they address their priorities, goals, problems, productivity, and employee development. With about a billion business meetings daily, 20% to 50% of these sessions could cost $1.25 billion daily. However, participants often report suboptimal results. Managers can improve their one-on-one meetings to gain a better return on time and money. These meetings strengthen ties within teams and organizations, supplement performance appraisals, and fuel communication between direct reports and managers. To maximize the benefits of one-on-one meetings, create an agenda using the "listings" approach, with the employee covering their list first and the team leader going down. This approach covers immediate work issues and long-range topics, such as career growth and development.

One-on-one meetings are crucial for managerial success, team success, and employee learning and engagement. They promote diversity and inclusion, strengthen relationships, and produce better outcomes. Before meetings, provide context for the topics and ask usual questions. Establish a routine for meetings and explain that they represent the manager's decision to prioritize employees' needs. Stay open-minded and explain shared objectives.

Hold weekly sessions, especially with remote employees, to avoid micromanagement. Choose a schedule that aligns with your needs and preferences, giving your directs some agency. If employees operate from the same office, consider deferring to their preferences.

Plan the location and questions for the meetings, including the office, direct report's office, or outdoor locations. Involve your employee in planning the setting and direct the conversation. The quality of questions asked will determine the quality of dialogue.

Effective one-on-one meetings are essential for team success, fostering better outcomes, strengthening relationships, and promoting diversity and inclusion. Focus on building connections with your employees, their engagement, setting priorities, giving feedback, and fostering career growth and development. Avoid asking personal questions or gossip and maintain a cheerful outlook. Take notes, cover new ground, and ask for feedback. Work through tactical and personal issues, ask for candid feedback, and implement "five key behaviors" to improve your performance. Both parties should feel free to ask for help, and the meeting should end on time. Wrap up the meeting and record important takeaways. Follow up on all commitments made during the meeting.

One-on-one meetings can occur between managers and their direct reports, or with employees meeting individually with their managers' manager or a higher-up executive. Regular one-on-one sessions help ensure your success as a leader, as they provide valuable insights, foster relationships, and help you make better decisions. The Chinese proverb "If you want happiness for an hour, take a nap, go fishing, inherit a fortune, but if you want happiness for a lifetime, help somebody" suggests that fostering relationships and helping others can lead to long-term happiness.

Previous book articles: BookSummary111.docx

Friday, June 21, 2024

 This is a summary of the book titled “The Digital Coaching Revolution – how to support employee development with Coaching Tech” written by Anna Tavis and Woody Woodward. Technology not only augments professional coaching services but also provide a platform for coaches to embrace the potential of data analysis and digital delivery. The authors provide a comprehensive review of digital coaching in corporate environments, sports, healthcare and so on. Digital coaching platforms are maturing towards full autonomy. They help to deliver tailored interventions. Holistic coaching improves individual well-being and productivity. AIs and chatbots have forced coaches to re-imagine their role. Digital coaching has potential to become universities with proper credentials for students. It can help improve diversity related outcomes.

Coaching is a collaborative process that helps individuals and organizations achieve their potential through affective, cognitive, skill-based, and results-based growth. It involves assessing a client's initial needs, agreeing to a schedule, writing a contract, conducting coaching sessions, measuring outcomes, and providing feedback. Although academic research on coaching is still in its infancy, a meta-analysis of scientific studies suggests it improves work satisfaction and well-being more than training. Professional coaching has its roots in Socratic questioning and has evolved with the rise of digital coaching, which uses technology to enhance coaching practices. Digital coaching platforms use machine learning to match coaches and coachees, offer group chats and Google Docs for remote communication, and provide dashboard tools for performance tracking. The multi-billion dollar coaching industry is expected to continue growing and disrupt the $360 billion L&D industry. Digital coaching platforms are maturing toward full autonomy, with four distinct phases: emergent, expansion, maturity, and optimization.

Digital coaches and platforms are increasingly using data to deliver personalized, scalable, and accessible approaches for their clients. This data allows providers to collect empirical evidence demonstrating the value of coaching interventions, such as the ROI Calculator released by CoachHub in 2023. Digital coaching platforms are also experimenting with sentiment analysis and biometrics to guide their services. However, coaches must balance the use of data with relational interactions to drive individual and team performance. Holistic coaching can improve both individuals' well-being and business productivity, as it addresses rising rates of pessimism, anxiety, and depression among workers. Digital health and well-being platforms, such as BetterUp, EZRA, and CoachHub, offer coaching services that cover physical health, mental health, work-life balance, and personal development. As AI and chatbots continue to develop, coaches must re-imagine their role, using AI tools to recommend targeted learning resources and streamline feedback. Integrating AI and chatbots into digital coaching platforms makes personalized learning accessible to a broader audience.

Digital coaching tools can enhance diversity-related outcomes by helping companies achieve their DEIB (Diversity, Equity, Inclusion, and Belonging) goals. These tools can be customized and applied to both upper management and junior employees. BetterUp focuses on the belonging aspect of DEIB, ensuring all employees have access to a coach. As coaching education moves from private companies to universities, it becomes more critical to ensure coaches have appropriate education, training, and credentials. Professional coaching associations offer recognized credentials based on their own standards. Universities are stepping up their coaching education opportunities to advance research in coaching technology and train a new generation of practitioners.


Thursday, June 20, 2024

 This is a continuation of articles on IaC shortcomings and resolutions. As a recap of several articles, this section brings to light what has worked and what hasn’t across a diverse and complex set of deployments. 

1. Cloud is our friend in its ability to provide management free, elastic, performant and highly available resources that can be reached from around the world. Transition from on-premises while requiring migration and modernization concerns are not insurmountable and the final state as cloud native deployments is very appealing in the long run.

2. Resources transition from preview to general acceptance as various cloud services become more mainstream. Since they are developed and made generally available independent of each other, many mature and lower the users concerns in their usage. Leveraging these built-in features over customizations holds us in good stead as it is maintenance free.

3. Anything managed is good including networks, storage and compute if the resource or set of resources to be deployed give that option. Taking the example of an Azure Machine Learning Workspace over an Azure Databricks instance, storage accounts, key vaults, managed virtual network are tightly integrated with the managed option and eschews rediscovery by hands-on configuration.

4. Complex deployments have a significant number of configuration parameters that can quickly get out of hand and require a large test matrix. Capturing them in Infrastructure-as-code with source control is helpful to both repeatable deployments as well as curating best practices.

5. The final state of the resources on their deployment must meet all the criteria so instead of working through the order of various steps and getting lost in the choices, it is better to work backwards from the final state once that has gained deliberation and buy-ins from stakeholders.

6. Zonal redundancy and regional disaster recovery are aspects that must be considered as early as design and implementation. They are not an afterthought and must be judiciously chosen to conserver resources and costs without detriment to the business continuity

7. Most workspaces and resources with public ip connectivity grow feet in the form of private endpoints to gain private plane connectivity through virtual networks so that the connectivity and traffic are secured and there is less attack surface from the ubiquitous internet. Designating subnets for providing addresses to private endpoints from various resources is good practice. Only when private connectivity interferes with usage of resources via workspace notebooks or management views and requires jump hosts or Bastions, then both public and private connectivity might be required. For public connectivity alone, simple firewall rules to enumerate the source and destinations can thwart many attacks that might require otherwise have required costly setup like Defender

8. Cost is always a concern as they have a tendency to balloon with usage and keeping them nanageable requires attention to features that are used and those that aren’t and the process must be repeated at setup as well as an ongoing basis.

9. Just like built-in features, most resources come with diagnostics, troubleshooting and documentation as well as support, so leveraging them avoids lengthy investigations.

10. Naming convention is important to capture the variations possible to resources and do very weill with prefixes and suffixes that have well-known meanings.  

Wednesday, June 19, 2024

 

This is a summary of the book titled “The Digital Coaching Revolution – how to support employee development with Coaching Tech” written by Anna Tavis and Woody Woodward. Technology not only augments professional coaching services but also provide a platform for coaches to embrace the potential of data analysis and digital delivery. The authors provide a comprehensive review of digital coaching in corporate environments, sports, healthcare and so on. Digital coaching platforms are maturing towards full autonomy. They help to deliver tailored interventions. Holistic coaching improves individual well-being and productivity. AIs and chatbots have forced coaches to re-imagine their role. Digital coaching has potential to become universities with proper credentials for students. It can help improve diversity related outcomes.

Coaching is a collaborative process that helps individuals and organizations achieve their potential through affective, cognitive, skill-based, and results-based growth. It involves assessing a client's initial needs, agreeing to a schedule, writing a contract, conducting coaching sessions, measuring outcomes, and providing feedback. Although academic research on coaching is still in its infancy, a meta-analysis of scientific studies suggests it improves work satisfaction and well-being more than training. Professional coaching has its roots in Socratic questioning and has evolved with the rise of digital coaching, which uses technology to enhance coaching practices. Digital coaching platforms use machine learning to match coaches and coachees, offer group chats and Google Docs for remote communication, and provide dashboard tools for performance tracking. The multi-billion dollar coaching industry is expected to continue growing and disrupt the $360 billion L&D industry. Digital coaching platforms are maturing toward full autonomy, with four distinct phases: emergent, expansion, maturity, and optimization.

Digital coaches and platforms are increasingly using data to deliver personalized, scalable, and accessible approaches for their clients. This data allows providers to collect empirical evidence demonstrating the value of coaching interventions, such as the ROI Calculator released by CoachHub in 2023. Digital coaching platforms are also experimenting with sentiment analysis and biometrics to guide their services. However, coaches must balance the use of data with relational interactions to drive individual and team performance. Holistic coaching can improve both individuals' well-being and business productivity, as it addresses rising rates of pessimism, anxiety, and depression among workers. Digital health and well-being platforms, such as BetterUp, EZRA, and CoachHub, offer coaching services that cover physical health, mental health, work-life balance, and personal development. As AI and chatbots continue to develop, coaches must re-imagine their role, using AI tools to recommend targeted learning resources and streamline feedback. Integrating AI and chatbots into digital coaching platforms makes personalized learning accessible to a broader audience.

Digital coaching tools can enhance diversity-related outcomes by helping companies achieve their DEIB (Diversity, Equity, Inclusion, and Belonging) goals. These tools can be customized and applied to both upper management and junior employees. BetterUp focuses on the belonging aspect of DEIB, ensuring all employees have access to a coach. As coaching education moves from private companies to universities, it becomes more critical to ensure coaches have appropriate education, training, and credentials. Professional coaching associations offer recognized credentials based on their own standards. Universities are stepping up their coaching education opportunities to advance research in coaching technology and train a new generation of practitioners.

 

Tuesday, June 18, 2024

 This is a summary of the book titled “Leader as Healer” written by Nicholas Janni and published by LID Publishing in 2022. This book is an interesting take on leadership from a person who emphasizes spirituality, mental healing, mindfulness, consciousness and peak performance from a Zen-like state. He is unusual as a business leader and author because he teaches acting and heads his own theatre company. He says that innovative leaders should tap into enlightened consciousness. Today’s problems require a heightened awareness and leaders who are aware and empathetic can be more than just executors. They can become emotional and spiritual healers and the journey begins with self-care and leading a purposeful life.

Technology has transformed the world, and heightened consciousness can transform individuals. CEOs and senior executives must invest their energy in innovative, mindful leadership to address today's challenges. Major disruptions are impacting industries, and society must prioritize communal, intuitive, and metaphysical principles over greed, self-interest, and competition. To fix today's problems, leaders must cultivate higher awareness and become emotional and spiritual healers.

Leaders who practice elevated thinking, being, and acting can become emotional and spiritual healers, inspiring others and transforming fragmented organizations into "coherent wholes." They can reawaken a company's vitality, build internal connections, and imbue an organization with energy. The "Leader-as-healer" model is an advanced leadership construct that replaces the outdated "Leader as executor" model, which prioritizes profits, compelled action, and discipline.

In today's fractious times, innovative leaders and a radical attitude adjustment are needed to address the challenges and promote a more compassionate and sustainable world.

The "Leader as executor" role is outdated and should be replaced by "Leader-as-healer." This model prioritizes profit, discipline, and action, but does not address the human side of business. Leaders-as-healers have practical wisdom and recognize the value of giving focused attention to their leaders, providing a "coherent presence" and showing employees that they are always ready to help.

To cope effectively with today's complex, disruptive world, leaders and employees must practice self-care, paying close attention to their emotional, spiritual, and physical needs, including their health. True leadership sometimes requires excising moral and spiritual tumors from organizations or nations. To tune into one's body and emotions, consider following a somatic mindfulness practice, paying close attention to breathing, and focusing on the body's inner and outer sensations.

Simple awareness exercises can help develop significant personal insights and rewire neural pathways, allowing leaders to better understand and navigate the challenges of today's complex world. By practicing self-care, leaders can become more receptive to new ideas and maintain an open spirit.

Self-care means paying close attention to one’s emotional, spiritual, and physical needs, including one’s health. When leaders do this, they develop significant personal insights and this helps to deepen the scope of their leadership. Mindfulness is practiced by focusing on their minds with contemplative exercises such as meditation which dates back to pre-Colombian civilization, early Hebrew mystics, Indian yogis, and Native American shamans. We set aside 20 minutes daily for meditation, taking notes on our inner emotional, mental, and physical state.

Lead a life of purpose – the right purpose – to avoid navigating life like a ship in stormy waters without a compass or rudder. A leader who operates unemotionally, based only on rationality, might translate purpose as increased profits and productivity, but their life's purpose should be internally worthwhile. Define your values and consider the contributions you can make to improve the world.

A strong sense of purpose is crucial for navigating life effectively. A leader should focus on internal, worthwhile goals rather than external ones. Emotions are the gateway to deeper humanity and a richer, more heartfelt relationship with life and leadership. Leaders should embrace their emotional side and abandon archaic thinking that has failed in the past. They should practice enlightened leadership that fortifies organizations and employees by combining thinking and feeling facets of themselves.

#codingexercise

Position eight queens on a chess board without conflicts:

    public static void positionEightQueens(int[][] B, int[][] used, int row) throws Exception {

        if (row == 8) {

            if (isAllSafe(B)) {

                printMatrix(B, B.length, B[0].length);

            }

            return;

        }

        for (int k = 0; k < 8; k++) {

            if ( isSafe(B, row, k) && isAllSafe(B)) {

                B[row][k] = 1;

                positionEightQueens(B, used, row + 1);

                B[row][k]  = 0;

            }

        }

    }

    public static boolean isSafe(int[][] B, int p, int q) {

        int row = B.length;

        int col = B[0].length;

        for (int i = 0; i < row; i++) {

            for (int j = 0; j < col; j++) {

                if (i == p && j == q) { continue; }

                if (B[i][j] == 1) {

                    boolean notSafe = isOnDiagonal(B, p, q, i, j) ||

                            isOnVertical(B, p, q, i, j) ||

                            isOnHorizontal(B, p, q, i, j);

                    if(notSafe){

                        return false;

                    }

                }

             }

        }

        return true;

    }
    public static boolean isAllSafe(int[][] B) {

        for (int i = 0; i < B.length; i++) {

            for (int j = 0; j < B[0].length; j++) {

                if (B[i][j]  == 1 && !isSafe(B, i, j)) {

                    return false;

                }

            }

        }

        return true;

    }

    public static boolean isOnDiagonal(int[][] used, int r1, int c1, int r2, int c2) {

        boolean result = false;

        int row = used.length;

        int col = used[0].length;

        for (int k = 0; k < 8; k ++) {

            if (r2 - k >= 0 &&  c2 - k >= 0 && r1 == r2 - k && c1 == c2 - k) {

                return true;

            }

            if (r2 + k < row && c2 + k < col && r1 == r2 + k && c1 == c2 + k) {

                return true;

            }

            if (r2 - k >= 0 && c2 + k < col && r1 == r2 - k && c1 == c2 + k) {

                return true;

            }

            if (r2 + k < row  && c2 - k >= 0 && r1 == r2 + k && c1 == c2 - k) {

                return true;

            }

        }

        return result;

    }

    public static boolean isOnVertical(int[][] used, int r1, int c1, int r2, int c2) {

        boolean result = false;

        int row = used.length;

        int col = used[0].length;

        for (int k = 0; k < 8; k++) {

            if (c2 - k >= 0  && c1 == c2 - k && r1 == r2 ) {

                return true;

            }

            if (c2 + k < row && c1 == c2 + k && r1 == r2) {

                return true;

            }

        }

        return result;

    }

    public static boolean isOnHorizontal(int[][] used, int r1, int c1, int r2, int c2) {

        boolean result = false;

        int row = used.length;

        int col = used[0].length;

        for (int k = 0; k < 8; k++) {

            if (r2 - k >= 0  && r1 == r2 - k && c1 == c2 ) {

                return true;

            }

            if (r2 + k < row && r1 == r2 + k && c1 == c2) {

                return true;

            }

        }

        return result;

    }

 

Sample output:

1 1 2 1 1 1 1 1
1 1 1 1 1 2 1 1
1 1 1 2 1 1 1 1
1 2 1 1 1 1 1 1
1 1 1 1 1 1 1 2
1 1 1 1 2 1 1 1
1 1 1 1 1 1 2 1
2 1 1 1 1 1 1 1


Monday, June 17, 2024

 This is a summary of the book “Never say whatever: How small decisions make a big difference?” written by Richard A. Moran and published by McGraw-Hill in 2023. The author hosts a CBS syndicated radio program and is a venture capitalist. He contends that indifference is a waste and often loses its essence and purpose. He calls this writing an “anti-whatever workbook” and advocates empathy saying that we must be social and not just need-based like creatures. Detachment has a high correlation with losing direction and caring while making intelligent choices makes us better and even minor decisions are vital. Among the highlights of the book, one can find wisdom such as starting early with even high school students who are rarely taught how to make decisions. Smart decision makers are self-aware and trust their guts. Saying whatever is not only self-damaging, but also damaging the workplace we are in. Entrepreneurs just cannot have a “whatever” attitude and people with such attitude aggravate everyone. Often indifferent people come to regret their careless attitude. Good advisors can help us make sound decisions. Our choices shape our future so we must be decisive.

"Whatever" is a common term used by Americans to express disengagement and dismissal, affecting not only the speaker but also others around them. This attitude is risk-averse and hinders decision-making, as decisions and actions make life meaningful. Intentional people understand that even minor decisions can be vital, and they make choices with forethought, intention, and purpose. Decision-making can be simplified by sticking with the status quo, making minor adjustments, or doing a complete about-face. Intentions always point the way to actions and results, and a clear intention leads to sound choices. For example, if you want to secure a raise or a promotion, you must ask for it, practice it, and establish a deliberative process that makes the most of your strengths. A "whatever" attitude does not ensure the same number of planes take off and land each day.

High school students often lack the skills to make intelligent decisions, which are crucial for making major choices such as college, career, and marriage. To teach students the basics of intelligent decision-making, schools should teach them the importance of "whatever" and frame options as "if/then" scenarios. A 10-year study by Bain & Company found that organizations that make timely, intelligent decisions outperform those that appear indecisive. The "two-minute rule" demonstrates the power of quick, effective decision-making when there are small choices, but the appropriate amount of time and consideration should be given to all major decisions. Smart decision-makers are self-aware and trust their guts, knowing their strengths and weaknesses and their emotions. They recognize the consequences of their decisions and actions and are willing to make "gut" decisions under the right circumstances. A "whatever" attitude can damage careers and organizations, as it can undermine a company's direction and undermine employees' sense of purpose.

Entrepreneurs must not have a "whatever" attitude to succeed, as they must be nonstop decision-makers who can make timely and cost-effective choices. They often use pattern recognition to clarify their decision-making and draw analogies between challenges and past ones. "Whatever" people can aggravate everyone, leading to trouble and strife at work and home. Housemates who struggle with making decisions can be troublemakers.

Regret often arises from careless attitudes, as long-term regrets often stem from decisions we did not make. What we choose to do today often affects what is possible in the future. Small but bad choices can snowball. It is important to remember that every choice creates a "ripple effect" that affects other aspects of life in positive and negative ways. Every decision involves some degree of risk, and it is better to make a good decision than to do nothing. Consulting with trusted advisors can help make sound decisions and creating a "personal board of directors" with wise people can provide numerous expert perspectives. Finally, the author recommends us to be decisive and avoid using the word "whatever" to indicate that we do not care. This will ensure that our choices shape our future. Sam Alemayhu, a respected businessman, and investor grew up in an impoverished village in Ethiopia and emigrated to America. His accomplishments inspire others to be decisive, care about their choices, and never say "whatever."


#codingexercise

Find minimum in a rotated sorted array:

class Solution {

public int findMin(int[] A) {

If (A == null || A.length == 0) { return Integer.MIN_VALUE; }

int start = 0;

int end = A.length -1;

while (start < end) {

int mid = (start + end) / 2;

// check monotonically increasing series

if (A[start] <= A[end] && A[start] <= A[mid] && A[mid] <= A[end]]) { return A[start];};

// check if only [start, end]

if (mid == start || mid == end) { if (A[start] < A[end]) return A[start]; else return A[end];}

// detect rotation point

if (A[start] > A[mid]){

end = mid;

} else {

if (A[mid] > A[mid+1]) return A[mid+1];

start = mid + 1;

}

}

return A[0];

}

}

Works for:

[0 1 4 4 5 6 7]

[7 0 1 4 4 5 6]

[6 7 0 1 4 4 5]

[5 6 7 0 1 4 4]

[4 5 6 7 0 1 4]

[4 4 5 6 7 0 1]

[1 4 4 5 6 7 0]

[1 0 0 0 0 0 1]

Sunday, June 16, 2024

 This is a continuation of a study involving a software application that responds to a chat like query on the data contained in the ten-year collection of my blog posts from https://ravinote.blogspot.com. Each article collected on the blog post is a daily routine and contains mostly unstructured text on quality explanations of software engineering practices and code samples from personal, enterprise and cloud computing. The earlier part of the study referred to leveraging Azure OpenAI search service to perform a semantic search based on the chat like query to create a generated response. This part of the study follows up on taking the data completely private so that the model built to respond to the query can be hosted on any lightweight compute including handheld devices using mobile browsers. The lessons learned in this section now follows:

First, a brief introduction of the comparison of the search methodologies between the two: 

1. Azure AI Toolkit for VS Code:

o Approach: This simplifies generative AI app development by bringing together AI tools and models from Azure AI catalog. We specifically use the Phi-2 small language model. It also helps to fine-tune and deploy models to the cloud.

o Matching: It matches based on similarity between query vectors and content vectors. This enables matching across semantic or conceptual likeness (e.g., “dog” and “canine”). Phi-2 is a 2.7 billion-parameter language model not the order of trillions in large language model but sufficiently compact to demonstrate outstanding reasoning and language understanding capabilities. Phi-2 is a Transformer based model with a next-word prediction objective that was originally trained on a large mixture of synthetic datasets for NLP and coding. 

o Scenarios Supported: 

Find a supported model from the Model Catalog.

Test model inference in the Model Playground.

Fine-Tune model locally or remotely in Model Fine-tuning

Deploy fine-tuned models to cloud via command-palette for AI Toolkit.

o Integration: Works seamlessly with other Azure services.

2. Azure OpenAI Service-Based Search:

o Approach: Uses the Azure OpenAI embedding model such as GPT-models to convert queries into vector embeddings. GPT-models are large language models while Phi-2 models are small language models. The dataset can include the web for the Chat Completions API from Azure OpenAI service. 

o Matching: Performs vector similarity search using the query vector in the vector database usually based on the top k-matching content based on a defined similarity threshold.

o Scenarios supported: 

Similarity search: Encode text using embedding models (e.g., OpenAI embeddings) and retrieve documents with encoded queries.

Hybrid search: Execute vector and keyword queries in the same request, merging results.

Filtered vector search: Combine vector queries with filter expressions.

o Cost:

increases linearly even for infrequent use at the rate of few-hundred dollars per month. The earlier application leveraging completion API had to be taken down for this reason.

Both approaches leverage vector embeddings for search, but toolkit and Phi-2 model are better for customizations while Azure OpenAI Completions API is useful for streamlined applications and quick chatbots.

And now the learnings follow:

- Fine-Tuning: A pretrained transformer can be put to different use during fine-tuning such as question-answering, language generation, sentiment analysis, summarization, and others. Fine-tuning adapts the model to different domains. Phi-2 behaves remarkably well in this regard. Fine-tuning LLMs are so cost prohibitive that it can be avoided. On the other hand, small language models are susceptible to overfitting where the model learns specifics of the training data that cannot be applied to the query.

- Parameter-Efficient Fine-tuning: This is called out here only for rigor. Costs for tuning LLMs can be reduced by fine-tuning only a subset of the model’s parameter but it might result in “catastrophic forgetting”. These techniques include LoRA, prefix tuning and prompt tuning. The Azure Toolkit leverages QLoRA. LoRA stands for Low-Rank Adaptation of Large Language Models and introduces trainable rank decomposition matrices into each layer of transformer architecture. It also reduces trainable parameters for downstream tasks while keeping the pre-trained weights frozen. QLoRA combines quantization with LORA with quantization data types to use as one of nf4 (4-bit normal float) or fp4 and adjustable batch size for training and evaluation per GPU. The data type is for compression to 4-bit precision as opposed to native floating-point-32-bit precision.

- Problem with outliers:  As with all neural networks that create embeddings, outliers are significant because while model weights are normally distributed, the inclusion of outliers directly affects the quality of the model. Iterative study involving different range of inclusions was too expensive to include in the study.

- Dequantization – this is the process of taking quantized weights which are frozen and not trained to be dequantized back to 32-bit precision. It is helpful to inference when quantized values and quantization constant can be used to backpropagate calculated gradients.

- Paged optimizers are necessary to manage memory usage during training of the language models. Azure NC4AS_T4_v3 family VMs handle this well but choice of sku is in initial decision not something that we can change during flight.

- BlobFuseV2 to load all the data stored in private storage accounts as local filesystem is incredibly slow for read over this entire dataset. Toolkit is more helpful to run on notebooks and laptops with VS Code, GPU, and customized local Windows Sub-system for Linux.