Skip to content

Commit

Permalink
Fixed Dockerfile and description in README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
jschm42 committed Nov 6, 2023
1 parent 743133c commit 0fd520d
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 9 deletions.
4 changes: 4 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@ EXPOSE 8090
# freetype is required for the font rendering in PlantUML
RUN apk add --no-cache graphviz ttf-dejavu fontconfig freetype

# Create empty properties file
RUN mkdir -p /usr/local/talkforgeai
RUN touch /usr/local/talkforgeai/talkforgeai.properties

# Set up a volume for the data directory
VOLUME /data

Expand Down
44 changes: 35 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,18 @@
# TalkforgeAI - AI-Powered Chatbot Creation Tool

## Overview
TalkforgeAI is an AI-powered chat software that facilitates the creation of personalized chatbots using the ChatGPT platform. It allows users to tailor the chat experience by creating individual AI profiles, known as Personas, each with its own personality profile and avatar image. In addition to text input, prompts can be generated via voice input, and the AI's responses can be delivered through browser-based or Elevenlabs text-to-speech output.

TalkforgeAI is an AI-powered chat software that facilitates the creation of personalized chatbots using the ChatGPT
platform. It allows users to tailor the chat experience by creating individual AI profiles, known as Personas, each with
its own personality profile and avatar image. In addition to text input, prompts can be generated via voice input, and
the AI's responses can be delivered through browser-based or Elevenlabs text-to-speech output.

### Prerequisites
- An OpenAI API key is required. To obtain one, visit the [OpenAI website](https://openai.com/) and follow the instructions for API key generation.
- For optional Elevenlabs speech output, an API key is also necessary. Please visit the [Elevenlabs website](https://elevenlabs.io/) for instructions.

- An OpenAI API key is required. To obtain one, visit the [OpenAI website](https://openai.com/) and follow the
instructions for API key generation.
- For optional Elevenlabs speech output, an API key is also necessary. Please visit
the [Elevenlabs website](https://elevenlabs.io/) for instructions.

## Features

Expand All @@ -26,20 +33,24 @@ TalkforgeAI is an AI-powered chat software that facilitates the creation of pers

## Upcoming Features

- Multi-user support with access control for the features of each Persona, allowing for the assignment and sharing of Personas among users.
- Multi-user support with access control for the features of each Persona, allowing for the assignment and sharing of
Personas among users.
- Image interpretation, initially supported by Huggingface models.
- Reading and evaluating web links.
- Upload of files to be interpreted by the AI (PDF, TXT, etc.)
- Support for DALL-E 3 (as soon as API will be available)
- Memory feature to store critical information in the database and retrieve it as needed, allowing for the persistence of information beyond the maximum token limit.
- Memory feature to store critical information in the database and retrieve it as needed, allowing for the persistence
of information beyond the maximum token limit.
- Function support for tasks such as sending emails, querying calendar data, etc.

## Installation

### Building the Project

- Ensure Java 19 or higher is installed on your system and the JAVA_HOME environment variable ist set correctly.

### Starting the Server

- To run from a JAR file, use the following command with the appropriate API keys and data directory specified:

java -jar ./talkforgeai-0.1.0.jar --server.port=8090 --openai.api-key=[your OpenAI API Key] --elevenlabs.api-key=[you Elevenlabs API-Key] --talkforgeai.datadir=[your TalkforgeAI data directory]
Expand All @@ -56,26 +67,41 @@ Example properties file:
talkforgeai.datadir=[your TalkforgeAI data directory]

### Using Docker

- Deploy using Docker with the following command:

docker run -d -p 8099:8099 -v /usr/local/talkforgeai/talkforgeai.properties:/usr/local/talkforgeai/talkforgeai.properties:ro -v /home/jean/talkforgeai-data:/data jschm2019/talkforgeai
docker run -d -p [your local port]:8090 -e TALKFORGEAI_OPENAI_APIKEY=[your OpenAI API Key] -e TALKFORGEAI_ELEVENLABS_APIKEY=[you Elevenlabs API-Key] talkforgeai/talkforgeai:latest

- If you want to use a local properties file, you can mount it into the container:

docker run -d -p [your local port]:8090 -v [your local properties file]:/usr/local/talkforgeai/talkforgeai.properties:ro -v C:/Users/jschmitz/DEV/talkforge-data:/data talkforgeai/talkforgeai:latest

- If you want to use a local data directory, you can mount it into the container:

docker run -d -p [your local port]:8090 -v [your local data directory]:/data talkforgeai/talkforgeai:latest

## Building from Source

- After cloning the repository, building is straightforward with Maven:

./mvn clean package
mvn clean package

*Note: Replace placeholder text (e.g., [your OpenAI API Key]) with actual API keys and directory paths as required for your setup.*
*Note: Replace placeholder text (e.g., [your OpenAI API Key]) with actual API keys and directory paths as required for
your setup.*

## Contributing

Contributions are welcome! Please read our contributing guidelines for how to proceed.

## License

TalkforgeAI is released under the Apache License 2.0. See the [LICENSE](LICENSE) file for more details.

## Support

For support and queries, please open an issue on the GitHub repository or contact the maintainers directly.

---

This README is a basic guide for getting started with TalkforgeAI. For more detailed documentation, please refer to the project's documentation site.
This README is a basic guide for getting started with TalkforgeAI. For more detailed documentation, please refer to the
project's documentation site.

0 comments on commit 0fd520d

Please sign in to comment.