Download scripts/init_db.py from shreerangss/intelligent-document-query-engine: direct link, hf CLI and curl.
- Browser
- Download file 1.05 kB
-
https://huggingface.co/spaces/shreerangss/intelligent-document-query-engine/resolve/main/scripts/init_db.py
- Command line
-
hf download hf://spaces/shreerangss/intelligent-document-query-engine/scripts/init_db.py
-
curl -L -o init_db.py https://huggingface.co/spaces/shreerangss/intelligent-document-query-engine/resolve/main/scripts/init_db.py
1.05 kB
| """Create persistence tables explicitly. | |
| Usage: | |
| python scripts/init_db.py | |
| Set DATABASE_URL to choose a database. The default is sqlite:///./rag_persistence.db. | |
| The script intentionally avoids printing DATABASE_URL because managed database | |
| URLs often contain credentials. | |
| """ | |
| from __future__ import annotations | |
| import sys | |
| from pathlib import Path | |
| from sqlalchemy.exc import SQLAlchemyError | |
| REPO_ROOT = Path(__file__).resolve().parents[1] | |
| sys.path.insert(0, str(REPO_ROOT)) | |
| from persistence import models # noqa: F401,E402 - registers SQLAlchemy metadata | |
| from persistence.db import Base, engine # noqa: E402 | |
| def main() -> None: | |
| try: | |
| Base.metadata.create_all(bind=engine) | |
| except SQLAlchemyError as exc: | |
| raise RuntimeError("Database initialization failed. Check DATABASE_URL and DB_CA_CERT configuration.") from exc | |
| table_names = ", ".join(sorted(Base.metadata.tables)) | |
| print(f"Using configured database engine. Created/verified persistence tables: {table_names}") | |
| if __name__ == "__main__": | |
| main() | |