这是一个基于Python的Telegram聊天机器人,它使用带有GPT-3.5-Turbo-*模型的OpenAI API,以对话框上下文感知方式向用户提供对话响应。
您可以使用models.yml文件轻松地为聊天机器人配置OpenAI模型的参数。这种方法可以快速调整模型设置,例如temperature , max_tokens , voice等,而无需更改代码。只需编辑models.yml文件即可根据需要更改聊天机器人的行为和响应样式。
克隆或下载存储库。
git clone [email protected]:welel/dialog-chat-bot.git
在GPT-3.5-Turbo分支上结帐。
git checkout gpt-3.5-turbo
创建虚拟环境并激活它并安装依赖项。
python -m venv env
source env/bin/activate
pip install --upgrade pip && pip install -r requirements.txt
要使用语音消息,请安装FFMPEG。
# on Ubuntu or Debian
sudo apt update && sudo apt install ffmpeg
# on Arch Linux
sudo pacman -S ffmpeg
# on MacOS using Homebrew (https://brew.sh/)
brew install ffmpeg
# on Windows using Chocolatey (https://chocolatey.org/)
choco install ffmpeg
# on Windows using Scoop (https://scoop.sh/)
scoop install ffmpeg
复制/inname .env.dist为.env并填充数据。
cp .env.dist .env
设置电报机器人并获取机器人令牌(请参阅https://medium.com/geekculture/generate-telegram-telegram-token-for-bot-api-api-d26faf9bf064)。
设置一个OpenAI帐户并获取API密钥(请参阅https://beta.openai.com/docs/quickstart有关说明)。
运行机器人。
python bot.py
安装Docker和Docker组成(如果您不知道如何链接)。
复制/inname .env.dist为.env并填充数据。
cp .env.dist .env
现在,只需构建图像并使用Docker组成:
docker compose build
docker compose up -d
要开始与机器人进行交互,将任何消息发送给电报机器人。
聊天机器人使用models.yml文件来量身定制其响应。该文件允许对OpenAI模型参数进行详细的自定义,从而根据不同的需求或上下文提供灵活性来调整机器人行为。
models.yml项目目录中的models.yml文件包含不同模型或方案的配置。这是配置它的方法:
选择一个模型:在models密钥下,您可以定义多个配置。
每种配置都可以指定不同的OpenAI模型。例如, default配置使用gpt-3.5-turbo , max_tokens限制为100。您需要在环境变量型MODEL_CONFIG_NAME中设置模型配置名称以选择配置。
配置OpenAI聊天模型( chat_model部分) :
gpt-3.5-turbo模型,每个版本都具有不同的功能和上下文窗口尺寸。配置聊天机器人行为( chatbot部分) :
max_context_len参数定义单个对话窗口中考虑的令牌总数(用户输入和bot响应)。调整此功能有助于管理对话历史记录的细节,并可能影响计算要求和计费。配置机器人的语音( voice部分) :
alloy , echo , fable , onyx , nova和shimmer 。每个声音都有独特的音调和风格。