Month: August 2024
Troubleshoot Lettering
Upon restarting device this pops up. Can anybody Translate?
Upon restarting device this pops up. Can anybody Translate? Read More
Meet a recent Microsoft Learn Student Ambassador graduate Supasate Vorathammathorn
This is the next segment of our blog series highlighting Microsoft Learn Student Ambassadors who achieved the Gold milestone, the highest level attainable, and have recently graduated from university. Each blog in the series features a different student and highlights their accomplishments, their experience with the Student Ambassador community, and what they’re up to now.
Today we meet Supasate who recently graduated with a bachelor’s degree in computer engineering from King Mongkut’s University of Technology Thonburi (KMUTT) in Thailand.
Responses have been edited for clarity and length.
When did you join the Student Ambassadors community?
I became part of the Student Ambassadors community during my sophomore year, around July 2021. However, my connection with this community began even earlier, back in high school. In Thailand, the Student Ambassadors program plays a crucial role in introducing Thai developers to Microsoft technologies and cutting-edge innovations.
What was being a Student Ambassador like?
Being part of the student ambassador program feels like stepping into a buffet restaurant for knowledge. It’s a place where you can curate your own plate of learning, selecting the topics that resonate with you and then sharing that knowledge with others. But it’s more than just a learning opportunity; it’s a community—a home for students from universities around the world.
Was there a specific experience you had while you were in the program that had a profound impact on you and why?
During my time in the Student Ambassadors Community, I organized around 40 events over three years with community leaders in Thailand, including Microsoft MVPs, the Microsoft Thailand team, and other Student Ambassadors. Each event aimed to provide Thai developers with new knowledge or tools through workshops or to support Thai students in creating impactful projects for society through university hackathons. Additionally, I mentored other Student Ambassadors to help them achieve their goals in the program. These experiences have been profoundly impactful and unforgettable.
Tell us about a technology you had the chance to gain a skillset in as a Student Ambassador. How has this skill you acquired helped you in your post-university journey?
During my time as a Student Ambassador, I had numerous opportunities to expand my knowledge. In terms of hard skills, I gained expertise in cutting-edge technologies that significantly helped me define my career goals. These included Artificial Intelligence (using Azure AI services), Generative AI (such as Playground and GPT-4 API), and especially Quantum Computing (Azure Quantum), which I plan to continue exploring.
Supasate poses with others while attending a Microsoft tech event.
What is something you want all students, globally, to know about the Microsoft Learn Student Ambassador Program?
In my opinion, the Microsoft Learn Student Ambassador Program is invaluable for university students. It offers numerous opportunities to develop skills and gain experiences while still in university. This program facilitates collaboration with others, especially with community leaders who possess specialized knowledge and skills. These connections and experiences can significantly help students achieve their goals and prepare for their future careers.
What advice would you give to new Student Ambassadors, who are just starting in the program?
For new Student Ambassadors, my advice is to actively engage and make the most of the opportunities this program offers. Gain as much knowledge, build connections, and gather experiences as you can. This program can help you achieve your career goals and explore new technologies, giving you an edge over other students who are not part of it. Embrace every opportunity and learn as much as possible.
Supasate poses before a Global AI Bootcamp in Thailand
Share a favorite quote with us! It can be from a movie, a song, a book, or someone you know personally. Tell us why you chose this. What does it mean for you?
One of my favorite quotes is from myself: “Give yourself a try, try a lot, and learn from your mistakes. Improve yourself because time won’t wait for you. Keep trying until you have no power left.” This quote is a constant source of motivation for me, driving me to achieve my goals in everyday life. It reminds me to embrace challenges, learn from failures, and continuously strive for improvement.
Tell us something interesting about you, about your journey.
One interesting and wonderful part of my journey is how I transitioned from an attendee to a host and speaker at the Global AI event. When I was in grade 12, I attended my first Global AI event, which was organized by a Student Ambassador at the time. This was my introduction to the community. Two years later, I had the opportunity to not only participate but also to host and speak at the Global AI event, organizing it for three consecutive years. It has been an incredible journey, and I feel immensely grateful for the chance to grow from an attendee to an organizer.
You can follow Supasate here:
LinkedIn: https://www.linkedin.com/in/ksupasate
Medium: https://medium.com/@ksupasate
Instagram: https://www.instagram.com/k.supasate
Microsoft Tech Community – Latest Blogs –Read More
Meet a recent Microsoft Learn Student Ambassador graduate Adalbert Pungu
This is the next segment of our blog series highlighting Microsoft Learn Student Ambassadors who achieved the Gold milestone, the highest level attainable, and have recently graduated from university. Each blog in the series features a different student and highlights their accomplishments, their experience with the Student Ambassador community, and what they’re up to now.
Today we meet Adalbert who recently graduated with a bachelor’s degree in software engineering and computer systems from Ecole Supérieure d’Informatique Salama (ESIS) in Democratic Republic of Congo.
Responses have been edited for clarity and length.
When did you join the Student Ambassadors community?
January 2021
What was being a Student Ambassador like?
Being a Student Ambassador has been a transformative experience for me. It has been much more than just an opportunity to represent a renowned brand like Microsoft. It has been an adventure where I’ve been able to not only develop my technical skills but also cultivate leadership, communication, and project management skills. As an Ambassador, I’ve had the chance to plan and organize events focused on Microsoft technologies, collaborate with other passionate students, and share my knowledge with my community. This experience has not only allowed me to enhance my skills but has also helped me make a positive impact on others by inspiring them to explore the world of technology and assisting them in solving their problems, thus guiding them towards realizing their full potential.
Was there a specific experience you had while you were in the program that had a profound impact on you and why?
An experience I underwent during my participation in the program had a profound impact on me. Specifically, my involvement in the Microsoft Build 2022 AI (ARTIFICIAL INTELLIGENCE) Gaming Challenge Tournament was an unforgettable experience. Despite the constraint of the English language, coming from a Francophone country, I persisted. Even though I couldn’t express myself as fluently in English, it did not hinder me from standing out and overcoming certain limitations or barriers. This is what makes me a living proof and a source of inspiration in the face of this major challenge encountered, with determination and hard work, anything is possible.
Tell us about a technology you had the chance to gain a skillset in as a Student Ambassador. How has this skill you acquired helped you in your post-university journey?
During my journey as a Student Ambassador, I had the opportunity to explore and enhance my skills through the benefits of various learning tools and platforms, such as LinkedIn Learning, provided by the Microsoft Learn Student Ambassadors program. Specifically, my passion for web technologies, including the MERN stack, led me to delve deeper into TypeScript/JavaScript. Working with TypeScript helped me better understand strong typing concepts and modern JavaScript development, thereby strengthening my skills in web application creation. Additionally, I also had the chance to explore Microsoft Power Platform, particularly Power Apps. Working with Power Apps allowed me to gain a deep understanding of creating business applications without code, thereby facilitating the development of customized applications to meet the needs of diverse individuals. This versatility in technology was extremely beneficial during my journey as a Student Ambassador, and I hope it will play a crucial role in my professional success after university.
What is something you want all students, globally, to know about the Microsoft Learn Student Ambassador Program?
What I want all students globally to know about the Microsoft Learn Student Ambassador Program is that it’s much more than just an ambassador program. It is a dynamic community where students can not only develop their technical skills but also acquire leadership, communication, and collaboration skills. The program offers many opportunities, such as participation in exclusive events, networking opportunities with industry professionals, and access to high-quality training resources. As ambassadors, we have the privilege of representing such a prestigious brand as Microsoft while also making a positive impact on our local communities.
What advice would you give to new Student Ambassadors, who are just starting in the program?
For new Student Ambassadors who are just starting off in the program, my advice would be to fully embrace every opportunity that comes your way. Be open to continuous learning and exploring modern technologies. Get actively involved in the community by participating in events, sharing your knowledge, and building relationships with your peers. Don’t be afraid to step out of your comfort zone and take the initiative. Lastly, remember that you are not only a representative of Microsoft but also a change agent in your community.
Share a favorite quote with us! It can be from a movie, a song, a book, or someone you know personally. Tell us why you chose this. What does it mean for you?
One of my favorite quotes is: ‘You must always dare each time you intend to do something you like or want to achieve.’ This quote reflects my experience on my journey. It was only after being admitted to the Student Ambassadors program that I realized I can also do it. I began taking risks and tackling challenges that seemed beyond my abilities. Today, I am proud to say that I have succeeded in achieving these audacious goals I set for myself, such as becoming a Gold-level Student Ambassador, being recognized as a Microsoft MVP in the Developer Technologies category, and becoming a contributor to FreeCodeCamp, among others. This quote has always encouraged me to step out of my comfort zone and pursue my dreams with determination, and it continues to inspire me to aim even higher.
Adalbert Pungu, Gold Microsoft Learn Student Ambassador hosting a technology workshop.
Tell us something interesting about you, about your journey.
An interesting aspect of my academic journey and experience in the program is my active involvement in organizing technology awareness initiatives and knowledge-sharing activities. As the Lead Campus Club Pilot of the Microsoft program, I have taken initiatives such as promoting the Microsoft Student Ambassadors program in my city, conducting presentations at various universities, and guiding students interested in computer science, along with my team members. I also demonstrated my interest in Francophone countries by organizing an event in Togo for a group of university students. I presented the Microsoft program to them and guided them through the application process, as there were no student ambassadors there at the time. Additionally, I was invited to speak about Introduction and Application Development with C# at two collaborative communities, the Microsoft User Group Gabon and the Microsoft User Group Lomé. Apart from this, I also took the initiative to discuss AI gaming at a meeting with stakeholders from different countries such as Ghana, Nigeria, and myself from Congo. We even collaborated with a Microsoft MVP AI at the time, which was a rewarding experience where we discussed various technologies such as Azure, Python, etc.
Adalbert Pungu hosting a workshop for students.
LinkedIn: https://www.linkedin.com/in/AdalbertPungu/
GitHub: https://github.com/AdalbertPungu/
FreeCodeCamp: https://www.freecodecamp.org/news/author/adalbertpungu/
Medium: https://adalbertpungu.medium.com/
Hashnode: https://adalbertpungu.hashnode.dev/
Microsoft Tech Community – Latest Blogs –Read More
Meet a recent Microsoft Learn Student Ambassador graduate Syed Fasih Uddin
This is the next segment of our blog series highlighting Microsoft Learn Student Ambassadors who achieved the Gold milestone, the highest level attainable, and have recently graduated from university. Each blog in the series features a different student and highlights their accomplishments, their experience with the Student Ambassador community, and what they’re up to now.
Today we meet Syed Fasih Uddin who recently graduated with a Bachelor of Science in software engineering from Usman Institute of Technology in Pakistan.
Responses have been edited for clarity and length.
What was being a Student Ambassador like?
Being a Student Ambassador was a very rewarding experience for me. It has made my student life more interesting and fun. Through this program, I gained knowledge and established a wide network of connections, both locally in my country, Pakistan, and globally.
When you are trusted with the brand name of the world’s biggest tech company, you have to prove your worth. This program has allowed me to enhance my skills and provided me with an excellent platform to share my knowledge with the global learning community. It has helped me develop important leadership, collaboration, and communication skills, and I am now proficient in managing events with ease. I have become more technically adept and skilled at quickly learning new technologies. As a result, I now confidently lead discussions and have become a better community builder.
Syed at Microsoft EDU Day in Karachi, Pakistan.
Was there a specific experience you had while you were in the program that had a profound impact on you and why?
“Throughout my journey, I have had a range of diverse experiences. In 2021, I was selected for a program and was the only ambassador at my campus. I took on the responsibility of building the community myself and founded the “Microsoft Learn Student Community – UIT”. As I graduate, I am proud to have a team of more than 11 ambassadors currently serving in my university.
Another achievement I feel proud of is co-founding the MLSA – Karachi Chapter, which is an umbrella community to assist all the MLSA university communities of Pakistan’s largest city, Karachi. Bringing members together on one platform has been a fulfilling experience.
Participating in the Imagine Cup 2023, securing wins at regional and national stages, and then passing on that knowledge to students as a Microsoft designated mentor for the Imagine Cup 2024 had been an incredibly fulfilling experience. I owe it all to MLSA for introducing me to Imagine Cup. Without the confidence that the program imparted in me, I wouldn’t have been able to apply for Imagine Cup.
Lastly, I am grateful for the opportunities to speak at big events where I addressed large audiences. These opportunities have made me the person I am today.”
Syed and others at the first MLSA Karachi meeting.
Tell us about a technology you had the chance to gain a skillset in as a Student Ambassador. How has this skill you acquired helped you in your post-university journey?
As a Student Ambassador, I delved into various Azure services, thanks to the program’s resources, which enabled me to learn and grow. As a result, I earned two MS certificates, AZ-900 and AI-900. This has equipped me to converse confidently about cloud architecture, build architectures, and give talks on Cloud Computing and Microsoft Azure.
What is something you want all students, globally, to know about the Microsoft Learn Student Ambassador Program?
The Microsoft Learn Student Ambassador program offers much more than just a title or certification. It provides you with endless learning opportunities, on which the top is access to its vibrant community. It forces you to make your today a little better than yesterday. It can be by building leadership skills, fostering collaboration and innovation, or improving technical skills. As a student ambassador, you get everything you need to be a successful individual in life.
What advice would you give to new Student Ambassadors, who are just starting in the program?
My advice to my fellow ambassadors is to always prioritize personal growth by embracing challenges and sharing things. If you want to be successful, then start collaborating with people, and start sharing quality information with them. The more knowledge you share, the more you learn.
Syed, giving a talk at NED University of Engineering and Technology, Karachi.
Share a favorite quote with us! It can be from a movie, a song, a book, or someone you know personally. Tell us why you chose this. What does it mean for you?
“The strong is not the one who overcomes the people by his strength, but the strong is the one who controls himself while in anger.” – Prophet Muhammad (Peace Be Upon Him) [Ref;Bukhari 6114] When working in a group and leading people, not every experience is positive. However, if you can maintain your composure during moments of anger and stay focused on the bigger picture, you are truly valuable. I learned this the hard way after messing up countless times.
Tell us something interesting about you, about your journey.
I have always loved computers since the beginning. However, as a student in Pakistan, I didn’t have many opportunities to practice computer science. With a passion for becoming one of the best software engineers in the world, I opted for the software engineering field and applied for the student ambassador program of the world’s largest tech company. I now aspire to get into Microsoft one day and I’m preparing with the fullest of my efforts for it.
Syed presents during the closing ceremony of Microsoft Imagine Cup in Islamabad.
You can follow Syed here:
LinkedIn: https://www.linkedin.com/in/sssfasih/
Microsoft Tech Community – Latest Blogs –Read More
Windows 365 management capabilities now on N-able Cloud Commander
Today, we’re excited to share that Windows 365 management capabilities are now generally available on N-able Cloud Commander.
N-able provides remote monitoring and management solutions for managed service providers (MSPs) and cloud solution providers (CSPs). N-able Cloud Commander is a multitenant solution for the Microsoft Cloud that enables MSPs and CSPs to manage Microsoft users, Microsoft Azure resources, and Microsoft Intune from a single console. The new Windows 365 integration with N-able Cloud Commander provides MSPs and CSPs with comprehensive management and monitoring capabilities for Windows 365 Cloud PCs, and benefits include:
Comprehensive endpoint management
Endpoint administrators can view and manage Windows 365 Cloud PCs across all users, covering Windows 365 Business, Windows 365 Enterprise, and Windows 365 Frontline editions.
Key monitoring parameters for each Cloud PC, such as provisioning status, power state, connectivity status, and last sign in, are readily available. The service plan is also displayed, which aids in precise license management.
Actionable device control
Administrators can perform various actions on devices, such as refreshing, renaming, rebooting, and reprovisioning, with the ability to execute many actions in bulk. These actions are role-based and ensure appropriate access control.
Microsoft Intune integration
Intune-specific functions for Windows 365 Cloud PCs are still accessible from the Intune list.
Enhanced license management
The new product licenses page allows viewing and managing of Windows 365 licenses, including usage for shared licenses such as Windows 365 Frontline. This integration simplifies license administration and optimization.
Unified dashboard
N-able Cloud Commander offers a single management interface for all Windows 365 Cloud PCs regardless of Intune enrollment status. Administrators can leverage Windows 365 device capabilities and relate them to the Intune counterpart and device license.
Future updates and enhancements
Future updates will introduce the power-off action for Windows 365 Cloud PCs, particularly for Windows 365 Frontline products, which will allow released device licenses to be returned to the available pool for other users.
Future enhancements will include troubleshooting capabilities to help reduce time needed to resolve problems.
“We are pleased to partner with N-able to bring enhanced Windows 365 management capabilities to MSPs and CSPs, enabling them to manage on behalf of their customers and scale with ease.” –Scott Manchester, Vice President of Product Management for Windows 365 and Azure Virtual Desktop at Microsoft
The integration of Windows 365 with N-able Cloud Commander ensures that administrators have the tools they need to efficiently manage and optimize their Windows 365 environments, so they can keep pace with the evolving demands of cloud computing.
Get started with N-able Cloud Commander
To learn more about N-able Cloud Commander and its capabilities for the Microsoft Cloud, including Windows 365, check out the N-able site.
Learn more about Windows 365
For more about Windows 365, visit the Windows 365 site, view our technical documentation, and join the Windows 365 Community.
To learn more about three years of enabling flexible work with Windows 365, read Windows 365 at three years: Customer-centric solutions for security, management, and productivity.
Continue the conversation. Find best practices. Bookmark the Windows 365 Community, then follow us @MSWindowsITPro on X and on LinkedIn.
Microsoft Tech Community – Latest Blogs –Read More
Windows App general availability coming soon
We are delighted to announce that the Windows App for Windows, Web, iOS, and macOS, currently in preview, will be generally available this fall. Also announced for this fall is the Windows App for Android public preview.
The Windows App is your gateway to securely connect to Windows on any device or app across Windows 365, Azure Virtual Desktop, Remote PC, Remote Desktop Services, Microsoft Dev Box, and more. Enjoy the simplicity of a unified client that securely connects you to your Windows workspace in the cloud from any device. Enhance productivity with customizable home screens, support for multiple monitors, and USB redirection. Benefit from advanced security features, including multifactor authentication, which ensure a seamless and robust connection to your Cloud PCs and enable you to work efficiently from any location, at any time.
What to expect with the general availability of the Windows App
Windows: The Windows 365 App will undergo an in-place update to transition to Windows App. Employees can expect a smooth update process that ensures full feature parity, modern user experience (UX), and no functional regressions. This update will be available through the Microsoft Store.
Web: For web users, the transition to the Windows App will be immediate. Users will see the new UX and rebranding immediately upon accessing the app via the new URL. This ensures a cohesive and enhanced in-browser experience across all platforms.
iOS and macOS: Users on iOS and macOS will experience an in-place update of the Remote Desktop client to the new Windows App version. This update will provide the same modern UX and additional functionalities, ensuring that there are no disruptions to business continuity. It will be available through the Apple app store for iOS and macOS.
Android: We are also excited to announce the Windows App preview for Android, which will be available for users in the Google Play store later this year. This preview offers Android users the same robust and secure access to their Windows environment, ensuring a consistent experience across all devices.
Overall, users can expect an update on product pages and feature parity across all platforms. The consistent experience across Windows, Web, iOS, macOS, and Android ensures that users can transition seamlessly without any loss of functionality.
We appreciate your feedback and support throughout the Windows App preview. Your input has been invaluable in shaping the final product. We look forward to continuing to meet your needs and delivering an exceptional experience with the general availability of the Windows App.
Learn more about the Windows App
Before general availability, you’re encouraged to try out the Windows App preview on your device of choice.
To learn more about three years of enabling flexible work with Windows 365, read Windows 365 at three years: Customer-centric solutions for security, management, and productivity.
Continue the conversation. Find best practices. Bookmark the Windows 365 Community, then follow us @MSWindowsITPro on X and on LinkedIn.
Microsoft Tech Community – Latest Blogs –Read More
AI-driven insights reduce TCO for Windows 365 Cloud PCs
We are thrilled to announce that AI-powered Cloud PC recommendations are now available to all Windows 365 administrators. This new AI-powered capability provides you with tailored recommendations to optimize the use and performance of Windows 365 Cloud PCs.
IT administrators often face challenges after purchasing licenses for their Cloud PC deployments. Managing the total cost of ownership (TCO) while ensuring a productive employee experience can be complex. Admins need to determine the best Cloud PC configurations for their specific needs, optimize with various configurations, and maintain optimal use. Without appropriate information, this struggle can lead to several outcomes, including:
Extended purchase discussions: Identifying the right configuration is complex and can prolong the decision process as organizations and vendors spend more time finding the most suitable configuration.
Reduced employee productivity: Inappropriate configurations can cause performance issues that hamper efficiency.
Fluctuations in usage and license churn: Misalignment between purchased licenses and actual use can lead to irregular usage patterns, which complicates cost management.
The good news is that to improve the employee experience or to reduce TCO, you can optimize Cloud PC usage dynamically by resizing devices or deprovisioning them based on activity. By leveraging machine learning algorithms, Windows 365 analyzes resource utilization data with an evolving model, providing you with immediate and actionable insights about Cloud PCs that are underused, sized appropriately, or could otherwise benefit from resizing. These AI-powered recommendations help simplify management of devices and offer specific sizing information for Cloud PCs, making the assignment of an optimized device simple and intuitive. As usage evolves and changes over time, you can continue to utilize this intelligent resource to help make informed decisions that enhance the overall Windows 365 experience and optimize device usage over time.
Get started with Cloud PC recommendations
To experience the benefits of Cloud PC recommendations, sign in to the Microsoft Intune admin center and navigate to the Cloud PC overview section.
For details on the definitions of our usage terms and more information about our recommendations, see our Cloud PC recommendations report documentation.
Our team is dedicated to enhancing the tool’s precision and expanding its capabilities to address your ever-changing needs. We encourage you to use the recommendations and share your experiences to help us guide future development of this and other AI-powered capabilities.
To learn more about three years of enabling flexible work with Windows 365, read Windows 365 at three years: Customer-centric solutions for security, management, and productivity.
Continue the conversation. Find best practices. Bookmark the Windows 365 Community, then follow us @MSWindowsITPro on X and on LinkedIn.
Microsoft Tech Community – Latest Blogs –Read More
Windows 365 GPU-enabled Cloud PCs now generally available
In the fast-paced world of cloud computing, the way we access and manage computing resources has transformed, and the integration of graphics processing units (GPUs) into cloud computing has significantly enhanced this revolution. GPUs are crucial for graphics-intensive workloads because they accelerate tasks that demand massive parallel processing power. They provide significant benefits across various sectors: for example, data scientists can expedite complex computations and large-scale data analysis, game designers can render high-quality graphics in real-time, and creative professionals enjoy faster processing speeds for tasks such as 3D modeling and video rendering.
We are happy to announce that GPU-enabled Cloud PCs are now generally available for Windows 365 Enterprise and Frontline editions. Users can now handle advanced workloads—that were traditionally limited by the constraints of local hardware—in the cloud with increased speed and efficiency. Sensitive data and high-value digital assets can be processed and stored securely in the cloud, mitigating the risks associated with local storage.
“The Windows 365 GPU Standard license provides an all-in-one, scalable desktop virtualization solution that was easy to scale, had low management overheads, and provided reliable access to GPU capabilities for advanced computational functions.” –Peter Short, General Manager, Innovation and Technical Services, Penten
The following configurations are available today through Windows 365 Enterprise and Frontline editions:
Windows 365 GPU Standard
Windows 365 GPU Super
Windows 365 GPU Max
These GPU licenses can be purchased and assigned just like other Windows 365 licenses.
FAQs
Which editions of Windows 365 support GPU-enabled Cloud PCs?
GPU-enabled Cloud PCs are generally available for Windows 365 Enterprise and Frontline editions.
Is a GPU being offered as an add-on to existing Cloud PC licenses?
No, GPU capabilities are being offered as standalone GPU-enabled Cloud PCs.
Can a GPU be dynamically added and removed from the configuration that has already been enabled?
No, GPU-enabled Cloud PCs cannot be dynamically added and removed from the entitled configuration.
Are GPU-enabled Cloud PC trials available?
Trial subscriptions are available for qualified organizations and are subject to evaluation and charge. Please contact your Microsoft account representative for more information.
How much do the GPU-enabled Cloud PCs cost?
Please contact your Microsoft account team or Microsoft partner.
Which drivers are supported by GPU-enabled Cloud PCs?
GPU-enabled Cloud PCs will come pre-provisioned with the correct driver needed for the best experience. Approved NVIDIA drivers can be found here, and AMD drivers can be found here. The use of any external drivers, including those from NVIDIA or AMD websites, are not supported.
Can I run AI workloads on GPU-enabled Cloud PCs?
Yes, GPU-enabled Cloud PCs are compatible with and support AI functionalities in software applications like Microsoft Copilot. For AI development or tasks in AI Toolkit for Visual Studio Code that need intensive GPU processing, please use the Max GPU-enabled Cloud PCs.
Want to learn more? Read the Windows 365 GPU-enabled Cloud PC technical documentation.
To learn more about three years of enabling flexible work with Windows 365, read Windows 365 at three years: Customer-centric solutions for security, management, and productivity.
Continue the conversation. Find best practices. Bookmark the Windows 365 Community, then follow us @MSWindowsITPro on X and on LinkedIn.
Microsoft Tech Community – Latest Blogs –Read More
New Windows 365 features help provide a more secure workspace
Today, we’re excited to highlight a few newly added and upcoming features that strengthen the Windows 365 security foundation. We are constantly innovating to ensure that Windows 365 continues to provide a safe environment to securely stream your personalized Windows desktop, apps, settings, and content from the Microsoft Cloud to any device. Windows 365 provides security in various layers—identity, access, and data—when employees use their Cloud PCs. Existing capabilities like Conditional Access policies help protect user identities and ensure that Cloud PCs are accessed securely from any device. Customer managed keys help encrypt and protect data.
As businesses and individuals increasingly rely on cloud platforms to store, process, and access their information, the risk of data breaches, unauthorized access, and cyberattacks becomes more significant. Below are a few newly added features that support Windows 365 in providing the integrity, robustness, and reliable remote access to your Cloud PCs:
Single sign-on (SSO) not only provides a better user experience by reducing the number of credential prompts but it also adds support for passwordless (phish resistant) authentication when accessing Microsoft Entra–joined and Microsoft Entra hybrid–joined session hosts and Cloud PCs. SSO also enables support for non-Microsoft identity providers. For more information, see Configure single sign-on for Windows 365 using Microsoft Entra authentication.
In-session passwordless authentication takes advantage of the new WebAuthn redirection functionality to support phish-resistant credentials like passkeys when authenticating inside the session. WebAuthn requests are sent to the local device to be completed using locally attached security devices and Windows Hello for Business. For more information, see In-session passwordless authentication.
Faster re-authentication enables IT admins to require that users re-authenticate when launching a new connection if it’s been more than 5-10 minutes since they last authenticated to Microsoft Entra. This functionality leverages the sign-in frequency option in Conditional Access policies. For more information, see Configure sign-in frequency.
Mobile application management (MAM) for iOS and Android devices currently in public preview allows users to customize device redirections and strengthen the security of the physical device used to access Windows 365 Cloud PCs or Azure Virtual Desktop virtual machines (VMs) across environments that are unmanaged, managed by external tenants, or managed by organizations. For more information, see Configure client device redirection settings using Microsoft Intune.
Traceable watermarking and screen capture protection help block and/or hide remote content in screenshots while discouraging sensitive information from being captured on client endpoints. For more information on watermarking, see Watermarking in Windows 365 and for more information on screen capture protection, see Screen capture protection.
Microsoft Purview Customer Key allows you to control your organization’s encryption keys and then configure Windows 365 to use keys to encrypt your data at rest in Microsoft datacenters. Customer Key allows you to add a layer of encryption that belongs to you, with your keys. For more information, see Microsoft Purview Customer Key for Windows 365 Cloud PCs.
Microsoft Purview forensic evidence for insider risk management helps organizations gain visual insight into potentially risky user actions on a Cloud PC so they can quickly respond and mitigate. The visual capturing capabilities with customizable event triggers and built-in user privacy protection controls help security teams better investigate, understand, and respond to potential insider data risks like unauthorized data exfiltration of sensitive data. Forensic evidence provides more context to organization admins supporting security investigations. This can drive accurate and timely resolution of the incident and help determine other vectors that contribute to security related risks. For more information, see Set up Microsoft Purview forensic evidence for Windows 365.
Unidirectional clipboard redirection restricts the flow of data to a single direction—either from the Cloud PC to the client or vice versa. This capability allows organizations to limit the direction and configure the type of data that can be copied at a user or device level. With this, organizations can prevent accidental or intentional data leaks. For more information, see Configure the clipboard transfer direction.
These newly added and upcoming features help strengthen the Windows 365 security foundation and support our customers in meeting today’s challenges. We are committed to continually adding value to the service and learning from you and your feedback. Have a suggestion for a new feature or functionality? Post your ideas in the Windows 365 feature requests board.
To learn more about Windows 365 and Microsoft Security:
Learn more about Windows 365 and sign up for a trial today
Learn about Microsoft Security
To learn more about three years of enabling flexible work with Windows 365, read Windows 365 at three years: Customer-centric solutions for security, management, and productivity.
Continue the conversation. Find best practices. Bookmark the Windows 365 Community, then follow us @MSWindowsITPro on X and on LinkedIn.
Microsoft Tech Community – Latest Blogs –Read More
General Availability: Vaulted backups for Azure Blob Storage
We are excited to announce the general availability of vaulted backups for Azure Blob Storage. Vaulted backups can help you achieve complete protection for your blobs data against data loss. We encourage you to consider adding vaulted backup protection to your Azure Blob Storage data protection strategy.
Vaulted backup for Azure Blob Storage is a native, fully-managed backup solution from Azure Backup. It enables comprehensive protection of your blob storage data against data loss scenarios by storing a dedicated backup copy of the data in an Azure . These backups can be used to recover data in the event of any data loss on production systems. Vaulted backups, used in conjunction with other data protection capabilities (for example: soft delete, versioning and operational backups), provide multilayer protection against data loss. Vaulted backups can be configured together or separately from operational backups.
Protecting your data against loss or corruption has become even more important with the increased frequency and sophistication of cyberattacks. Azure Blob Storage offers several data protection capabilities within the same storage account such as resource locks, soft delete, versioning, and point-in- time restore. However, these capabilities alone might not comprehensively protect from events such as accidental or malicious storage account deletion. Vaulted backups provide an additional, complementary protection layer against these events.
Example use cases
Here are a few of the common scenarios where vaulted backups can help you.
Scenario 1: Better protection against ransomware attacks
In a ransomware attack, backups enable organizations to recover their data without succumbing to ransom demands. Vaulted backups, independent of the primary storage account’s status or availability, ensure that you can reliably recover your data. There are several ways that vaulted backups can help protect you in such scenarios. First, all vaulted backup data is isolated from the production storage accounts and stored in a separate tenant that is managed by Microsoft. The only way to manage this data is through the Backup with its own separate permissions, allowing for the separation of responsibilities. Second, for additional protection, vaulted backups allow you to leverage advanced security capabilities provided by Azure Backup, such as immutable vaults, multiuser authorization and soft delete, which can help you make sure that your data is protected and recoverable when it’s needed. Third, Azure Backup also allows you to better manage and govern the security of your backups with the business continuity and disaster recovery (BCDR) security posture. This helps ensure that backups have the right level of security (refer to the image below).
Scenario 2: Accidental or malicious storage account deletion
Mistakes are made, insider threats exist, and credentials can be stolen. All of these can lead to storage accounts being deleted. Thankfully, with vaulted backups, your backups are stored securely in storage managed by Microsoft. So, an additional copy of your data exists outside of your storage account. This additional copy can help recover in cases where the entire storage account is deleted accidentally or maliciously. Vaulted backups allow you to recover all blobs or a subset of blobs in a storage account (refer to the image below). You can also leverage advanced security capabilities such as immutability, multiuser authorization, and soft delete. When used together, these capabilities add multi-layered protection against accidental and malicious data loss and ensure your backups are there when you need them.
Scenario 3: Regulatory Compliance
In some industries, regulations require offsite backups and/or long-term retention of data. The backup vault can help create an offsite backup that will be in the same Azure region as the primary storage account and can optionally be replicated to another region. With vaulted backups, data can be retained for up to 10 years which allows for audits, legal holds, and compliance retention. Azure Business Continuity Center makes it easy to manage and govern backups of your blob data across your estate (refer to the image below).
Pricing and availability
Vaulted backup for Azure Blob is available in these regions. To learn about pricing, refer to the Azure Blob backup pricing page. Consistent with the billing experience we had in public preview, the Azure Backup protected instance fee and the vault backup storage fees are not currently charged. We will enable these charges starting in October 2024. Now is a great time to give vaulted backups a try!
Getting started
Here are three simple steps to help you get started with configuring vaulted backup for Azure blob storage:
Create a backup vault: A vault is a management entity that stores backups and allows you to access and manage them.
Create a backup policy: Backup policy enables you to configure the frequency and retention of backups based on your business requirements.
Select the storage account and containers to backup: You can choose to back up all containers or select specific containers depending on the criticality of the data they contain.
To learn more about vaulted backup for blobs, refer to this article.
Contact us
If you have questions or feedback, please reach out to us at AskAzureBackupTeam@microsoft.com.
Microsoft Tech Community – Latest Blogs –Read More
Create Planner Tasks from the Viva Connections “Assigned Tasks” card
In today’s busy work environment, staying organized and keeping track of tasks is more important than ever. For employees, especially those in frontline roles, having quick access to essential tools and information can make a significant difference in daily productivity. That’s why we’re excited to introduce a new feature on the Viva Connections dashboard in Microsoft Teams: the ability to create tasks directly from your dashboard!
What is Viva Connections?
The Viva Connections dashboard is your go-to hub in Microsoft Teams, offering a personalized experience with easy access to company news, resources, and apps. This is particularly useful for frontline workers, as it serves as the default homepage in Teams on both mobile and desktop.
What’s New?
This update builds on the existing integration of Microsoft Planner with the Viva Connections dashboard. Along with the existing integration, where users can view their “Assigned Tasks”, we’ve added two new buttons to the ‘Assigned Tasks’ card on the Viva Connections dashboard:
Add Task Button: Easily create new tasks right from the dashboard by clicking the ‘Add Task’ button. This quick task capture feature helps you keep track of new tasks as they come up, without needing to navigate away from your main dashboard.
Open Planner Button: For a more detailed view of your tasks and plans, use the ‘Open Planner’ button to jump directly into the Planner app for Microsoft Teams. This provides a seamless way to manage your tasks and see everything at a glance. You can access this option from the larger format task card.
This enhancement is now generally available on Teams Desktop, Web, and Mobile, ensuring that Planner users who work with Viva Connections can benefit from streamlined task management, no matter which device they’re using.
Share your feedback
Your feedback helps inform our feature updates and we look forward to hearing from you as you try out Planner’s new and existing capabilities! To share your feedback about the new Planner app in Teams, you can navigate to the ? icon in the Planner app and select ‘Feedback’ as seen in the GIF below. We also encourage you to share any features you would like to see in the app by adding it to our Planner Feedback Portal.
Learn more:
Learn about the Viva connections in Teams: Overview: Viva Connections | Microsoft Learn
Watch the new Planner demos for inspiration on how to get the most out of the new Planner app in Microsoft Tea…
Read about our investments for organizations using the new Planner with frontline workers.
We’ve got a lot more ‘planned’ for the new Planner this year! Stay tuned to the Planner Blog – Microsoft Community Hub for news.
For future updates coming to the new Planner app, please view the Microsoft 365 roadmap here.
Microsoft Tech Community – Latest Blogs –Read More
Replacing one line (or one part of a line) in a text file
Hello. I have a config file that contains 1 specific line that I want to change just the number (in this case from 1000 to e.g. 235)
This is my code so far:
%Get current Value
FilePath=’C:Program FilesTeledyne DALSASaperaCamFilesUsermyCamera.ccf’
Filedata = readlines(FilePath)
TF = contains(Filedata,"Time Integrate Duration=")
k = find(TF,1);
expStr=Filedata(TF);
ReportMessage(app,expStr); %My report function that reports to a UITextarea
oldLine=Filedata(k)
Filedata(k) ="Time Integrate Duration=235" %this is the new line I want
[fid, msg] = fopen(‘FilePath’, ‘w’)
if fid < 1;
error(‘could not write output file because "%s"’, msg);
end
fwrite(fid, strjoin(Filedata, ‘n’));
fclose(fid);
But it doesn’t seem to be changing the file
I also enclose the config file (text)Hello. I have a config file that contains 1 specific line that I want to change just the number (in this case from 1000 to e.g. 235)
This is my code so far:
%Get current Value
FilePath=’C:Program FilesTeledyne DALSASaperaCamFilesUsermyCamera.ccf’
Filedata = readlines(FilePath)
TF = contains(Filedata,"Time Integrate Duration=")
k = find(TF,1);
expStr=Filedata(TF);
ReportMessage(app,expStr); %My report function that reports to a UITextarea
oldLine=Filedata(k)
Filedata(k) ="Time Integrate Duration=235" %this is the new line I want
[fid, msg] = fopen(‘FilePath’, ‘w’)
if fid < 1;
error(‘could not write output file because "%s"’, msg);
end
fwrite(fid, strjoin(Filedata, ‘n’));
fclose(fid);
But it doesn’t seem to be changing the file
I also enclose the config file (text) Hello. I have a config file that contains 1 specific line that I want to change just the number (in this case from 1000 to e.g. 235)
This is my code so far:
%Get current Value
FilePath=’C:Program FilesTeledyne DALSASaperaCamFilesUsermyCamera.ccf’
Filedata = readlines(FilePath)
TF = contains(Filedata,"Time Integrate Duration=")
k = find(TF,1);
expStr=Filedata(TF);
ReportMessage(app,expStr); %My report function that reports to a UITextarea
oldLine=Filedata(k)
Filedata(k) ="Time Integrate Duration=235" %this is the new line I want
[fid, msg] = fopen(‘FilePath’, ‘w’)
if fid < 1;
error(‘could not write output file because "%s"’, msg);
end
fwrite(fid, strjoin(Filedata, ‘n’));
fclose(fid);
But it doesn’t seem to be changing the file
I also enclose the config file (text) readlines, contains, fwrite MATLAB Answers — New Questions
Why does MATLAB Runtime cache (CTF extraction path) get corrupted after running the executable for several number of times?
We have a .NET application where functions of a MATLAB Compiler SDK generated DLL are called.
It happens that the MATLAB Runtime cache gets corrupt, such that executing the DLL function always results in error.
This happens only after running the application for several number of times. When I manually delete the entire MATLAB Runtime cache directory helps resolving the issue. I am wondering what could be the reason for corrupted CTF extraction.We have a .NET application where functions of a MATLAB Compiler SDK generated DLL are called.
It happens that the MATLAB Runtime cache gets corrupt, such that executing the DLL function always results in error.
This happens only after running the application for several number of times. When I manually delete the entire MATLAB Runtime cache directory helps resolving the issue. I am wondering what could be the reason for corrupted CTF extraction. We have a .NET application where functions of a MATLAB Compiler SDK generated DLL are called.
It happens that the MATLAB Runtime cache gets corrupt, such that executing the DLL function always results in error.
This happens only after running the application for several number of times. When I manually delete the entire MATLAB Runtime cache directory helps resolving the issue. I am wondering what could be the reason for corrupted CTF extraction. corrupted, mcr MATLAB Answers — New Questions
3D system definition: How btaining the angle between a single axis and a plane
Hello, I am having trouble obtaining the angle between a vector and a plane which are defined by two different rotation matrix.
I have two objects, A and B, which are defined by rotation matrices R (Rotation matrix from global origin to A) and R’ (Rotation matrix from global origin to B).
R = [a b c; d e f; g h i]
R’= [a’ b’ c’; d’ e’ f’; g’ h’ i’]
I want to obtain the rotation in degrees between the axis X from object A to the plane XZ (and eventually XY) from object B.
Thank you in advance.
AlonsoHello, I am having trouble obtaining the angle between a vector and a plane which are defined by two different rotation matrix.
I have two objects, A and B, which are defined by rotation matrices R (Rotation matrix from global origin to A) and R’ (Rotation matrix from global origin to B).
R = [a b c; d e f; g h i]
R’= [a’ b’ c’; d’ e’ f’; g’ h’ i’]
I want to obtain the rotation in degrees between the axis X from object A to the plane XZ (and eventually XY) from object B.
Thank you in advance.
Alonso Hello, I am having trouble obtaining the angle between a vector and a plane which are defined by two different rotation matrix.
I have two objects, A and B, which are defined by rotation matrices R (Rotation matrix from global origin to A) and R’ (Rotation matrix from global origin to B).
R = [a b c; d e f; g h i]
R’= [a’ b’ c’; d’ e’ f’; g’ h’ i’]
I want to obtain the rotation in degrees between the axis X from object A to the plane XZ (and eventually XY) from object B.
Thank you in advance.
Alonso 3d kinematics, rotation matrices MATLAB Answers — New Questions
Performance Issue using cell() to convert Python data types to Matlab
I have a Python list of 50,000 elements in Matlab, and using the cell() function to convert it to Matlab cell array is taking over an hour, while on my coworkers machine it takes less than a minute. We are both using Python 3.9, Matlab 2021b, and my VM is v4cpu 16G RAM. Also, when trying to pause or stop the execution of cell() Matlab freezes, and has to be forcefully shut down.
Note – The code below executed instantly in this website, but takes over an hour on Matlab 2021b installed on my local.
pyrun("py_list = list(range(50000))");
cellArray = cell(pyrun(‘py_list’, ‘py_list’));I have a Python list of 50,000 elements in Matlab, and using the cell() function to convert it to Matlab cell array is taking over an hour, while on my coworkers machine it takes less than a minute. We are both using Python 3.9, Matlab 2021b, and my VM is v4cpu 16G RAM. Also, when trying to pause or stop the execution of cell() Matlab freezes, and has to be forcefully shut down.
Note – The code below executed instantly in this website, but takes over an hour on Matlab 2021b installed on my local.
pyrun("py_list = list(range(50000))");
cellArray = cell(pyrun(‘py_list’, ‘py_list’)); I have a Python list of 50,000 elements in Matlab, and using the cell() function to convert it to Matlab cell array is taking over an hour, while on my coworkers machine it takes less than a minute. We are both using Python 3.9, Matlab 2021b, and my VM is v4cpu 16G RAM. Also, when trying to pause or stop the execution of cell() Matlab freezes, and has to be forcefully shut down.
Note – The code below executed instantly in this website, but takes over an hour on Matlab 2021b installed on my local.
pyrun("py_list = list(range(50000))");
cellArray = cell(pyrun(‘py_list’, ‘py_list’)); python, cell MATLAB Answers — New Questions
Azure OpenAI works good for small and static prompts and not so good on Long and dynamic prompts
I am using Azure OpenAI gpt-35-turbo with langchain’s chains and agents, runnable-parallel methods. The application is for an agricultural usecase (eg: prediction of whether to irrigate or not given the current conditions the crop is in). All sensor and weather inputs are apis. Below is the code snippet for llm call.
“””
Vector DB
“””
db = Chroma(VECTOR_DB_COLLECTION_NAME, embedding_function=embeddings,
persist_directory=”./”+VECTOR_DB_COLLECTION_NAME)
printlg(“[-] Chroma Vector DB “+VECTOR_DB_COLLECTION_NAME+” Loaded”)
printDurFrom(st, “Chroma Loaded”, “lg”)
fs = LocalFileStore(“./”+VECTOR_DB_DOCSTORE_NAME)
store = create_kv_docstore(fs)
retriever = ParentDocumentRetriever(
vectorstore=db,
docstore=store,
child_splitter=child_splitter,
parent_splitter=parent_splitter
)
llm = AzureOpenAI(openai_api_key=return_chat_credentials()[“api-key”],
model_name=”gpt 3.5 turbo”, api_version=”2023-03-15-preview”, base_url=return_chat_credentials()[“api-url”], temperature=0.2)
“””
Tool Functions
“””
def soil_tool(input: str = “”):
“””
NPK-Moisture Extraction tool
“””
dat = fetch_last(“both”)
res = stringify(dat)
return res
def context_tool(input: str = “Best Practices for agriculture”):
“””
Vector Retrieval tool
“””
st = time.time()
context = “”
docs = retriever.invoke(input)
for doc in docs:
# Filter based on threshold score
context += doc.page_content + “n” + “—“*5 + “n”
printDurFrom(st, “Context Extracted”, ‘lg’)
return context
def weather_tool(loc: Literal[“<lat>,<long>”] = “,”):
“””
Weather Data Extraction tool
“””
st = time.time()
context = “”
lat, long = loc.split(“,”)
context = stringify(getRequiredWeatherData(lat, long), “weather”)
printDurFrom(st, “Weather API”, ‘lg’)
return “The Hourly and Daily Weather:n”+str(context)
“””
Tools
“””
context_agent = Tool(name=”Data Tool”,
description=”Use this tool to obtain agriculture related information like irrigation guidelines, fertilization guidelines, crop production guidelines and pest control mechanisms from agricultural books. Input to be passed is ‘<crop-name> <context-that-is-needed>’.”,
func=context_tool)
soil_agent = Tool(name=”Soil Tool”,
description=”Use this agent to get current soil condition data. Input should be ‘both’.”,
func=soil_tool)
weather_agent = Tool(name=”Weather Tool”,
description=”Use this agent to get current weather condition data. Input should be <lat>,<long>.”,
func=weather_tool)
def createAgent(agentName: Literal[“irrigation”, “pesticide”, “fertilization”], agentSpecificPromptPart: str):
“””
Creates KPI specific Agents
“””
st = time.time()
tools = [weather_agent, soil_agent, context_agent]
agent_chain = initialize_agent(
tools=tools, llm=llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=False, max_iterations=15, max_new_tokens=4000, handle_parsing_errors=True
)
printDurFrom(st, agentName.capitalize()+” Agent Initialized”, “lg”)
sysmsg = SystemMessage(content=”You are an Agricultural Assitant. You have access to tools that have all the contextual information and the live data like weather and soil nutrition values you need. Humans don’t have any knowledge about the tools you have access to and you dont have to tell them.”)
hummsg = HumanMessage(content=f”””
Here are the basic information about the crop i’ve sown and the agricultural land you need,
CropName: {Farmer.CROP_TYPE}
Variety: {Farmer.VARIETY}
SoilType: {Farmer.SOIL_TYPE}
Location: {Farmer.LOCATION}
Lat: {Farmer.LAT}
Long: {Farmer.LONG}
SownIn: {Farmer.SOWN_IN}
Phase: {Farmer.STAGE}
TodayDate: {datetime.now().strftime(“%d-%m-%Y”)} [dd-mm-yyyy]
{agentSpecificPromptPart}
Only answer to the given question with its short reason. Do not leave sentences incomplete.
“””)
prompt = ChatPromptTemplate.from_messages([
sysmsg,
hummsg,
])
ret = None
try:
ret = agent_chain.ainvoke, prompt
except:
print(“[!] Error in AgentChain”)
return ret
def chainCall(mode: Literal[“irrigation”, “pesticide”, “fertilization”]):
“””
Creates and returns the specific chains
“””
if mode == “irrigation”:
prmpt = “””
Consider “precipitationProbability” from weather tool and “moisture” from MoistureSensor of soil tool. And answer the following questions.
– Is this the right time to irrigate?
“””
return createAgent(mode, prmpt)
elif mode == “pesticide”:
prmpt = “””
Consider “precipitationProbability” and “windSpeed” from weather tool and “moisture” from MoistureSensor of soil tool. And answer the following questions.
– Is this the right time to spray pesticides?
– Which pesticide to use?
– How much to spray?
“””
return createAgent(mode, prmpt)
elif mode == “fertilization”:
prmpt = “””
Consider “precipitationProbability” and “windSpeed” from weather tool and “moisture” from MoistureSensor and “nitrogen”, “phosporous” and “potassium” from soilProbeSensor of soil tool. And answer the following questions.
– Is this the right time to spray fertilizer?
– Which fertilizer to use?
– How much to spray?
“””
return createAgent(mode, prmpt)
else:
raise ValueError(“Invalid ‘mode'”)
def lambdaFuncGen(model, prompt: str):
“””
Lambda Function Generator for Main Chain
“””
async def lambdaFunc(dummy: None):
“””
Lambda Function that returns result of Agent Chain
“””
return await model(prompt)
return lambdaFunc
async def mainCall(modes: list):
“””
Creates and invokes Main Chain asynchronously
“””
chainDic = {}
prmptDic = {}
for mode in modes:
model, prmpt = chainCall(mode)
chainDic[mode] = RunnableLambda(lambdaFuncGen(model, prmpt))
prmptDic[mode] = prmpt.format()
parallelChain = RunnableParallel(chainDic)
results = await parallelChain.ainvoke(“”)
return results
This code gives very idiotic responses. like “Yes, irrigation must be done. The soil moisture level is 97.5436% and heavy rain is predicted for the next few hours.” or “No, irrigation should not be done. The soil moisture level is 10% which is below required moisture level and the no rain is predicted.”. Out of 10 responses for same inputs only 2 or 3 comes out to be acceptable (sometimes all 10 go wrong).
But when a small prompt with all static duplicate data is passed to the llm through a simple LLMChain the response is very verbose making it feel like quite a general response but it has the correct answers within. Like every single time! ( Really sorry I’m unable to post this code snippet now, I will probably in a future edit or below in the thread as soon as I get access to it ).
My usecase cant be done statically in that simple format. What am I doing wrong here? Is it the prompt? Or Is it the approach? Or Is it the LLM model or its version? ( Then why did the simple prompt did the job :confused: ). It would be really appreciable if someone help me sort this issue out. I’m a rookie here ( both to community and gen ai ). Even small point outs in the right direction will mean a lot. Thanx!!!
I am using Azure OpenAI gpt-35-turbo with langchain’s chains and agents, runnable-parallel methods. The application is for an agricultural usecase (eg: prediction of whether to irrigate or not given the current conditions the crop is in). All sensor and weather inputs are apis. Below is the code snippet for llm call.”””
Vector DB
“””
db = Chroma(VECTOR_DB_COLLECTION_NAME, embedding_function=embeddings,
persist_directory=”./”+VECTOR_DB_COLLECTION_NAME)
printlg(“[-] Chroma Vector DB “+VECTOR_DB_COLLECTION_NAME+” Loaded”)
printDurFrom(st, “Chroma Loaded”, “lg”)
fs = LocalFileStore(“./”+VECTOR_DB_DOCSTORE_NAME)
store = create_kv_docstore(fs)
retriever = ParentDocumentRetriever(
vectorstore=db,
docstore=store,
child_splitter=child_splitter,
parent_splitter=parent_splitter
)
llm = AzureOpenAI(openai_api_key=return_chat_credentials()[“api-key”],
model_name=”gpt 3.5 turbo”, api_version=”2023-03-15-preview”, base_url=return_chat_credentials()[“api-url”], temperature=0.2)
“””
Tool Functions
“””
def soil_tool(input: str = “”):
“””
NPK-Moisture Extraction tool
“””
dat = fetch_last(“both”)
res = stringify(dat)
return res
def context_tool(input: str = “Best Practices for agriculture”):
“””
Vector Retrieval tool
“””
st = time.time()
context = “”
docs = retriever.invoke(input)
for doc in docs:
# Filter based on threshold score
context += doc.page_content + “n” + “—“*5 + “n”
printDurFrom(st, “Context Extracted”, ‘lg’)
return context
def weather_tool(loc: Literal[“<lat>,<long>”] = “,”):
“””
Weather Data Extraction tool
“””
st = time.time()
context = “”
lat, long = loc.split(“,”)
context = stringify(getRequiredWeatherData(lat, long), “weather”)
printDurFrom(st, “Weather API”, ‘lg’)
return “The Hourly and Daily Weather:n”+str(context)
“””
Tools
“””
context_agent = Tool(name=”Data Tool”,
description=”Use this tool to obtain agriculture related information like irrigation guidelines, fertilization guidelines, crop production guidelines and pest control mechanisms from agricultural books. Input to be passed is ‘<crop-name> <context-that-is-needed>’.”,
func=context_tool)
soil_agent = Tool(name=”Soil Tool”,
description=”Use this agent to get current soil condition data. Input should be ‘both’.”,
func=soil_tool)
weather_agent = Tool(name=”Weather Tool”,
description=”Use this agent to get current weather condition data. Input should be <lat>,<long>.”,
func=weather_tool)
def createAgent(agentName: Literal[“irrigation”, “pesticide”, “fertilization”], agentSpecificPromptPart: str):
“””
Creates KPI specific Agents
“””
st = time.time()
tools = [weather_agent, soil_agent, context_agent]
agent_chain = initialize_agent(
tools=tools, llm=llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=False, max_iterations=15, max_new_tokens=4000, handle_parsing_errors=True
)
printDurFrom(st, agentName.capitalize()+” Agent Initialized”, “lg”)
sysmsg = SystemMessage(content=”You are an Agricultural Assitant. You have access to tools that have all the contextual information and the live data like weather and soil nutrition values you need. Humans don’t have any knowledge about the tools you have access to and you dont have to tell them.”)
hummsg = HumanMessage(content=f”””
Here are the basic information about the crop i’ve sown and the agricultural land you need,
CropName: {Farmer.CROP_TYPE}
Variety: {Farmer.VARIETY}
SoilType: {Farmer.SOIL_TYPE}
Location: {Farmer.LOCATION}
Lat: {Farmer.LAT}
Long: {Farmer.LONG}
SownIn: {Farmer.SOWN_IN}
Phase: {Farmer.STAGE}
TodayDate: {datetime.now().strftime(“%d-%m-%Y”)} [dd-mm-yyyy]
{agentSpecificPromptPart}
Only answer to the given question with its short reason. Do not leave sentences incomplete.
“””)
prompt = ChatPromptTemplate.from_messages([
sysmsg,
hummsg,
])
ret = None
try:
ret = agent_chain.ainvoke, prompt
except:
print(“[!] Error in AgentChain”)
return ret
def chainCall(mode: Literal[“irrigation”, “pesticide”, “fertilization”]):
“””
Creates and returns the specific chains
“””
if mode == “irrigation”:
prmpt = “””
Consider “precipitationProbability” from weather tool and “moisture” from MoistureSensor of soil tool. And answer the following questions.
– Is this the right time to irrigate?
“””
return createAgent(mode, prmpt)
elif mode == “pesticide”:
prmpt = “””
Consider “precipitationProbability” and “windSpeed” from weather tool and “moisture” from MoistureSensor of soil tool. And answer the following questions.
– Is this the right time to spray pesticides?
– Which pesticide to use?
– How much to spray?
“””
return createAgent(mode, prmpt)
elif mode == “fertilization”:
prmpt = “””
Consider “precipitationProbability” and “windSpeed” from weather tool and “moisture” from MoistureSensor and “nitrogen”, “phosporous” and “potassium” from soilProbeSensor of soil tool. And answer the following questions.
– Is this the right time to spray fertilizer?
– Which fertilizer to use?
– How much to spray?
“””
return createAgent(mode, prmpt)
else:
raise ValueError(“Invalid ‘mode'”)
def lambdaFuncGen(model, prompt: str):
“””
Lambda Function Generator for Main Chain
“””
async def lambdaFunc(dummy: None):
“””
Lambda Function that returns result of Agent Chain
“””
return await model(prompt)
return lambdaFunc
async def mainCall(modes: list):
“””
Creates and invokes Main Chain asynchronously
“””
chainDic = {}
prmptDic = {}
for mode in modes:
model, prmpt = chainCall(mode)
chainDic[mode] = RunnableLambda(lambdaFuncGen(model, prmpt))
prmptDic[mode] = prmpt.format()
parallelChain = RunnableParallel(chainDic)
results = await parallelChain.ainvoke(“”)
return resultsThis code gives very idiotic responses. like “Yes, irrigation must be done. The soil moisture level is 97.5436% and heavy rain is predicted for the next few hours.” or “No, irrigation should not be done. The soil moisture level is 10% which is below required moisture level and the no rain is predicted.”. Out of 10 responses for same inputs only 2 or 3 comes out to be acceptable (sometimes all 10 go wrong).But when a small prompt with all static duplicate data is passed to the llm through a simple LLMChain the response is very verbose making it feel like quite a general response but it has the correct answers within. Like every single time! ( Really sorry I’m unable to post this code snippet now, I will probably in a future edit or below in the thread as soon as I get access to it ).My usecase cant be done statically in that simple format. What am I doing wrong here? Is it the prompt? Or Is it the approach? Or Is it the LLM model or its version? ( Then why did the simple prompt did the job :confused: ). It would be really appreciable if someone help me sort this issue out. I’m a rookie here ( both to community and gen ai ). Even small point outs in the right direction will mean a lot. Thanx!!! Read More
I want to see the top column so that it always shows at the top
How do I format the top column so that if I scroll down it always shows at the top?
How do I format the top column so that if I scroll down it always shows at the top? Read More
“Why Can’t I Write to NTFS Drives on Mac?”
Hello everyone, I have encountered a challenge and would appreciate your assistance. I own an external hard drive formatted as NTFS, which functions well on Windows systems. However, upon connecting it to my Mac, I am only able to access files without the ability to modify or write to them.
Upon inspecting the hard drive details using the Mac’s “Disk Utility,” it indicated a read-only status. Despite researching potential solutions online, none have proven effective. Could someone provide a detailed explanation as to why Mac systems are unable to write to NTFS hard drives? Additionally, I am seeking a straightforward method to enable me to use this hard drive seamlessly on my Mac for both reading and writing purposes.
I am grateful for any insights and assistance you can provide.
Hello everyone, I have encountered a challenge and would appreciate your assistance. I own an external hard drive formatted as NTFS, which functions well on Windows systems. However, upon connecting it to my Mac, I am only able to access files without the ability to modify or write to them. Upon inspecting the hard drive details using the Mac’s “Disk Utility,” it indicated a read-only status. Despite researching potential solutions online, none have proven effective. Could someone provide a detailed explanation as to why Mac systems are unable to write to NTFS hard drives? Additionally, I am seeking a straightforward method to enable me to use this hard drive seamlessly on my Mac for both reading and writing purposes. I am grateful for any insights and assistance you can provide. Read More
Turn Off Sign In
Hello everyone, I’ve disabled the laptop login feature, yet upon waking from sleep mode, the screen shown here appears. I simply need to hit the “sign in” button to bypass the password and access the laptop. However, this process has become bothersome. My preference is for the laptop to wake from sleep directly to the desktop, all set for immediate use. Appreciate any assistance in this matter.
Hello everyone, I’ve disabled the laptop login feature, yet upon waking from sleep mode, the screen shown here appears. I simply need to hit the “sign in” button to bypass the password and access the laptop. However, this process has become bothersome. My preference is for the laptop to wake from sleep directly to the desktop, all set for immediate use. Appreciate any assistance in this matter. Read More
Change Where Downloads are Saved
I am currently in the process of familiarizing myself with Windows 11, so I kindly ask for your patience. I recently watched an online tutorial that guided me on modifying the default download locations. Although I set my downloads to go to the Desktop, I am still encountering difficulties locating them. It can be quite frustrating when you download something and then frantically search for it, leading to phrases like “where did that go?” Perhaps my reaction isn’t exactly like that, but frustration tends to bring out my expressive side, especially as I get older. Any advice or assistance in this matter would be greatly appreciated. Thank you, Dave.
I am currently in the process of familiarizing myself with Windows 11, so I kindly ask for your patience. I recently watched an online tutorial that guided me on modifying the default download locations. Although I set my downloads to go to the Desktop, I am still encountering difficulties locating them. It can be quite frustrating when you download something and then frantically search for it, leading to phrases like “where did that go?” Perhaps my reaction isn’t exactly like that, but frustration tends to bring out my expressive side, especially as I get older. Any advice or assistance in this matter would be greatly appreciated. Thank you, Dave. Read More