community
56 Topics**A Machine Learning Framework for PowerShell** *Focus: Neural Networks & Reinforcement Learning*
Hi PowerShell Community! π I'm excited to share something I've been building that I believe fills a gap in our ecosystem: **VBAF (Visual Business Automation Framework) - A PowerShell Machine Learning Framework**. This is the first reinforcement learning and neural network framework implemented entirely in PowerShell, designed specifically for IT professionals, automation engineers, and scripters who want to explore ML concepts without leaving PowerShell. ## π― **Why PowerShell for Machine Learning?** PowerShell is installed on every Windows machine and is the automation backbone for millions of IT professionals. But until now, we've never had: - A native neural network engine - A reinforcement learning framework - Multi-agent simulation capabilities - Real-time ML visualization dashboards **VBAF changes that.** ## π§ **What's Included:** **Neural Networks:** - Multi-layer perceptrons from scratch - Multiple activation functions (Sigmoid, ReLU, Tanh) - Backpropagation with convergence tracking - Training loops and performance metrics **Reinforcement Learning:** - Q-learning with epsilon-greedy exploration - Experience replay buffer - Reward shaping and policy optimization - Multi-agent environments **Business Automation:** - Company competition simulation - Market dynamics modeling - Resource optimization scenarios - Emergent agent behaviors **Visualization:** - Real-time training dashboards (WinForms) - Learning curve visualization - Network activation displays - 20-30 FPS performance ## π» **Quick Start:** ```powershell # Install from PowerShell Gallery Install-Module VBAF -Scope CurrentUser Import-Module VBAF # Train your first neural network (XOR problem) $network = New-VBAFNeuralNetwork -Architecture @(2,3,1) -LearningRate 0.1 $network.Train($xorData, 1000) $network.Predict(@(1,0)) # Create a Q-learning agent $agent = New-VBAFAgent -StateSize 10 -ActionCount 4 $agent.Learn($state, $action, $reward, $nextState) ``` ## π **Built for Learning:** VBAF is designed with transparency in mind. Unlike TensorFlow or PyTorch, you can: - Read every line of the implementation - Understand exactly how backpropagation works - See Q-learning updates in real-time - Modify algorithms to experiment Perfect for: - Teaching ML concepts to IT professionals - Understanding AI fundamentals - Building automation that learns and adapts - Prototyping RL solutions in familiar syntax ## π **Real-World Applications:** **IT Operations:** - Predictive server maintenance - Intelligent resource allocation - Log anomaly detection **Business Intelligence:** - Customer churn prediction - Inventory optimization - Dynamic pricing models **Process Automation:** - Adaptive helpdesk routing - Email prioritization by business impact - Workflow optimization ## π **Links:** - **GitHub:** https://github.com/JupyterPS/VBAF - **PowerShell Gallery:** `Install-Module VBAF` - **Documentation:** Included in module (`Get-VBAFExamples`) ## π€ **Community Collaboration:** This is a community project, and I'd love your feedback! Areas open for contribution: - Additional RL algorithms (PPO, A3C, DQN) - Performance optimizations - New business simulation scenarios - Documentation and tutorials - Visualization enhancements ## π **Why I Built This:** As an educator, I saw students struggle with Python ML examples. They wanted to understand AI concepts in the language they use daily - PowerShell. VBAF bridges that gap. PowerShell has always been about pushing boundaries and empowering IT professionals. I hope this framework becomes a useful tool for learning, experimentation, and building automation that adapts. **What do you think? What would YOU build with a PowerShell ML framework?** Looking forward to your feedback and ideas! #PowerShell #MachineLearning #Automation #ReinforcementLearning58Views0likes0CommentsHow to disable automatic updates in Debug Diagnostics 2.1 using PowerShell
Greetings all. I am writing a PowerShell script to do an unattended install of Debug Diagnostics Tool version 2.2.0.14. The installer is an x64 .msi. The unattended install works fine, but I am unable to find the correct switch/command to disable automatic updates for the tool. Here is the latest code I tried: Execute-MSI -Action 'Install' -Path "<filepath>\DebugDiagx64.msi" -Parameters "/qn /norestart ALLUSERS=2 DISABLE_AUTOUPDATES=1" Other switches I have tried for disabling updates includes DISABLE_UPDATES=1, UPDATES=0 and UPDATES=FALSE. None of these work. Updates can be disabled manually through the Options & Settings GUI. Screenshots for this are attached. I really need a way to disable the automatic updates through PowerShell during an unattended installation. Thanks.161Views0likes1CommentSecure Way to store lots of credentials using powershell
Dear Community I wanted to ask if there is any way I can store lots of creedentials while still being able to use them in Powershell? I dont want to enter anything in a popup window, because there are way to many credentials to to that by hand. Is it possible that I can just put them in some kind of file and then get the wanted informations (while the file or its contents are somehow encrypted)? Thanks in advance MartinSolved22KViews0likes6CommentsDoes Microsoft stop support WMIC or WMI?
Hello everyone, Nice to meet you! I heard that MS has plans to deprecate and stop supporting the VB script very soon. I have few queries, please clarify Does Microsoft stop supporting WMIC or WMI along with the VB script? Can we use WMI commands in PowerShell scripts? thanks Madhu158Views0likes1CommentI'm unable to execute powershell command in SharePoint
When I execute the PowerShell command, I get a sign-in error. I have tested this in a couple of SharePoint tenants, but I'm unable to run the script. Also, previously, these scripts were working fine. Unable to execute the "Connect-PnPOnline" command. Please someone help with this.459Views0likes2CommentsHow to grant permissions on behalf of the organization Script
Hello everyone! We generated a necessary Script to create a Principal API/APP/Service in Entra ID, and assign some delegated and application permissions. However, I need to consent to these permissions on behalf of the organization, during the Script itself. I have tried several times, in different ways, but all without success. Does anyone know how this can be done? If it can be done? And could you help me with this? Thank you all. Best regards521Views0likes1CommentError - Connect-ExchangeOnline Error Acquiring Token: System.Net.Http.HttpRequestException
Error Connect-ExchangeOnline Error Acquiring Token: System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Remote name could not be resolved: 'server.proxy.local'961Views0likes1CommentPS script for uploading files to Sharepoint Online
Hello friends... This process of uploading files from some local storage to Sharepoint Online seems to be the simplest to be carried out via Powershell Script... However, a command/routine in which the password is posted clearly, in plain text, is not " should be" permanent. Do you have any alternative to this? #Copia Arquivos para o Sharepoint Site $FILESP = (Get-ChildItem .\$EXECFOLDER\ -File | Sort-Object LastWriteTime -Descending| Select-Object -First 3).Name foreach ($FILESP in $FILESP) { Write-Host "Arquivo .......... " -NoNewline Write-Host "" $FILESP -foregroundcolor Yellow -NoNewline Write-Host " foi carregado/enviado com Γͺxito!!!" Write-Host "" $WebUrl = "https://organizacao.sharepoint.com/sites/name-site" $LibraryName ="library" $SourceFile=".\$EXECFOLDER\$FILESP" $AdminName ="my-name@domain" $AdminPassword = "my password" #$Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($AdminName,(ConvertTo-SecureString $AdminPassword -AsPlainText -Force)) $Credential = new-object System.Management.Automation.PSCredential $AdminName, $AdminPassword $Context = New-Object Microsoft.SharePoint.Client.ClientContext($WebUrl) $Context.Credentials = $Credentials $Library = $Context.Web.Lists.GetByTitle($LibraryName) $FileStream = ([System.IO.FileInfo] (Get-Item $SourceFile)).OpenRead() $SourceFileName = Split-path $SourceFile -leaf $FileCreationInfo = New-Object Microsoft.SharePoint.Client.FileCreationInformation $FileCreationInfo.Overwrite = $true $FileCreationInfo.ContentStream = $FileStream $FileCreationInfo.URL = $SourceFileName $FileUploaded = $Library.RootFolder.Files.Add($FileCreationInfo) $Context.Load($FileUploaded) $Context.ExecuteQuery() $FileStream.Close() #Write-Host "" } Contextualizing: A routine/script executes locally, generates some files that must be placed on a website, in a library, on Sharepoint Online Well, I believe this can shed some light470Views0likes0CommentsPowershell Environment Variable NULL - No repository named PSGallery
I have an SSIS package that runs as a specific user. It calls a Powershell script and it used to work. We rebooted the server and now we get the following error complaining about $env:LOCALAPPDATA being NULL. PS>TerminatingError(Join-Path): "Cannot bind argument to parameter 'Path' because it is null." Join-Path : Cannot bind argument to parameter 'Path' because it is null. At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\2.2.4\PSModule.psm1:95 char:81 + ... osoft.PowerShell.Management\Join-Path -Path $env:LOCALAPPDATA -ChildP ... + ~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidData: (:) [Join-Path], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCommand The variable '$script:PSGetAppLocalPath' cannot be retrieved because it has not been set. At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\2.2.4\PSModule.psm1:102 char:86 + ... werShell.Management\Join-Path -Path $script:PSGetAppLocalPath -ChildP ... We also get the following message: Set-PSRepository : No repository with the name 'PSGallery' was found. If the user the SSIS packages runs as, is logged onto the server, the SSIS package works just fine. If I log out and re-schedule the package, it fails again.1.2KViews0likes1CommentPowerShell support on Linux
I am trying to invoke Powershell 7.4 on Linux RHEL8 through a java program and submitting commands and reading output using streams. As soon as the powershell starts , the inputstream is reading some unknown characters from the powershell output for e.g. '[?1h' and '[?1l'. I need a way such that I don't read these characters. I tried setting the encoding in the input stream to UTF-8, but that didn't solve the problem. Would really appreciate if someone could provide some inputs on this.613Views0likes2Comments