项目介绍
smalltalk 是一个基于 tinystruct 的项目,提供即时通讯功能。用户可以使用它发送文本、分享图片、文档,以及其他内容。此外,smalltalk 还允许用户通过命令行接口(CLI)或网页接口与 OpenAI 开发的语言模型 ChatGPT 互动。
安装指南
安装 smalltalk 非常简单,以下是安装步骤:
-
从 GitHub 下载项目。点击“Clone or download”按钮,然后选择“Download ZIP”。
-
将下载的 ZIP 文件解压到本地计算机。
-
如果使用过 git,可以通过执行以下命令克隆项目,替代上述步骤:
git clone https://github.com/tinystruct/smalltalk.git
-
首先,需要按照这个教程在计算机上安装 Java 开发工具包(JDK 11+)。如果选择手动下载和安装,可以在 OpenJDK Archive 检查文件。此外,拥有一个 Java 开发环境(如 Eclipse 或 IntelliJ IDEA)会更好,但不是必需的。
如果当前环境使用的是 JDK 8,可以通过下面命令快速升级:
bin/openjdk-upgrade
-
将解压或克隆的项目导入 Java 开发环境。
-
打开
src/main/resources/application.properties
文件,更新openai.api_key
为用户自己的 API 密钥,或者设置环境变量OPENAI_API_KEY
为用户自己的密钥。 -
安装最后一步:
./mvnw compile
使用方法
smalltalk 可以通过多种方式运行:
命令行模式
- 打开终端并导航到项目的根目录。
- 通过执行以下命令以 CLI 模式运行 smalltalk:
要查看可用命令,可以运行以下命令:bin/dispatcher --version
要与 ChatGPT 互动,可以使用以下命令:bin/dispatcher --help
bin/dispatcher chat
网页模式
- 在 servlet 容器或 HTTP 服务器中运行项目。
- 在 servlet 容器中运行时,需要先编译项目,然后通过以下命令在 Tomcat 服务器上运行:
或者,通过以下命令在 Netty HTTP 服务器上运行:sudo bin/dispatcher start --import org.tinystruct.system.TomcatServer --server-port 777
sudo bin/dispatcher start --import org.tinystruct.system.NettyHttpServer --server-port 777
- 要在 Docker 容器中运行,可以使用下面的命令:
docker run -d -p 777:777 -e "OPENAI_API_KEY=[YOUR-OPENAI-API-KEY]" -e "STABILITY_API_KEY=[YOUR-STABILITY-API-KEY]" m0ver/smalltalk
- 在网页浏览器中访问 http://localhost:777/?q=talk
- 若要与 ChatGPT 进行对话,请在设置话题时在主题中输入 @ChatGPT。
演示
可通过以下链接查看不使用 websocket 但支持任何网页浏览器的 comet 技术演示:
疏解步骤
- 在项目的安装或使用过程中,如果遇到任何问题,请查阅项目文档或构建文件以获取有关如何设置和运行项目的信息。
- 如果仍有问题,请在 GitHub 上开启 issue 或联系项目维护者以获得帮助。
贡献方式
smalltalk 项目欢迎各界贡献。如有兴趣参与,请阅读 CONTRIBUTING.md 文件,以了解关于项目开发过程和编码标准的更多信息。
鸣谢
smalltalk 使用了 OpenAI 的 API 来与 ChatGPT 语言模型交互。感谢 OpenAI 为社区提供这一强大的工具。
许可
该项目授权遵照 Apache License,Version 2.0("License")。在没有许可证协议的情况下,您不能使用此文件。有关更多详细信息,请查看许可协议: Apache License 2.0。