Getting Started¶
System requirements¶
Requirement |
Details |
|---|---|
Python |
3.11 or later — download |
pip |
Included with Python — install guide |
OS |
Windows, macOS, or Linux |
Verify your Python version:
python3 --version # should print 3.11.x or higher
Installing Python¶
If you don’t have Python 3.11+, the easiest options are:
All platforms — download the installer from python.org
macOS / Linux — use pyenv to manage multiple versions
Windows — install from the Microsoft Store
Installation¶
From PyPI (recommended)¶
Use a virtual environment to keep dependencies isolated:
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install urimai
From source (for development)¶
git clone https://github.com/shivakharbanda/urimAI.git
cd urimAI
uv sync # or: pip install -e .
See the Contributing guide for full development setup details.
API key setup¶
urimai needs an API key from at least one supported LLM provider.
Google Gemini¶
Go to Google AI Studio and sign in.
Click Create API Key and copy the key.
Run
urim setupand paste the key when prompted, or export it:export GOOGLE_API_KEY="your-key-here"
OpenAI¶
Go to the OpenAI API keys page and sign in.
Click Create new secret key and copy it.
Run
urim setupand paste the key when prompted, or export it:export OPENAI_API_KEY="your-key-here"
API keys entered through urim setup are stored securely in your system keyring.
See Configuration for the full lookup order.
First run walkthrough¶
1. Run the setup wizard¶
urim setup
The wizard will ask you to:
Choose a provider (Google Gemini or OpenAI).
Enter your API key.
Optionally set your display name.
2. Register a database¶
Point urimai at a SQLite database or CSV file:
urim init path/to/database.db
urimai extracts the schema, enriches column descriptions with the LLM, profiles each column, and runs data-quality checks. When it finishes you’ll see a summary of the registered tables.
For CSV files:
urim init data.csv
urimai converts the CSV into SQLite behind the scenes, using LLM-powered schema inference to pick appropriate column types. You can customise the import:
urim init data.csv --name my_dataset --delimiter ";" --encoding latin-1
3. Start chatting¶
urim chat my_dataset
Type questions in plain English. urimai generates SQL, executes it against your database, and explains the results.
Troubleshooting¶
- Wrong Python version
Run
python3 --version. If it prints a version below 3.11, install a newer version (see Installing Python above).- “No API key found” error
Make sure you have run
urim setupor exported the correct environment variable (GOOGLE_API_KEYorOPENAI_API_KEY). Runurim config --pathto check that the config directory is accessible.- Keyring errors on Linux
Some Linux environments lack a system keyring backend. Install one (
sudo apt install gnome-keyring) or use environment variables instead.- “Database not found” when chatting
Run
urim listto see registered databases. The name you pass tourim chatmust match one of the listed names exactly.