Friday, July 4, 2025

๐Ÿง  Steps to Build a POC Locally with Windows AI Foundry

 ๐Ÿš€ Introduction

What is Foundry Local?

Foundry Local brings the power and trust of Azure AI Foundry to your device. It includes everything you need to run AI apps locally.

As AI adoption grows, developers are increasingly looking for ways to build intelligent applications that run efficiently on local machines. Windows AI Foundry, especially its Foundry Local feature, enables developers to create AI-powered Proof of Concepts (POCs) without relying on cloud infrastructure or Azure subscriptions. This article walks you through the step-by-step process of building a POC locally using Windows AI Foundry—and addresses common challenges along the way.


๐Ÿงฐ Prerequisites

Before you begin, ensure you have:

  • A Windows 11 machine with sufficient CPU/GPU/NPU resources.
  • Internet access (for initial setup and model downloads).
  • Familiarity with command-line tools and programming (Python, C#, or JavaScript).
  • Installed tools:
    • Foundry CLI
    • Foundry Local SDK
    • ONNX Runtime (optional)

๐Ÿ› ️ Step-by-Step Guide

Step 1: Install Foundry CLI and SDK

Install the Foundry CLI:

winget install FoundryCLI

Install the SDK for your preferred language (e.g., Python):

pip install foundry-sdk

Step 2: Choose and Download a Model

Foundry Local supports several optimized models:

  • Phi-4 Reasoning
  • Mistral
  • Qwen 2.5 Instruct
  • DeepSeek R1

Download a model:

foundry models download phi-4

Step 3: Run Inference Locally

Run inference directly from the CLI:

foundry model run phi-4 --input "Explain quantum computing in simple terms."

Step 4: Build Your Application

Example using Python:

from foundry import FoundryModel

model = FoundryModel("phi-4")

response = model.run("What is the capital of Karnataka?")

print(response)

Step 5: Test and Iterate

Test your application with different inputs. Monitor performance and refine prompts or model selection as needed.


⚠️ Common Challenges and Solutions

If winget is blocked by organization policies, try this:

๐Ÿ” Manual Installation

  1. Visit the official Foundry Local page:
    Windows AI Foundry Dev Blog
  2. Download the Foundry Local Installer (MSI or EXE).
  3. Run the installer as Administrator.
  4. Follow the prompts to complete installation.

๐Ÿงช Verify Installation

Open Command Prompt and run:

foundry --version

๐Ÿค– List Available Models

foundry model list

This will show models like:

  • phi-3.5-mini
  • phi-4
  • mistral-7b
  • qwen-2.5
  • deepseek-r1

ChallengeDescriptionSolution
Hardware LimitationsSome models require significant memory or GPU/NPU support.Use lightweight models like Phi-4 or quantized ONNX versions.
Model CompatibilityNot all models are optimized for local inference.Stick to models officially supported by Foundry Local or convert models to ONNX format.
Latency IssuesInference may be slow on older machines.Use smaller models or optimize with ONNX Runtime and hardware acceleration.
Limited DocumentationFoundry Local is relatively new, so community support is still growing.Refer to the official Foundry blog and GitHub issues for guidance.
Integration ComplexityIntegrating AI into existing apps can be tricky.Use SDKs and sample code provided by Microsoft to speed up development.

๐Ÿ“ˆ Use Cases for Local POCs

  • Customer Support Bots
  • Offline Educational Tools
  • Secure Enterprise Assistants
  • Healthcare Decision Support (with local data)


To run Windows AI Foundry (Foundry Local) effectively on your Tata Communications machine, here are the minimum and recommended hardware requirements for CPU, GPU, and NPU:

✅ Minimum Requirements

These are sufficient for basic model inference (e.g., small models like Phi-3.5-mini):

  • Operating System: Windows 10 (x64), Windows 11 (x64/ARM), or Windows Server 2025
  • CPU: Any modern x64 processor (Intel i5/Ryzen 5 or better)
  • RAM: 8 GB
  • Disk Space: 3 GB free
  • Acceleration (Optional): None required—CPU-only inference is supported 

๐ŸŒŸ Recommended Requirements

For smoother performance and support for larger models:

  • CPU: Intel i7/Ryzen 7 or better
  • RAM: 16 GB or more
  • Disk Space: 15–20 GB free (for model caching)
  • GPU:
    • NVIDIA: RTX 2000 series or newer
    • AMD: Radeon 6000 series or newer
  • NPU:
    • Qualcomm Snapdragon X Elite (with 8 GB or more VRAM)
    • Apple Silicon (for macOS users)

Foundry Local automatically detects your hardware and downloads the most optimized model variant (CPU, GPU, or NPU) accordingly

๐Ÿงฉ Conclusion

Windows AI Foundry’s local capabilities make it easier than ever to build powerful, privacy-preserving AI applications without cloud dependencies. By understanding the setup process and proactively addressing common challenges, developers can rapidly prototype and deploy intelligent solutions on Windows devices.

https://github.com/microsoft/Foundry-Local/blob/main/docs/README.md

https://learn.microsoft.com/en-us/azure/ai-foundry/foundry-local/get-started

https://learn.microsoft.com/en-us/azure/ai-foundry/foundry-local/reference/reference-cli


Link: Get started with Azure AI Foundry
https://learn.microsoft.com/en-us/azure/ai-foundry/quickstarts/get-started-code?tabs=azure-ai-foundry&pivots=fdp-project

๐Ÿง  Sample Use Cases for Foundry Local + Phi-4

1. Offline Customer Support Assistant

  • Scenario: A local chatbot that helps employees or customers with FAQs.
  • Why Local?: No internet dependency; ideal for secure environments.
  • Example Prompt: “How do I reset my company email password?”

2. Internal Knowledge Search Tool

  • Scenario: Search and summarize internal documents or policies.
  • Why Local?: Keeps sensitive data on-device.
  • Example Prompt: “Summarize the leave policy from this PDF.”

3. Educational Tutor App

  • Scenario: A desktop app that helps students learn topics interactively.
  • Why Local?: Works in low-connectivity areas like rural schools.
  • Example Prompt: “Explain Newton’s laws with examples.”

4. Healthcare Assistant (Private Clinics)

  • Scenario: Helps doctors or staff with medical terminology or patient instructions.
  • Why Local?: Ensures patient data privacy.
  • Example Prompt: “What are the symptoms of dengue?”

5. Coding Helper for Developers

  • Scenario: Local assistant that helps write or debug code.
  • Why Local?: No need to send code snippets to the cloud.
  • Example Prompt: “Write a Python function to sort a list of dictionaries by age.”

6. Legal Document Analyzer

  • Scenario: Summarizes or explains legal clauses from contracts.
  • Why Local?: Keeps sensitive legal data secure.
  • Example Prompt: “Summarize clause 4.2 of this agreement.”

7. Multilingual Translator

  • Scenario: Translate local language documents or messages.
  • Why Local?: Works offline and avoids sending data to external servers.
  • Example Prompt: “Translate this Kannada sentence to English.”

Monitoring CrowdStrike Falcon Sensor on Linux and Windows Servers

 CrowdStrike Falcon is a leading endpoint protection solution used across enterprise environments to detect and respond to threats in real time. Ensuring that the Falcon Sensor is active and functioning on both Linux and Windows servers is essential for maintaining a secure infrastructure.


Why Sensor Monitoring Matters

The Falcon Sensor is the agent that communicates with CrowdStrike’s cloud-based platform. If the sensor is inactive, misconfigured, or not installed, the server may be exposed to threats and lack visibility in the CrowdStrike dashboard.


Checking Sensor Status on Linux Servers

Method 1: Using Falcon Control Tool

CrowdStrike provides a command-line utility called falconctl:

sudo /opt/CrowdStrike/falconctl -g --status

his command displays the sensor’s configuration and operational status, including registration and connectivity.

Method 2: Using systemd

sudo systemctl status falcon-sensor

Expected output:

● falcon-sensor.service - CrowdStrike Falcon Sensor
   Loaded: loaded (/etc/systemd/system/falcon-sensor.service; enabled)
   Active: active (running) since ...

To start or enable the service:

sudo systemctl start falcon-sensor

sudo systemctl enable falcon-sensor

Checking Sensor Status on Windows Servers

Method 1: Using PowerShell

Run the following command:

Get-Service -Name CSFalconSensor

Expected output:

Status   Name               DisplayName
------   ----               -----------
Running  CSFalconSensor     CrowdStrike Falcon Sensor

Method 2: Listing All Services

If the above command throws an error, list all services and search manually:

Get-Service

Look for:

Running  CSFalconSensor     CrowdStrike Falcon Sensor

If the service is not running, you can start it with:

Start-Service -Name CSFalconSensor


Troubleshooting Tips

  • Sensor Not Found: Ensure the sensor is installed in the correct directory (/opt/CrowdStrike/ on Linux or listed in services on Windows).
  • Service Fails to Start: Check logs (journalctl -u falcon-sensor on Linux or Event Viewer on Windows).
  • Connectivity Issues: Use falconctl or check CrowdStrike dashboard for registration status.

Conclusion

Regular monitoring of the CrowdStrike Falcon Sensor across both Linux and Windows servers is a vital part of maintaining endpoint security. These simple checks help ensure that your systems are protected and visible in the CrowdStrike console.


๐Ÿ—‚️ Migrating Files from SharePoint Online to OneDrive: Methods, Challenges & Solutions

Migrating files from SharePoint Online to OneDrive for Business is a common task for IT teams aiming to streamline collaboration, reorganize data, or decommission legacy sites. While the process can be straightforward with the right tools, it also presents several challenges that require careful planning and execution.


๐Ÿšš Migration Methods

1. SharePoint Migration Tool (SPMT)

  • Best for: Structured, bulk migrations.
  • Pros: Retains metadata, supports folder/site-level migration, provides logs.
  • Cons: Requires setup and may need scripting for complex scenarios.

2. OneDrive Sync App

  • Best for: Small-scale or manual migrations.
  • Pros: Easy to use, no special setup.
  • Cons: Not scalable, no metadata retention.

3. PowerShell Automation

  • Best for: Custom, automated migrations.
  • Pros: Highly flexible, supports scripting and scheduling.
  • Cons: Requires technical expertise.

4. Manual Download & Upload

  • Best for: Very small migrations.
  • Pros: Simple and direct.
  • Cons: Time-consuming, risk of data loss.

5. Third-Party Tools

  • Best for: Enterprise-grade migrations.
  • Pros: Advanced features, granular control, support for hybrid environments.
  • Cons: Licensing costs, learning curve.

⚠️ Common Challenges & ✅ Solutions

๐Ÿ”„ Challenge 1: Volume of Data (e.g., 1TB+)

  • Problem: Large migrations can be slow and error prone.
  • Solution: Use SPMT or third-party tools with throttling and retry mechanisms. Break migration into department-wise batches.

๐Ÿงฉ Challenge 2: Folder Structure Preservation

  • Problem: Losing hierarchy during migration can confuse users.
  • Solution: Pre-create folder structures in OneDrive using PowerShell or manually. Map SharePoint folders to OneDrive destinations in SPMT.

๐Ÿ” Challenge 3: Permissions and Access

  • Problem: OneDrive is personal; SharePoint is collaborative.
  • Solution: Use shared folders or Microsoft 365 Groups. Post-migration, assign access manually or via scripts.

๐Ÿ“„ Challenge 4: Metadata Loss

  • Problem: Manual methods don’t retain metadata (created by, modified date, etc.).
  • Solution: Use SPMT or third-party tools that preserve metadata during migration.

๐Ÿงช Challenge 5: File Integrity Verification

  • Problem: Files may be corrupted or incomplete.
  • Solution: Use SPMT logs, checksum tools, or spot-check files. Maintain a migration checklist.

๐Ÿ‘ฅ Challenge 6: User Confusion Post-Migration

  • Problem: Users may not know where files are or how to share them.
  • Solution: Conduct training sessions, provide documentation, and set up support channels.

๐Ÿ—‘️ Challenge 7: Decommissioning Old SharePoint Sites

  • Problem: Risk of deleting active or needed content.
  • Solution: Archive sites before deletion. Confirm with stakeholders and maintain backups.

✅ Post-Migration Checklist

  • ๐Ÿ” Verify file integrity and completeness.
  • ๐Ÿ” Review and assign permissions.
  • ๐Ÿ“˜ Train users on OneDrive usage and sharing.
  • ๐Ÿ—‘️ Archive or decommission old SharePoint sites.

๐Ÿ“Œ Final Thoughts

Migrating from SharePoint to OneDrive is more than just moving files—it’s about ensuring continuity, usability, and security. By understanding the challenges and applying the right solutions, organizations can achieve a smooth transition that empowers users and improves collaboration.

Friday, June 6, 2025

๐Ÿข Monitoring and Optimizing Microsoft 365 SharePoint Sites for Efficiency and Governance

 

๐Ÿ“Œ Introduction

As organizations increasingly rely on Microsoft 365 for collaboration and content management, SharePoint Online has become a central hub for storing documents, managing projects, and enabling teamwork. However, over time, the proliferation of sites and subsites can lead to inefficiencies, storage bloat, and governance challenges. Identifying inactive or underutilized sites is essential for maintaining a healthy digital workspace.

This article outlines a practical approach to auditing SharePoint Online environments, retrieving comprehensive site data, and presenting actionable insights to leadership.


๐Ÿ” Why Monitor SharePoint Site Activity?

  1. Optimize Storage Costs: Unused sites consume valuable storage, which can lead to additional licensing costs.
  2. Improve Performance: Reducing clutter enhances search performance and user experience.
  3. Strengthen Governance: Identifying orphaned or outdated sites helps enforce compliance and security policies.
  4. Support Decision-Making: Data-driven insights empower IT and business leaders to make informed decisions about site lifecycle management.

๐Ÿ› ️ How to Retrieve Site Data

Using PowerShell and Microsoft Graph API, IT administrators can extract detailed information about:

  • Site Collections and Subsites
  • Last Modified Dates
  • Storage Usage
  • Site Owners
  • Activity Metrics

A sample PowerShell script can automate this process, exporting the data into a CSV file for further analysis.

Here’s a PowerShell code snippet that retrieves comprehensive details of all SharePoint Online site collections and their subsites, including usage statistics and last modified dates. This is ideal for identifying inactive or underutilized sites:


# Connect to SharePoint Online Admin Center
Connect-SPOService -Url "https://yourtenant-admin.sharepoint.com"

# Get all site collections

$sites = Get-SPOSite -Limit All

# Prepare array to store site data

$siteData = @()

foreach ($site in $sites) {

    $siteUrl = $site.Url
    $lastModified = $site.LastContentModifiedDate
    $storageUsage = $site.StorageUsageCurrent
    $owner = $site.Owner

    # Connect to each site using PnP PowerShell

    Connect-PnPOnline -Url $siteUrl -Interactive

    # Get subsites

    $subsites = Get-PnPSubWeb -Recurse

    foreach ($subsite in $subsites) {

        $siteData += [PSCustomObject]@{
            SiteCollection = $siteUrl
            Subsite        = $subsite.Url
            Title          = $subsite.Title
            LastModified   = $subsite.LastItemModifiedDate
            StorageUsageMB = $storageUsage
            Owner          = $owner
        }
    }

    # Add root site info

    $siteData += [PSCustomObject]@{
        SiteCollection = $siteUrl
        Subsite        = $siteUrl
        Title          = $site.Title
        LastModified   = $lastModified
        StorageUsageMB = $storageUsage
        Owner          = $owner
    }
}

# Export to CSV

$siteData | Export-Csv -Path "M365_Site_Report.csv" -NoTypeInformation

๐Ÿ“Š Visualizing the Data

Once the data is collected, it can be transformed into a compelling report or dashboard using tools like:

  • Power BI: Create interactive dashboards with filters for site activity, storage usage, and ownership.
  • Excel: Use pivot tables and conditional formatting to highlight inactive or high-usage sites.

Key visuals might include:

  • Bar Charts: Top 10 sites by storage usage
  • Heat Maps: Sites not modified in the last 6–12 months
  • Pie Charts: Distribution of active vs inactive sites

✅ Recommendations for IT Teams

  • Establish Site Lifecycle Policies: Define rules for archiving or deleting inactive sites.
  • Automate Regular Audits: Schedule scripts to run monthly or quarterly.
  • Engage Site Owners: Notify owners of inactivity and provide options for cleanup or archiving.
  • Integrate with Governance Tools: Use Microsoft Purview or third-party tools for enhanced compliance tracking.

๐Ÿ“ˆ Conclusion

Proactive monitoring of SharePoint Online sites is not just a technical necessity—it’s a strategic imperative. By leveraging automation and visualization, IT teams can provide leadership with the insights needed to streamline operations, reduce costs, and maintain a secure and efficient digital workplace.

๐Ÿง  Steps to Build a POC Locally with Windows AI Foundry

  ๐Ÿš€ Introduction What is Foundry Local? Foundry Local brings the power and trust of Azure AI Foundry to your device. It includes everything...