Close Menu
    Trending
    • Credit Risk Scoring for BNPL Customers at Bati Bank | by Sumeya sirmula | Jul, 2025
    • The New Career Crisis: AI Is Breaking the Entry-Level Path for Gen Z
    • Musk’s X appoints ‘king of virality’ in bid to boost growth
    • Why Entrepreneurs Should Stop Obsessing Over Growth
    • Implementing IBCS rules in Power BI
    • What comes next for AI copyright lawsuits?
    • Why PDF Extraction Still Feels LikeHack
    • GenAI Will Fuel People’s Jobs, Not Replace Them. Here’s Why
    AIBS News
    • Home
    • Artificial Intelligence
    • Machine Learning
    • AI Technology
    • Data Science
    • More
      • Technology
      • Business
    AIBS News
    Home»AI Technology»One-Click LLM Bash Helper
    AI Technology

    One-Click LLM Bash Helper

    Team_AIBS NewsBy Team_AIBS NewsDecember 13, 2024No Comments12 Mins Read
    Share Facebook Twitter Pinterest LinkedIn Tumblr Reddit Telegram Email
    Share
    Facebook Twitter LinkedIn Pinterest Email





    What are LLMs?

    A Massive Language Mannequin (LLM) is a sophisticated AI system designed to carry out complicated pure language processing (NLP) duties like textual content era, summarization, translation, and extra. At its core, an LLM is constructed on a deep neural community structure often known as a transformer, which excels at capturing the intricate patterns and relationships in language. Among the widely known LLMs embrace ChatGPT by OpenAI, LLaMa by Meta, Claude by Anthropic, Mistral by Mistral AI, Gemini by Google and much more. 

    The Energy of LLMs in At present’s Technology:

    1. Understanding Human Language: LLMs have the power to know complicated queries, analyze context, and reply in ways in which sound human-like and nuanced.
    2. Data Integration Throughout Domains: Attributable to coaching on huge, numerous information sources, LLMs can present insights throughout fields from science to artistic writing.
    3. Adaptability and Creativity: Some of the thrilling features of LLMs is their adaptability. They’re able to producing tales, writing poetry, fixing puzzles, and even holding philosophical discussions. 

    Downside-Fixing Potential: LLMs can deal with reasoning duties by figuring out patterns, making inferences, and fixing logical issues, demonstrating their functionality in supporting complicated, structured thought processes and decision-making.

    For builders trying to streamline doc workflows utilizing AI, instruments just like the Nanonets PDF AI provide worthwhile integration choices. Coupled with Ministral’s capabilities, these can considerably improve duties like doc extraction, making certain environment friendly information dealing with. Moreover, instruments like Nanonets’ PDF Summarizer can additional automate processes by summarizing prolonged paperwork, aligning effectively with Ministral’s privacy-first functions.

    Automating Day-to-Day Duties with LLMs:

    LLMs can remodel the way in which we deal with on a regular basis duties, driving effectivity and liberating up worthwhile time. Listed here are some key functions:

    • Electronic mail Composition: Generate personalised electronic mail drafts shortly, saving time and sustaining skilled tone.
    • Report Summarization: Condense prolonged paperwork and stories into concise summaries, highlighting key factors for fast evaluate.
    • Buyer Help Chatbots: Implement LLM-powered chatbots that may resolve widespread points, course of returns, and supply product suggestions based mostly on consumer inquiries.
    • Content material Ideation: Help in brainstorming and producing artistic content material concepts for blogs, articles, or advertising and marketing campaigns.
    • Knowledge Evaluation: Automate the evaluation of knowledge units, producing insights and visualizations with out handbook enter.
    • Social Media Administration: Craft and schedule partaking posts, work together with feedback, and analyze engagement metrics to refine content material technique.
    • Language Translation: Present real-time translation providers to facilitate communication throughout language obstacles, ideally suited for world groups.

    To additional improve the capabilities of LLMs, we will leverage Retrieval-Augmented Technology (RAG). This strategy permits LLMs to entry and incorporate real-time info from exterior sources, enriching their responses with up-to-date, contextually related information for extra knowledgeable decision-making and deeper insights.

    One-Click on LLM Bash Helper

    We are going to discover an thrilling technique to make the most of LLMs by growing an actual time utility referred to as One-Click on LLM Bash Helper. This device makes use of a LLM to simplify bash terminal utilization. Simply describe what you need to do in plain language, and it’ll generate the proper bash command for you immediately. Whether or not you are a newbie or an skilled consumer in search of fast options, this device saves time and removes the guesswork, making command-line duties extra accessible than ever! 

    The way it works:

    1. Open the Bash Terminal: Begin by opening your Linux terminal the place you need to execute the command.
    1. Describe the Command: Write a transparent and concise description of the duty you need to carry out within the terminal. For instance, “Create a file named abc.txt on this listing.”
    1. Choose the Textual content: Spotlight the duty description you simply wrote within the terminal to make sure it may be processed by the device.
    1. Press Set off Key: Hit the F6 key in your keyboard as default (will be modified as wanted). This triggers the method, the place the duty description is copied, processed by the device, and despatched to the LLM for command era.
    1. Get and Execute the Command: The LLM processes the outline, generates the corresponding Linux command, and pastes it into the terminal. The command is then executed mechanically, and the outcomes are displayed so that you can see.

    Construct On Your Personal

    For the reason that One-Click on LLM Bash Helper might be interacting with textual content in a terminal of the system, it is important to run the applying domestically on the machine. This requirement arises from the necessity to entry the clipboard and seize key presses throughout completely different functions, which isn’t supported in on-line environments like Google Colab or Kaggle.

    To implement the One-Click on LLM Bash Helper, we’ll have to arrange just a few libraries and dependencies that can allow the performance outlined within the course of. It’s best to arrange a brand new setting after which set up the dependencies. 

    Steps to Create a New Conda Atmosphere and Set up Dependencies

    1. Open your terminal
    2. Create a brand new Conda setting. You possibly can identify the setting (e.g., llm_translation) and specify the Python model you need to use (e.g., Python 3.9):
    conda create -n bash_helper python=3.9
    
    1. Activate the brand new setting:
    conda activate bash_helper
    1. Set up the required libraries: 
    • Ollama: It’s an open-source undertaking that serves as a robust and user-friendly platform for operating LLMs in your native machine. It acts as a bridge between the complexities of LLM expertise and the will for an accessible and customizable AI expertise. Set up ollama by following the directions at https://github.com/ollama/ollama/blob/main/docs/linux.md and in addition run:
    pip set up ollama
    • To begin ollama and set up LLaMa 3.1 8B as our LLM (one can use different fashions) utilizing ollama, run the next instructions after ollama is put in:
    ollama serve

    Run this in a background terminal. After which execute the next code to put in the llama3.1 utilizing ollama:

    ollama run llama3.1

    Listed here are a few of the LLMs that Ollama helps – one can select based mostly on their necessities

    Mannequin Parameters Dimension Obtain
    Llama 3.2 3B 2.0GB ollama run llama3.2
    Llama 3.2 1B 1.3GB ollama run llama3.2:1b
    Llama 3.1 8B 4.7GB ollama run llama3.1
    Llama 3.1 70B 40GB ollama run llama3.1:70b
    Llama 3.1 405B 231GB ollama run llama3.1:405b
    Phi 3 Mini 3.8B 2.3GB ollama run phi3
    Phi 3 Medium 14B 7.9GB ollama run phi3:medium
    Gemma 2 2B 1.6GB ollama run gemma2:2b
    Gemma 2 9B 5.5GB ollama run gemma2
    Gemma 2 27B 16GB ollama run gemma2:27b
    Mistral 7B 4.1GB ollama run mistral
    Moondream 2 1.4B 829MB ollama run moondream2
    Neural Chat 7B 4.1GB ollama run neural-chat
    Starling 7B 4.1GB ollama run starling-lm
    Code Llama 7B 3.8GB ollama run codellama
    Llama 2 Uncensored 7B 3.8GB ollama run llama2-uncensored
    LLAVA 7B 4.5GB ollama run llava
    Photo voltaic 10.7B 6.1GB ollama run photo voltaic

    • Pyperclip: It’s a Python library designed for cross-platform clipboard manipulation. It permits you to programmatically copy and paste textual content to and from the clipboard, making it simple to handle textual content choices.
    pip set up pyperclip
    • Pynput: Pynput is a Python library that gives a technique to monitor and management enter gadgets, akin to keyboards and mice. It permits you to pay attention for particular key presses and execute features in response. 
    pip set up pynput

    Code sections:

    Create a python file “helper.py” the place all the next code might be added:

    1. Importing the Required Libraries: Within the helper.py file, begin by importing the mandatory libraries:
    import pyperclip
    import subprocess
    import threading
    import ollama
    from pynput import keyboard
    1. Defining the CommandAssistant Class: The CommandAssistant class is the core of the applying. When initialized, it begins a keyboard listener utilizing pynput to detect keypresses. The listener constantly screens for the F6 key, which serves because the set off for the assistant to course of a job description. This setup ensures the applying runs passively within the background till activated by the consumer.
    class CommandAssistant:
        def __init__(self):
            # Begin listening for key occasions
            self.listener = keyboard.Listener(on_press=self.on_key_press)
            self.listener.begin()
    1. Dealing with the F6 Keypress: The on_key_press methodology is executed each time a key’s pressed. It checks if the pressed key’s F6. In that case, it calls the process_task_description methodology to start out the workflow for producing a Linux command. Any invalid key presses are safely ignored, making certain this system operates easily.
        def on_key_press(self, key):
            strive:
                if key == keyboard.Key.f6:
                    # Set off command era on F6
                    print("Processing job description...")
                    self.process_task_description()
            besides AttributeError:
                go
    
    1. Extracting Activity Description: This methodology begins by simulating the “Ctrl+Shift+C” keypress utilizing xdotool to repeat chosen textual content from the terminal. The copied textual content, assumed to be a job description, is then retrieved from the clipboard through pyperclip. A immediate is constructed to instruct the Llama mannequin to generate a single Linux command for the given job. To maintain the applying responsive, the command era is run in a separate thread, making certain the primary program stays non-blocking.
        def process_task_description(self):
            # Step 1: Copy the chosen textual content utilizing Ctrl+Shift+C
            subprocess.run(['xdotool', 'key', '--clearmodifiers', 'ctrl+shift+c'])
    
            # Get the chosen textual content from clipboard
            task_description = pyperclip.paste()
    
            # Arrange the command-generation immediate
            immediate = (
                "You're a Linux terminal assistant. Convert the next description of a job "
                "right into a single Linux command that accomplishes it. Present solely the command, "
                "with none further textual content or surrounding quotes:nn"
                f"Activity description: {task_description}"
            )
    
            # Step 2: Run command era in a separate thread
            threading.Thread(goal=self.generate_command, args=(immediate,)).begin()
    
    1. Producing the Command: The generate_command methodology sends the constructed immediate to the Llama mannequin (llama3.1) through the ollama library. The mannequin responds with a generated command, which is then cleaned to take away any pointless quotes or formatting. The sanitized command is handed to the replace_with_command methodology for pasting again into the terminal. Any errors throughout this course of are caught and logged to make sure robustness.
        def generate_command(self, immediate):
            strive:
                # Question the Llama mannequin for the command
                response = ollama.generate(mannequin="llama3.1", immediate=immediate)
                generated_command = response['response'].strip()
    
                # Take away any surrounding quotes (if current)
                if generated_command.startswith("'") and generated_command.endswith("'"):
                    generated_command = generated_command[1:-1]
                elif generated_command.startswith('"') and generated_command.endswith('"'):
                    generated_command = generated_command[1:-1]
                
                # Step 3: Substitute the chosen textual content with the generated command
                self.replace_with_command(generated_command)
            besides Exception as e:
                print(f"Command era error: {str(e)}")
    
    1. Changing Textual content within the Terminal: The replace_with_command methodology takes the generated command and copies it to the clipboard utilizing pyperclip. It then simulates keypresses to clear the terminal enter utilizing “Ctrl+C” and “Ctrl+L” and pastes the generated command again into the terminal with “Ctrl+Shift+V.” This automation ensures the consumer can instantly evaluate or execute the instructed command with out handbook intervention.
        def replace_with_command(self, command):
            # Copy the generated command to the clipboard
            pyperclip.copy(command)
    
            # Step 4: Clear the present enter utilizing Ctrl+C
            subprocess.run(['xdotool', 'key', '--clearmodifiers', 'ctrl+c'])
    
            subprocess.run(['xdotool', 'key', '--clearmodifiers', 'ctrl+l'])
    
            # Step 5: Paste the generated command utilizing Ctrl+Shift+V
            subprocess.run(['xdotool', 'key', '--clearmodifiers', 'ctrl+shift+v'])
    
    1. Working the Software: The script creates an occasion of the CommandAssistant class and retains it operating in an infinite loop to constantly pay attention for the F6 key. This system terminates gracefully upon receiving a KeyboardInterrupt (e.g., when the consumer presses Ctrl+C), making certain clear shutdown and liberating system sources.
    if __name__ == "__main__":
        app = CommandAssistant()
        # Maintain the script operating to pay attention for key presses
        strive:
            whereas True:
                go
        besides KeyboardInterrupt:
            print("Exiting Command Assistant.")
    

    Save all of the above elements as ‘helper.py’ file and run the applying utilizing the next command:

    python helper.py

    And that is it! You’ve got now constructed the One-Click on LLM Bash Helper. Let’s stroll by way of learn how to use it.

    Workflow

    Open terminal and write the outline of any command to carry out. After which comply with the under steps:

    • Choose Textual content: After writing the outline of the command it is advisable carry out within the terminal, choose the textual content.
    • Set off Translation: Press the F6 key to provoke the method.
    • View Consequence: The LLM finds the correct code to execute for the command description given by the consumer and exchange the textual content within the bash terminal. Which is then mechanically executed.

    As on this case, for the outline – “Listing all of the recordsdata on this listing” the command given as output from the LLM was -“ls”.

    For entry to the whole code and additional particulars, please go to this GitHub repo link.

    Listed here are just a few extra examples of the One-Click on LLM Bash Helper in motion:

    It gave the code “high” upon urgent the set off key (F6) and after execution it gave the next output:

    • Deleting a file with filename

    Suggestions for customizing the assistant

    1. Selecting the Proper Mannequin for Your System: Selecting the correct language mannequin first.

          Obtained a Highly effective PC? (16GB+ RAM)

    • Use llama2:70b or mixtral –  They provide wonderful high quality code era however want extra compute energy.
    • Good for skilled use or when accuracy is essential

    Working on a Mid-Vary System? (8-16GB RAM)

    • Use llama2:13b or mistral – They provide an ideal stability of efficiency and useful resource utilization.
    • Nice for day by day use and most era wants

    Working with Restricted Assets? (4-8GB RAM)

    • llama2:7b or phi are good on this vary.
    • They’re quicker and lighter however nonetheless get the job finished

    Though these fashions are advisable, one can use different fashions based on their wants.

    1. Personalizing Keyboard Shortcut : Need to change the F6 key? One can change it to any key! For instance to make use of ‘T’ for translate, or F2 as a result of it is simpler to achieve. It is tremendous simple to alter – simply modify the set off key within the code, and it is good to go.
    2. Customising the Assistant: Possibly as an alternative of bash helper, one wants assist with writing code in a sure programming language (Java, Python, C++). One simply wants to change the command era immediate. As an alternative of linux terminal assistant change it to python code author or to the programming language most well-liked.

    Limitations

    1. Useful resource Constraints: Working giant language fashions usually requires substantial {hardware}. For instance, at least 8 GB of RAM is required to run the 7B models, 16 GB to run the 13B models, and 32 GB to run the 33B models.
    2. Platform Restrictions: Using xdotool and particular key mixtures makes the device depending on Linux programs and will not work on different working programs with out modifications.
    3. Command Accuracy: The device could often produce incorrect or incomplete instructions, particularly for ambiguous or extremely particular duties. In such instances, utilizing a extra superior LLM with higher contextual understanding could also be crucial.
    4. Restricted Customization: With out specialised fine-tuning, generic LLMs may lack contextual changes for industry-specific terminology or user-specific preferences.

    For duties like extracting info from paperwork, instruments akin to Nanonets’ Chat with PDF have evaluated and used a number of LLMs like Ministral and may provide a dependable technique to work together with content material, making certain correct information extraction with out danger of misrepresentation.



    Source link

    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
    Previous ArticleVoyager(Space Probe) | by Muhammad Nadeem | Dec, 2024
    Next Article Why “AI Can’t Reason” Is a Bias. We humans are proud creatures | by Rafe Brena, Ph.D. | Dec, 2024
    Team_AIBS News
    • Website

    Related Posts

    AI Technology

    What comes next for AI copyright lawsuits?

    July 1, 2025
    AI Technology

    Cloudflare will now block AI bots from crawling its clients’ websites by default

    July 1, 2025
    AI Technology

    People are using AI to ‘sit’ with them while they trip on psychedelics

    July 1, 2025
    Add A Comment
    Leave A Reply Cancel Reply

    Top Posts

    Credit Risk Scoring for BNPL Customers at Bati Bank | by Sumeya sirmula | Jul, 2025

    July 1, 2025

    I Tried Buying a Car Through Amazon: Here Are the Pros, Cons

    December 10, 2024

    Amazon and eBay to pay ‘fair share’ for e-waste recycling

    December 10, 2024

    Artificial Intelligence Concerns & Predictions For 2025

    December 10, 2024

    Barbara Corcoran: Entrepreneurs Must ‘Embrace Change’

    December 10, 2024
    Categories
    • AI Technology
    • Artificial Intelligence
    • Business
    • Data Science
    • Machine Learning
    • Technology
    Most Popular

    Is AI “normal”? | MIT Technology Review

    April 29, 2025

    Beyond Causal Language Modeling. A deep dive into “Not All Tokens Are… | by Masatake Hirono | Jan, 2025

    January 27, 2025

    Why Personal Responsibility Is the Secret to Effective Leadership

    March 4, 2025
    Our Picks

    Credit Risk Scoring for BNPL Customers at Bati Bank | by Sumeya sirmula | Jul, 2025

    July 1, 2025

    The New Career Crisis: AI Is Breaking the Entry-Level Path for Gen Z

    July 1, 2025

    Musk’s X appoints ‘king of virality’ in bid to boost growth

    July 1, 2025
    Categories
    • AI Technology
    • Artificial Intelligence
    • Business
    • Data Science
    • Machine Learning
    • Technology
    • Privacy Policy
    • Disclaimer
    • Terms and Conditions
    • About us
    • Contact us
    Copyright © 2024 Aibsnews.comAll Rights Reserved.

    Type above and press Enter to search. Press Esc to cancel.