Metadata-Version: 2.4
Name: alita_sdk
Version: 0.3.103
Summary: SDK for building langchain agents using resouces from Alita
Author-email: Artem Rozumenko <artyom.rozumenko@gmail.com>, Mikalai Biazruchka <mikalai_biazruchka@epam.com>, Roman Mitusov <roman_mitusov@epam.com>, Ivan Krakhmaliuk <lifedjik@gmail.com>
Project-URL: Homepage, https://projectalita.ai
Project-URL: Issues, https://github.com/ProjectAlita/alita-sdk/issues
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: sqlalchemy<2.0.36
Requires-Dist: tiktoken>=0.7.0
Requires-Dist: openai>=1.55.0
Requires-Dist: python-dotenv~=1.0.1
Requires-Dist: alita_tools>=0.3.165
Requires-Dist: jinja2~=3.1.3
Requires-Dist: pillow~=11.1.0
Requires-Dist: requests~=2.3
Requires-Dist: pydantic~=2.10.0
Requires-Dist: chardet==5.2.0
Requires-Dist: retry-extended==0.2.3
Requires-Dist: jira==3.8.0
Requires-Dist: browser-use==0.1.43
Requires-Dist: pyobjtojson==0.3
Requires-Dist: fastapi==0.115.9
Requires-Dist: httpcore==1.0.7
Requires-Dist: langchain_core==0.3.49
Requires-Dist: langchain<=0.3.22
Requires-Dist: langchain_community~=0.3.7
Requires-Dist: langchain-openai~=0.3.0
Requires-Dist: langgraph-checkpoint-sqlite~=2.0.0
Requires-Dist: langgraph-checkpoint-postgres~=2.0.1
Requires-Dist: langsmith==0.1.144
Requires-Dist: langgraph~=0.2.53
Requires-Dist: langchain_chroma~=0.2.3
Requires-Dist: langchain-unstructured~=0.1.6
Requires-Dist: langchain-postgres~=0.0.13
Requires-Dist: keybert==0.8.3
Requires-Dist: charset_normalizer==3.3.2
Requires-Dist: unstructured[local-inference]==0.16.23
Requires-Dist: unstructured_pytesseract==0.3.13
Requires-Dist: unstructured_inference==0.8.7
Requires-Dist: python-pptx==1.0.2
Requires-Dist: pdf2image==1.16.3
Requires-Dist: pikepdf==8.7.1
Requires-Dist: pypdf==4.3.1
Requires-Dist: pdfminer.six==20240706
Requires-Dist: opencv-python==4.11.0.86
Requires-Dist: python-docx==1.1.2
Requires-Dist: openpyxl==3.1.2
Requires-Dist: markdown==3.5.1
Requires-Dist: beautifulsoup4==4.12.2
Requires-Dist: gensim==4.3.3
Requires-Dist: chromadb==1.0.8
Requires-Dist: pgvector==0.2.5
Requires-Dist: atlassian-python-api~=3.41
Requires-Dist: dulwich==0.21.6
Requires-Dist: paramiko==3.3.1
Requires-Dist: urllib3>=2
Requires-Dist: certifi==2024.8.30
Requires-Dist: scipy==1.13.1
Requires-Dist: qtest-swagger-client==0.0.3
Requires-Dist: pytesseract==0.3.13
Requires-Dist: reportlab==4.2.5
Requires-Dist: svglib==1.5.1
Requires-Dist: rlpycairo==0.3.0
Requires-Dist: cairocffi==1.7.1
Requires-Dist: docx2txt==0.8
Requires-Dist: mammoth==1.9.0
Dynamic: license-file

Alita SDK
=========

Alita SDK, built on top of Langchain, enables the creation of intelligent agents within the Alita Platform using project-specific prompts and data sources. This SDK is designed for developers looking to integrate advanced AI capabilities into their projects with ease.

Prerequisites
-------------

Before you begin, ensure you have the following requirements met:

*   Python 3.10+
*   An active deployment of Project Alita
*   Access to personal project

Installation
------------

First, you need to install the Langchain library. Alita SDK depends on Langchain for its core functionalities. You can install Langchain using pip:

```bash
pip install langchain
```

Next, clone the Alita SDK repository (assuming it's available on GitHub or another source):

```bash
git clone https://github.com/ProjectAlita/alita-sdk.git
cd alita-sdk
```

Install the SDK along with its dependencies:

```bash
pip install -r requirements.txt
```

Environment Setup
-----------------

Before running your Alita agents, set up your environment variables. Create a `.env` file in the root directory of your project and include your Project Alita credentials:

```.env
DEPLOYMENT_URL=<your_deployment_url>
API_KEY=<your_api_key>
PROJECT_ID=<your_project_id>
INTEGRATION_UID=<your_integration_uid>
MODEL_NAME=<your_model_name>
```


Using SDK with Streamlit for Local Development
----------------------------------------------

To use the SDK with Streamlit for local development, follow these steps:

1. Ensure you have Streamlit installed:
    ```bash
    pip install streamlit
    ```

2. Run the Streamlit app:
    ```bash
    streamlit run alita_local.py
    ```

Streamlit Web Application
------------------------

The Alita SDK includes a Streamlit web application that provides a user-friendly interface for interacting with Alita agents. This application is powered by the `streamlit.py` module included in the SDK.

### Key Features

- **Agent Management**: Load and interact with agents created in the Alita Platform
- **Authentication**: Easily connect to your Alita/Elitea deployment using your credentials
- **Chat Interface**: User-friendly chat interface for communicating with your agents
- **Toolkit Integration**: Add and configure toolkits for your agents
- **Session Management**: Maintain conversation history and thread state

### Using the Web Application

1. **Authentication**:
   - Navigate to the "Alita Settings" tab in the sidebar
   - Enter your deployment URL, API key, and project ID
   - Click "Login" to authenticate with the Alita Platform

2. **Loading an Agent**:
   - After authentication, you'll see a list of available agents
   - Select an agent from the dropdown menu
   - Specify a version name (default: 'latest')
   - Optionally select an agent type and add custom tools
   - Click "Load Agent" to initialize the agent

3. **Interacting with the Agent**:
   - Use the chat input at the bottom of the screen to send messages to the agent
   - The agent's responses will appear in the chat window
   - Your conversation history is maintained until you clear it

4. **Clearing Data**:
   - Use the "Clear Chat" button to reset the conversation history
   - Use the "Clear Config" button to reset toolkit configurations

This web application simplifies the process of testing and interacting with your Alita agents, making development and debugging more efficient.

Adding Alita-Tools to PYTHONPATH
--------------------------------

If you have another repository containing Alita tools, you can add it to your PYTHONPATH to make the tools available to your project. For example:

1. Clone the repository containing the Alita tools:
    ```bash
    git clone https://github.com/yourusername/alita-tools.git
    ```

2. Add the repository to your PYTHONPATH:
    ```bash
    export PYTHONPATH=$PYTHONPATH:/path/to/alita-tools
    ```

3. Verify that the tools are accessible in your project:
    ```python
    import sys
    print(sys.path)
    ```
