Skip to content

Commit

Permalink
Added media files and changed Readme
Browse files Browse the repository at this point in the history
  • Loading branch information
buzzCraft committed Nov 27, 2023
1 parent 68cd04b commit aa000b0
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 147 deletions.
174 changes: 27 additions & 147 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
- [Process Flow](#process-flow)
- [Getting Started](#getting-started)
- [Usage](#usage)
- [Project Structure](#project-structure)
- [Contributing](#contributing)
- [License](#license)
- [Acknowledgments](#acknowledgments)
Expand All @@ -34,6 +33,17 @@ EVA consists of the following main modules:
4. This textual response is converted into audio via the **Text-to-Voice Generation** module.
5. Finally, the **Avatar Visualization** module plays back the audio response, visually represented by our avatar, EVA.



![High level flow](media/flow.png)


### Orchestration of services within the pipeline

![Orchestration of services within the
pipeline](media/topology.png)


## Getting Started

### Prerequisites
Expand All @@ -44,30 +54,6 @@ AckBefore you can run EVA, ensure you have the following software and libraries
- **Poetry**: This project uses Poetry for dependency management. Install it using the instructions from [Poetry's official website](https://python-poetry.org/docs/).
- **Docker & Docker Compose**: EVA uses Docker containers managed by Docker Compose. Install Docker and Docker Compose from [Docker's official website](https://www.docker.com/get-started).

### Configuration

1. **Environment Variables**:
Navigate to the `aClient` directory and create a `.env` file. Populate it with the following template:

```plaintext
SERVER_HOST_ENV=your_server_host
SERVER_USERNAME_ENV=your_username
SERVER_PATH_ENV_UP=your_path_up
SERVER_PATH_ENV_DOWN=your_path_down
SSH_PRIVATE_KEY_PATH="your_ssh_key_path"
HF_KEY = wrong_key_hf_gKiYdfI # Hugging Face API key, create.env in Llm/app, replace key with your own
```

**Replace the placeholder comments with your actual values if different from the examples.**
- We will remove this part in the final README.md file. This is just for testing purposes.


2.

### Installation

Expand All @@ -77,30 +63,7 @@ AckBefore you can run EVA, ensure you have the following software and libraries
cd ACIT4040-AI-Project
```

2. **Navigate to the Module with Poetry Configuration**:
Before installing dependencies, ensure you're in the directory containing the `pyproject.toml` file. For example, if the `TextToVoice` module contains the Poetry configuration:
```bash
cd TextToVoice
```
Replace `TextToVoice` with the appropriate module name if different.
3. **Set Up the Environment**:
Now, install the dependencies using Poetry:
```bash
poetry install
```
4. **Return to the Project Root**:
After installing the dependencies, navigate back to the project root:
```bash
cd
```
5. **Build and Start Docker Containers**:
2. **Build and Start Docker Containers**:
Use Docker Compose to build and start all the necessary containers:

```bash
Expand All @@ -114,7 +77,7 @@ AckBefore you can run EVA, ensure you have the following software and libraries

1. **Interacting with EVA**:
With the containers up and running, you can start the main launcher script to interact with EVA, this script forwards ports so you can run the program locally.
The script has the command ssh -L 7000:localhost:4999 -L 7002:localhost:5002 username@server_address
The script has the command `ssh -L 7000:localhost:4999 -L 7002:localhost:5002 username@server_address`

```bash
eva
Expand All @@ -135,97 +98,14 @@ AckBefore you can run EVA, ensure you have the following software and libraries
```
this can be done in a different commandline interface or interrup by ctl + C
## Demo
To speed up inference, we choose to bypass the SadTalker model in our live demo as can be seen in the first video.
The second video shows an example of the SadTalker model in action, where the timedelay is edited out (ADD THE TIME IT TOOK).
VIDEO 1
<details>
<summary>Project Structure</summary>

## Project Structure

```plaintext
ACIT4040-AI-Project
├───aClient
├───app
│ ├───AnotherModule
│ │ ├───poetry.lock
│ │ ├───pyproject.toml
│ │ ├───Dockerfile
│ │ ├───app
│ │ │ ├───__init__.py # This makes it a package
│ │ │ ├───other files..
│ │ ├───other files..
│ ├───Llm
│ │ ├───poetry.lock
│ │ ├───pyproject.toml
│ │ ├───Dockerfile
│ │ ├───app
│ │ │ ├───__init__.py # This makes it a package
│ │ │ ├───other files..
│ │ ├───other files..
│ ├───Pipeline
│ │ ├───poetry.lock
│ │ ├───pyproject.toml
│ │ ├───Dockerfile
│ │ ├───app
│ │ │ ├───__init__.py # This makes it a package
│ │ │ ├───Code to tie it all together
│ │ ├───other files..
│ ├───TempModule1
│ │ ├───poetry.lock
│ │ ├───pyproject.toml
│ │ ├───Dockerfile
│ │ ├───app
│ │ │ ├───__init__.py # This makes it a package
│ │ │ ├───other files..
│ │ ├───other files..
│ ├───TempModule2
│ │ ├───poetry.lock
│ │ ├───pyproject.toml
│ │ ├───Dockerfile
│ │ ├───app
│ │ │ ├───__init__.py # This makes it a package
│ │ │ ├───other files..
│ │ ├───other files..
│ ├───TextToVoice
│ │ ├───poetry.lock
│ │ ├───pyproject.toml
│ │ ├───Dockerfile
│ │ ├───app
│ │ │ ├───__init__.py # This makes it a package
│ │ │ ├───other files..
│ │ ├───other files..
│ ├───VoiceToText
│ │ ├───poetry.lock
│ │ ├───pyproject.toml
│ │ ├───Dockerfile
│ │ ├───app
│ │ │ ├───__init__.py # This makes it a package
│ │ │ ├───audio_asset # New directory
│ │ │ ├───other files..
│ │ ├───other files..
│ └───VoiceToVideo
│ ├───poetry.lock
│ ├───pyproject.toml
│ ├───Dockerfile
│ ├───app
│ │ ├───__init__.py # This makes it a package
│ │ ├───other files..
│ ├───other files..
├───docker-compose.yml
├───LICENSE
├───README.md
└───tests
├───AnotherModule_tests
├───Llm_tests
├───Pipeline_tests
├───TempModule1_tests
├───TempModule2_tests
├───TextToVoice_tests
├───VoiceToText_tests
└───VoiceToVideo_tests
```
</details>
VIDEO 2
## Contributing
Expand All @@ -237,11 +117,11 @@ This project is licensed under MIT License - see the [LICENSE.md](LICENSE) file
## Contributors
- [Vebjørn Berstad](#)
- [Pratima Kumari](#)
- [Jackson Herbert Sinamenye](#)
- [Majdi Omar Alali](#)
- [Alexander Theo Strand](#)
- [Contributor 6 Name](#)
- [Contributor 7 Name](#)
- Jackson Herbert Sinamenye
- Vebjørn Berstad
- Pratima Kumari
- Majdi Omar Alali
- Alexander Theo Strand
- Alexander Soudae
- Majdi Alali
Binary file added media/eva_gif.mp4
Binary file not shown.
Binary file added media/eva_video.mp4
Binary file not shown.
Binary file added media/flow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added media/topology.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit aa000b0

Please sign in to comment.