HomeSetup - AskAI
Project description
AskAI
Unleash the Power of AI in Your Terminal
Born from the idea of empowering individuals with disabilities to navigate the digital world effortlessly, AskAI stands as a beacon of accessibility in the realm of computing. It emerges as a revolutionary solution, harnessing the prowess of AI to bridge the gap between users and the terminal interface. With its intuitive design, AskAI welcomes users of all abilities, eliminating the need for extensive familiarity with shells like bash or zsh. Now, individuals with disabilities can effortlessly command their machines, whether it involves listing files and folders, summarizing documents, accessing real-time data, or delving into a myriad of other functions.
At the heart of AskAI lies its innovative integration of Speech-to-Text and Text-to-Speech technologies, offering a seamless experience for both visually and hearing impaired users. Through these cutting-edge features, individuals can interact with their computers using their natural voice, transcending the barriers imposed by traditional input methods. Moreover, AskAI introduces a unique push-to-talk input mechanism, enabling users to issue commands effortlessly, enhancing the fluidity and ease of interaction.
Furthermore, AskAI embraces diversity by breaking language barriers, ensuring that no matter the tongue spoken, users can communicate effectively with their systems. Its adaptive language capabilities ensure that commands are understood and executed accurately, regardless of linguistic nuances. By championing inclusivity on all fronts, AskAI redefines the landscape of computing accessibility, empowering individuals with disabilities to navigate the digital realm with confidence and autonomy.
The world speaks many languages. AskAI understands them all.
🔥 Checkout the YouTube video with our Demo!
🔥 Checkout the new AskAI Teaser on LinkedIn
Key Features
- Seamlessly Integrate AI Models (Currently Supporting OpenAI).
- Activate Speech-to-Text Inputs via Push-to-Talk Keybinding.
- Control Text-to-Speech Outputs with Adjustable Speed.
- Enable Assistive Technology for Visually Impaired Terminal Usage.
- Enjoy a Natural Typewriter Effect Synced with Speaking Text.
- Automate Offline Language Translations for Enhanced Accessibility.
- Interactive and Non-Interactive modes.
- Image captions are used to provide textual descriptions of visual content.
- Enhanced accuracy in responses is achieved through the implementation of a Retrieval-Augmented Generation (RAG) system.
Installation
Requirements
Python
- Python 3.10 and higher
Operating Systems
- Darwin
- High Sierra and higher
- Linux
- Ubuntu 16 and higher
- CentOS 7 and higher
- Fedora 31 and higher
You may want to install HsPyLib on another OS's and it will probably work, but there are no guarantees that it WILL ACTUALLY WORK.
Applications / Libraries
The following software is required:
- FFMPEG (This allows you to play audio and video files from your terminal).
- PORTAUDIO (To allow microphone recordings).
macOS installation
Use Homebrew to install the prerequisite portaudio:
$ brew install portaudio ffmpeg libmagic
GNU/Linux installation
Debian-based systems:
$ sudo apt install python3-pyaudio ffmpeg libmagic-dev
RedHat-based systems:
$ sudo dnf install portaudio-devel redhat-rpm-config ffmpeg libmagic-dev
AskAI installation
AskAI is available at PyPi
$ python3 -m pip install hspylib-askai
ApiKeys
In order to use AskAI you need to have the following Api Keys:
- DEEPL_API_KEY (for translations).
- GOOGLE_API_KEY (for internet browsing).
- OPENAI_API_KEY (to use ChatGPT api).
Google Search API Integration
To enable the Custom Search API:
- Navigate to the APIs & Services→Dashboard panel in Cloud Console.
- Click Enable APIs and Services.
- Search for Custom Search API and click on it.
- Click Enable.
URL for it: https://console.cloud.google.com/apis/library/customsearch.googleapis.com
To create an API key:
- Navigate to the APIs & Services → Credentials panel in the Cloud Console.
- Select Create credentials, then select the API key from the drop-down menu.
- The API key-created dialog box displays your newly created key.
- You now have a GOOGLE_API_KEY.
Alternatively, you can just generate an API key here: https://developers.google.com/custom-search/docs/paid_element#api_key
DeepL API
To enable the DeepL online translation:
- Navigate to your account settings.
- Select the API Keys tab.
- Click on Create key +.
- You now have a DEEPL_API_KEY.
OpenAI API
To enable your OpenAI LLM:
- Access the OpenAI API Section:
- Navigate to the API section of the OpenAI dashboard.
- Create a New API Key by clicking on “Create API Key” or a similar button.
- Name Your API Key:
- You now have an OPENAI_API_KEY.
Support
Your support and contributions are greatly appreciated in helping us improve and enhance HomeSetup. Together, we can make it even better!
You can support HomeSetup by donating or contributing code. Feel free to contact me for further details. When making code contributions, please make sure to review our guidelines and adhere to our code of conduct.
You can also sponsor it by using our GitHub Sponsors page.
This project is already supported by:
Thank you <3 !!
Contacts
Enjoy!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hspylib_askai-1.2.19.tar.gz.
File metadata
- Download URL: hspylib_askai-1.2.19.tar.gz
- Upload date:
- Size: 2.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
37af498768ddfacb7440ba0cecfa78ae33143a0f6c02a413bf19c3649dc087c5
|
|
| MD5 |
686ebf05213e1ba926a1f62c4d36b3f3
|
|
| BLAKE2b-256 |
7dd8d42945ee7b94c3709042f69cc9726ae53ae5e78eac28de981cfde12e672f
|
Provenance
The following attestation bundles were made for hspylib_askai-1.2.19.tar.gz:
Publisher:
create-release.yml on HS-Teams/askai
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
hspylib_askai-1.2.19.tar.gz -
Subject digest:
37af498768ddfacb7440ba0cecfa78ae33143a0f6c02a413bf19c3649dc087c5 - Sigstore transparency entry: 768004960
- Sigstore integration time:
-
Permalink:
HS-Teams/askai@36e4c85ad8fa4fce7ab735d004cbc8f61939b93e -
Branch / Tag:
refs/heads/master - Owner: https://github.com/HS-Teams
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
create-release.yml@36e4c85ad8fa4fce7ab735d004cbc8f61939b93e -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file hspylib_askai-1.2.19-py3-none-any.whl.
File metadata
- Download URL: hspylib_askai-1.2.19-py3-none-any.whl
- Upload date:
- Size: 2.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b25fa3e83bc6cb59a35dad4dfd97303cbab9727b2ba9e635f9f06be6a6af91e9
|
|
| MD5 |
4b78416c8f81a4b4ea19b38525875eb8
|
|
| BLAKE2b-256 |
8971591bbf24936301b5ffe8a04e8b107c84273ca68623614c2f5db449924d15
|
Provenance
The following attestation bundles were made for hspylib_askai-1.2.19-py3-none-any.whl:
Publisher:
create-release.yml on HS-Teams/askai
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
hspylib_askai-1.2.19-py3-none-any.whl -
Subject digest:
b25fa3e83bc6cb59a35dad4dfd97303cbab9727b2ba9e635f9f06be6a6af91e9 - Sigstore transparency entry: 768004968
- Sigstore integration time:
-
Permalink:
HS-Teams/askai@36e4c85ad8fa4fce7ab735d004cbc8f61939b93e -
Branch / Tag:
refs/heads/master - Owner: https://github.com/HS-Teams
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
create-release.yml@36e4c85ad8fa4fce7ab735d004cbc8f61939b93e -
Trigger Event:
workflow_dispatch
-
Statement type: