Introduction to the smalltalk Project
The smalltalk project is a remarkable tool rooted in tinystruct, offering efficient instant messaging capabilities for a modern technological landscape. It empowers users to send text messages and share media such as images and documents. Beyond basic messaging, it provides an innovative feature allowing integration with ChatGPT, a sophisticated language model developed by OpenAI. Users can effortlessly interact with this model via a command-line interface (CLI) or through a user-friendly web interface.
Installation Guide
Setting up smalltalk is straightforward:
-
Downloading the Project: Access the project on GitHub by selecting "Clone or download" and then "Download ZIP". Alternatively, if using git, execute:
git clone https://github.com/tinystruct/smalltalk.git
-
Prepare Your Environment: It's crucial to have the Java Development Kit (JDK 11+) installed on your computer. Follow the OpenJDK installation guide. If you have JDK 8, use:
bin/openjdk-upgrade
-
Import and Configure: Once downloaded and extracted (or cloned), import the project into a Java development environment. Update the
openai.api_key
insrc/main/resources/application.properties
with your key or set theOPENAI_API_KEY
environment variable. -
Compilation: Complete the setup by compiling the project:
./mvnw compile
Operating smalltalk
smalltalk operates in two main modes:
CLI Mode
-
Execute Commands: Open a terminal and navigate to the project's root directory. Check its version with:
bin/dispatcher --version
-
Commands Overview: For a list of supported commands:
bin/dispatcher --help
-
ChatGPT Interaction: Engage with ChatGPT using:
bin/dispatcher chat
Web Mode
-
Servlet Container: Compile the project, then run it using a servlet container like Tomcat:
sudo bin/dispatcher start --import org.tinystruct.system.TomcatServer --server-port 777
-
HTTP Server: Alternatively, run it on Netty HTTP server:
sudo bin/dispatcher start --import org.tinystruct.system.NettyHttpServer --server-port 777
-
Docker Container: Deploy via Docker for a seamless setup:
docker run -d -p 777:777 -e "OPENAI_API_KEY=[YOUR-OPENAI-API-KEY]" -e "STABILITY_API_KEY=[YOUR-STABILITY-API-KEY]" m0ver/smalltalk
-
Web Access: Access the application at http://localhost:777/?q=talk in your web browser.
For conversations involving ChatGPT, prefix your topic with @ChatGPT
.
Troubleshooting
Should you encounter any issues during installation or usage, consult the project's documentation or build files for troubleshooting guidance. Persistent problems can be reported on GitHub, or you can reach out to the project maintainers.
Contribution
smalltalk thrives on community support and contributions. If you're keen to contribute, review the CONTRIBUTING.md file for insights into the development process and coding norms.
Acknowledgements
The smalltalk project leverages the OpenAI API to facilitate interactions with the ChatGPT language model. A special thanks to OpenAI for offering this impressive tool.
License
The project is licensed under the Apache License, Version 2.0. See the license details for usage and distribution conditions.