dq_llm is a microservice designed to facilitate communication with data sources within the DQ Platform ecosystem. It leverages TaskWeaver, a dynamic task execution framework, to interpret and execute queries against various data sources, enhancing the platform's data querying capabilities.
The setup for dq_llm is straightforward, leveraging Poetry for dependency management and package installation. To get started, follow these steps:
-
Install Poetry:
pip install poetry
-
Clone the repository and navigate to the project directory:
git clone <repository-url> cd dq_llm
-
Install project dependencies with Poetry:
poetry install
-
Install TaskWeaver from the local package directory:
pip install -e pkgs/TaskWeaver
-
Activate the Poetry shell:
poetry shell
-
Start the
dq_llmserver:uvicorn app.main:app --host 0.0.0.0 --port 6545 --reload
The project is structured as follows:
dq_llm/
├── app/
│ ├── api/
│ ├── core/
│ ├── db/
│ └── utils/
├── pkgs/
│ └── TaskWeaver/
├── project/
│ ├── codeinterpreter_examples/
│ ├── planner_examples/
│ └── plugins/
├── tests/
├── docker-compose.yml
├── Dockerfile
├── poetry.lock
├── pyproject.toml
└── README.md
The plugins directory under project contains TaskWeaver plugins specific to the dq_llm service. For more detailed information on these plugins and how to work with TaskWeaver, please refer to TaskWeaver's documentation.
This project includes Docker and Docker Compose configurations for containerized deployment:
-
To build the Docker image:
docker build -t dq_llm . -
To start the service using Docker Compose:
docker-compose up
Contributions to dq_llm are welcome! Please refer to the CONTRIBUTING.md file in the TaskWeaver repository for guidelines on how to contribute.
dq_llm is licensed under MIT License. TaskWeaver is subject to its own licenses and copyright terms as detailed in its repository.