Metadata-Version: 2.4
Name: iatoolkit
Version: 0.71.1
Summary: IAToolkit
Author: Fernando Libedinsky
License-Expression: MIT
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: aiohappyeyeballs==2.4.4
Requires-Dist: aiohttp==3.11.9
Requires-Dist: aiosignal==1.3.1
Requires-Dist: annotated-types==0.7.0
Requires-Dist: anyio==4.6.2.post1
Requires-Dist: asgiref==3.8.1
Requires-Dist: async-timeout==4.0.3
Requires-Dist: attrs==24.3.0
Requires-Dist: backoff==2.2.1
Requires-Dist: bcrypt==4.2.1
Requires-Dist: beautifulsoup4==4.12.3
Requires-Dist: blinker==1.9.0
Requires-Dist: boto3==1.36.22
Requires-Dist: botocore==1.36.22
Requires-Dist: build==1.2.2.post1
Requires-Dist: cachelib==0.13.0
Requires-Dist: cachetools==5.5.0
Requires-Dist: certifi==2024.12.14
Requires-Dist: cffi==1.17.1
Requires-Dist: charset-normalizer==3.4.0
Requires-Dist: click==8.1.8
Requires-Dist: coloredlogs==15.0.1
Requires-Dist: contourpy==1.3.3
Requires-Dist: coverage==7.6.10
Requires-Dist: cryptography==44.0.3
Requires-Dist: cycler==0.12.1
Requires-Dist: dataclasses-json==0.6.7
Requires-Dist: Deprecated==1.2.15
Requires-Dist: distro==1.9.0
Requires-Dist: durationpy==0.9
Requires-Dist: ecs-logging==2.2.0
Requires-Dist: elastic-apm==6.23.0
Requires-Dist: et_xmlfile==2.0.0
Requires-Dist: exceptiongroup==1.2.2
Requires-Dist: fastapi==0.115.6
Requires-Dist: filelock==3.16.1
Requires-Dist: Flask==3.1.0
Requires-Dist: Flask-Bcrypt==1.0.1
Requires-Dist: flask-cors==6.0.0
Requires-Dist: Flask-Injector==0.15.0
Requires-Dist: Flask-Session==0.8.0
Requires-Dist: flatbuffers==24.3.25
Requires-Dist: fonttools==4.59.2
Requires-Dist: frozenlist==1.5.0
Requires-Dist: fsspec==2024.10.0
Requires-Dist: google-ai-generativelanguage==0.6.15
Requires-Dist: google-api-core==2.24.1
Requires-Dist: google-api-python-client==2.161.0
Requires-Dist: google-auth==2.37.0
Requires-Dist: google-auth-httplib2==0.2.0
Requires-Dist: google-auth-oauthlib==1.2.1
Requires-Dist: google-cloud-core==2.4.1
Requires-Dist: google-cloud-storage==3.0.0
Requires-Dist: google-crc32c==1.6.0
Requires-Dist: google-generativeai==0.8.5
Requires-Dist: google-resumable-media==2.7.2
Requires-Dist: googleapis-common-protos==1.66.0
Requires-Dist: grpcio==1.74.0
Requires-Dist: grpcio-status==1.71.2
Requires-Dist: gunicorn==23.0.0
Requires-Dist: h11==0.14.0
Requires-Dist: httpcore==1.0.7
Requires-Dist: httplib2==0.22.0
Requires-Dist: httptools==0.6.4
Requires-Dist: httpx==0.28.0
Requires-Dist: httpx-sse==0.4.0
Requires-Dist: huggingface-hub==0.31.4
Requires-Dist: humanfriendly==10.0
Requires-Dist: idna==3.10
Requires-Dist: importlib_metadata==8.5.0
Requires-Dist: importlib_resources==6.4.5
Requires-Dist: iniconfig==2.0.0
Requires-Dist: injector==0.22.0
Requires-Dist: itsdangerous==2.2.0
Requires-Dist: Jinja2==3.1.5
Requires-Dist: jiter==0.8.0
Requires-Dist: jmespath==1.0.1
Requires-Dist: joblib==1.4.2
Requires-Dist: jsonpatch==1.33
Requires-Dist: jsonpointer==3.0.0
Requires-Dist: kiwisolver==1.4.9
Requires-Dist: kubernetes==31.0.0
Requires-Dist: langchain==0.3.19
Requires-Dist: langchain-core==0.3.35
Requires-Dist: langchain-text-splitters==0.3.6
Requires-Dist: langsmith==0.3.8
Requires-Dist: lxml==5.3.0
Requires-Dist: markdown-it-py==3.0.0
Requires-Dist: markdown2==2.5.3
Requires-Dist: MarkupSafe==3.0.2
Requires-Dist: marshmallow==3.23.1
Requires-Dist: matplotlib==3.10.6
Requires-Dist: mdurl==0.1.2
Requires-Dist: mmh3==5.0.1
Requires-Dist: monotonic==1.6
Requires-Dist: mpmath==1.3.0
Requires-Dist: msgspec==0.19.0
Requires-Dist: multidict==6.1.0
Requires-Dist: mypy-extensions==1.0.0
Requires-Dist: narwhals==2.3.0
Requires-Dist: networkx==3.4.2
Requires-Dist: numpy==2.2.3
Requires-Dist: oauth2client==4.1.3
Requires-Dist: oauthlib==3.2.2
Requires-Dist: onnxruntime==1.19.2
Requires-Dist: openai==1.79.0
Requires-Dist: openpyxl==3.1.5
Requires-Dist: opentelemetry-api==1.28.2
Requires-Dist: opentelemetry-exporter-otlp-proto-common==1.28.2
Requires-Dist: opentelemetry-exporter-otlp-proto-grpc==1.28.2
Requires-Dist: opentelemetry-instrumentation==0.49b2
Requires-Dist: opentelemetry-instrumentation-asgi==0.49b2
Requires-Dist: opentelemetry-instrumentation-fastapi==0.49b2
Requires-Dist: opentelemetry-proto==1.28.2
Requires-Dist: opentelemetry-sdk==1.28.2
Requires-Dist: opentelemetry-semantic-conventions==0.49b2
Requires-Dist: opentelemetry-util-http==0.49b2
Requires-Dist: orjson==3.10.12
Requires-Dist: overrides==7.7.0
Requires-Dist: packaging==24.2
Requires-Dist: pandas==2.3.1
Requires-Dist: pgvector==0.3.6
Requires-Dist: pillow==11.0.0
Requires-Dist: plotly==6.3.0
Requires-Dist: pluggy==1.5.0
Requires-Dist: posthog==3.7.4
Requires-Dist: propcache==0.2.1
Requires-Dist: proto-plus==1.26.0
Requires-Dist: protobuf==5.29.1
Requires-Dist: psutil==7.0.0
Requires-Dist: psycopg2-binary==2.9.10
Requires-Dist: pyarrow==21.0.0
Requires-Dist: pyasn1==0.6.1
Requires-Dist: pyasn1_modules==0.4.1
Requires-Dist: pycparser==2.22
Requires-Dist: pydantic==2.10.2
Requires-Dist: pydantic-settings==2.6.1
Requires-Dist: pydantic_core==2.27.1
Requires-Dist: PyDrive==1.3.1
Requires-Dist: Pygments==2.18.0
Requires-Dist: PyJWT==2.10.1
Requires-Dist: PyMuPDF==1.25.0
Requires-Dist: pyparsing==3.2.1
Requires-Dist: pypdf==5.1.0
Requires-Dist: PyPika==0.48.9
Requires-Dist: pyproject_hooks==1.2.0
Requires-Dist: pytesseract==0.3.13
Requires-Dist: pytest==8.3.4
Requires-Dist: pytest-cov==5.0.0
Requires-Dist: pytest-mock==3.14.0
Requires-Dist: python-dateutil==2.9.0.post0
Requires-Dist: python-docx==1.1.2
Requires-Dist: python-dotenv==1.0.1
Requires-Dist: pytz==2025.2
Requires-Dist: PyYAML==6.0.2
Requires-Dist: redis==5.2.1
Requires-Dist: regex==2024.11.6
Requires-Dist: requests==2.32.3
Requires-Dist: requests-oauthlib==2.0.0
Requires-Dist: requests-toolbelt==1.0.0
Requires-Dist: rich==13.9.4
Requires-Dist: rsa==4.9
Requires-Dist: s3transfer==0.11.2
Requires-Dist: safetensors==0.5.2
Requires-Dist: scikit-learn==1.7.1
Requires-Dist: scipy==1.15.1
Requires-Dist: seaborn==0.13.2
Requires-Dist: setuptools==75.8.0
Requires-Dist: shellingham==1.5.4
Requires-Dist: sib-api-v3-sdk==7.6.0
Requires-Dist: six==1.17.0
Requires-Dist: sniffio==1.3.1
Requires-Dist: soupsieve==2.6
Requires-Dist: SQLAlchemy==2.0.36
Requires-Dist: starlette==0.41.3
Requires-Dist: sympy==1.13.1
Requires-Dist: tenacity==9.0.0
Requires-Dist: threadpoolctl==3.5.0
Requires-Dist: tiktoken==0.8.0
Requires-Dist: tokenizers==0.21.0
Requires-Dist: tomli==2.2.1
Requires-Dist: tqdm==4.67.1
Requires-Dist: typer==0.15.1
Requires-Dist: typing-inspect==0.9.0
Requires-Dist: typing_extensions==4.12.2
Requires-Dist: tzdata==2025.2
Requires-Dist: uritemplate==4.1.1
Requires-Dist: urllib3==2.3.0
Requires-Dist: uvicorn==0.32.1
Requires-Dist: uvloop==0.21.0
Requires-Dist: watchfiles==1.0.0
Requires-Dist: websocket-client==1.8.0
Requires-Dist: websockets==14.1
Requires-Dist: Werkzeug==3.1.3
Requires-Dist: whitenoise==6.8.2
Requires-Dist: wikipedia==1.4.0
Requires-Dist: wrapt==1.17.0
Requires-Dist: yarl==1.18.3
Requires-Dist: zipp==3.21.0
Requires-Dist: zstandard==0.23.0
Dynamic: license-file


<div align="center">
<h1>
    IAToolkit
</h1>

  <p><strong>The Open-Source Framework for Building AI Chatbots on Your Private Data.</strong></p>
<h4>
  <a href="https://www.iatoolkit.com" target="_blank" style="text-decoration: none; color: inherit;">
    www.iatoolkit.com
  </a>
</h4>
</div>

IAToolkit is a comprehensive, Python open-source framework designed for building enterprise-grade 
AI chatbots and conversational applications. It bridges the gap between the power of 
Large Language Models (LLMs) and the valuable, 
private data locked within your organization's databases and documents.

With IAToolkit, you can build production-ready, context-aware chatbots and agents that 
can query relational databases, perform semantic searches on documents, 
and connect to your internal APIs in minutes.

Create secure, branded chat interfaces that can reason over your data, answer questions, and execute custom business logic, 
all powered by leading models from OpenAI, Google Gemini, and more.


## 🚀 Key Features

* **🔗 Unified Data Connection**
    * **Natural Language to SQL**: Let your chatbot query relational databases (PostgreSQL, MySQL, SQLite) using everyday language.
    * **Semantic Document Search**: Automatically chunk, embed, and search across your private documents (PDFs, Word, etc.) to provide contextually accurate answers.

* **🏢 Enterprise-Ready Multi-Tenancy**
    * Deploy isolated "Company" modules, each with its own data, tools, and context. 
    * Perfect for SaaS products or internal departmental agents.

* **🎨 Fully Brandable UI**
    * Customize the look and feel for each "Company" with its own logos, colors, and even language settings (i18n).
    * Provides a white-labeled experience for your users.

* **🧠 LLM Agnostic**
    * Switch between **OpenAI (GPT-*)** and **Google (Gemini-*)** with a single line change in your configuration. 
    * No code refactoring needed.

* **🛠️ Developer-First Experience**
    * Built with a clean **Dependency Injection** architecture.  
    * High-quality code base with **90%+ test coverage**.

* **🔒 Security & Observability Built-In**
    * Comes with integrated user authentication, API keys, and secure session handling out of the box.  
    * Full traceability with detailed logging of all queries, function calls, token usage, and costs.
## ⚡ Quick Start: Try our 'hello world' example

Ready to see it in action? Our Quickstart Guide will walk you through downloading, configuring, and launching your first AI assistant in just a few minutes. 
It's the best way to experience the toolkit's capabilities firsthand.

## 🤝 Contributing

We welcome contributions! Whether it's adding a new feature, improving documentation, or fixing a bug, 
please feel free to open a pull request.

## 📄 License

IAToolkit is open-source and licensed under the [MIT License](LICENSE).
