py-gpt
Enrichment pendingDesktop AI Assistant powered by GPT-5, GPT-4, o1, o3, Gemini, Claude, Ollama, DeepSeek, Perplexity, Grok, Bielik, chat, vision, voice, RAG, image and video generation, agents, tools, MCP, plugins, spe
GraphCanon updated today · GitHub synced today
Verify the decision
Maintenance and security
Full trust report- Maintenance
- Slowing (159d since push)
- As of today
- Provenance
- Not a fork · Personal account
- As of today
- Security (OSV)
- No criticals
- As of today
Public GitHub metadata and optional OSV scans. Signals, not a guarantee. Trust methodology.
Install
pip install py-gpt PyPISimilar tools
Same-category neighbours. No typed graph edges are catalogued for this tool yet.
Evidence and technical details
Sourced facts, taxonomy, compatibility claims, README excerpt, and machine-readable endpoints.
Overview
Desktop AI Assistant powered by GPT-5, GPT-4, o1, o3, Gemini, Claude, Ollama, DeepSeek, Perplexity, Grok, Bielik, chat, vision, voice, RAG, image and video generation, agents, tools, MCP, plugins, speech synthesis and recognition, web search, memory, presets, assistants,and more. Linux, Windows, Mac
Capability facts
- CLI
- CLI entrypoint
Source: pyproject.toml:[project.scripts] · Jul 15, 2026
- Languages
- python
Source: github.language+pyproject.toml · Jul 15, 2026
Categories
Compatibility
Sourced claims from the README excerpt - not unsourced marketing copy.
Tags
README
Install with pip
- Clone git repository or download .zip file:
git clone https://github.com/szczyglis-dev/py-gpt.git
cd py-gpt
- Create a new virtual environment:
python3 -m venv venv
source venv/bin/activate
- Install requirements:
pip install -r requirements.txt
- Run the application:
python3 run.py
Install with Poetry
- Clone git repository or download .zip file:
git clone https://github.com/szczyglis-dev/py-gpt.git
cd py-gpt
- Install Poetry (if not installed):
pip install poetry
- Create a new virtual environment that uses Python 3.10:
poetry env use python3.10
poetry shell
or (Poetry >= 2.0):
poetry env use python3.10
poetry env activate
- Install requirements:
poetry install
- Run the application:
poetry run python3 run.py
Tip: you can use PyInstaller to create a compiled version of
the application for your system (required version >= 6.0.0).
Other requirements
For operation, an internet connection is needed (for API connectivity), a registered OpenAI account,
and an active API key that must be input into the program. Local models, such as Llama3 do not require OpenAI account and any API keys.
Quick start
You can create your own extensions for PyGPT at any time.
PyGPT can be extended with:
-
custom models
-
custom plugins
-
custom LLM wrappers
-
custom vector store providers
-
custom data loaders
-
custom audio input providers
-
custom audio output providers
-
custom web search engine providers
-
custom agents (LlamaIndex or OpenAI Agents)
Examples (tutorial files)
See the examples directory in this repository with examples of custom launcher, plugin, vector store, LLM (LlamaIndex) provider and data loader:
-
examples/custom_launcher.py -
examples/example_audio_input.py -
examples/example_audio_output.py -
examples/example_data_loader.py -
examples/example_llm.py -
examples/example_plugin.py -
examples/example_vector_store.py -
examples/example_web_search.py
These example files can be used as a starting point for creating your own extensions for PyGPT.
Extending PyGPT with custom plugins, LLMs wrappers and vector stores:
-
You can pass custom plugin instances, LLMs wrappers and vector store providers to the launcher.
-
This is useful if you want to extend PyGPT with your own plugins, vectors storage and LLMs.
To register custom plugins:
- Pass a list with the plugin instances as
pluginskeyword argument.
To register custom LLMs wrappers:
- Pass a list with the LLMs wrappers instances as
llmskeyword argument.
To register custom vector store providers:
- Pass a list with the vector store provider instances as
vector_storeskeyword argument.
To register custom data loaders:
- Pass a list with the data loader instances as
loaderskeyword argument.
To register custom audio input providers:
- Pass a list with the audio input provider instances as
audio_inputkeyword argument.
To register custom audio output providers:
- Pass a list with the audio output provider instances as
audio_outputkeyword argument.
To register custom web providers:
- Pass a list with the web provider instances as
webkeyword argument.
For agents
This page has a .md twin and JSON over the API.