Чат-бот WeChat на основе fastapi + langchain + itchat, вдохновленный проектомchatgpt-on-wechat.
Ваша звезда – самая большая поддержка для меня?
Примечание
Этот проект предназначен только для личного обучения и общения. Пользователи должны соблюдать условия использования OpenAI, а также **китайские законы и правила** и не могут использовать его в незаконных целях.
В соответствии с требованиями «Временных мер по управлению услугами генеративного искусственного интеллекта», пожалуйста, не предоставляйте незарегистрированные услуги генеративного искусственного интеллекта населению в Китае.
При выполнении в режиме помощника по умолчанию будут настроены различные инструменты, и LLM автоматически выбирает подходящие инструменты для вызова, например вызов поисковой системы DuCKDuckGo, суммирование результатов поиска и возврат их пользователю.
Вам необходимо предоставить набор документов, а затем на основе вопроса пользователя вернуть наиболее релевантные фрагменты документов.
Проект подготовки учетной записи OpenAI по умолчанию использует интерфейс OpenAI. Чтобы создать учетную запись, необходимо перейти на страницу управления API, чтобы создать ключ API и сохранить его. доступ к сети и привязка оплаты кредитной картой.
Добавить ключ API в переменные среды
export OPENAI_API_KEY= " sk-xxxxxxxxxxxxxxxxxxxxxx "
Установите Python. Код разработан и протестирован с помощью Python3.10. Вам необходимо установить Python 3.10. После загрузки нажмите на следующий шаг, обеспечивающий защиту от ошибок.
redis используется для хранения записей чата пользователей WeChat
docker run -d -p 6379:6379 -p 8001:8001 redis/redis-stack:latest
poetry install
или
pip install -r requirements.txt
cp config/.env.example config/.env
uvicorn src.main:app
Настройте в файле config/.env
# openai 模型
OPENAI_MODEL= " gpt-3.5-turbo-1106 "
# openai api key
OPENAI_API_KEY= " your-openai-api-key "
# 模型 temperature
AI_TEMPERATURE=0.7
# 模型系统角色提示词
AI_SYSTEM_ROLE_PROMPT= "系统: "
# 聊天记录保存最大长度
CHAT_MAX_MESSAGE_HISTORY_LENGTH=10
# 触发聊天记录总结的阈值
CHAT_MESSAGE_HISTORY_SUMMARY_THRESHOLD=5
# 微信是否开启热重载
WECHAT_HOT_RELOAD=False
# 微信用户数据保存路径
WECHAT_USER_DATA_STORAGE_PATH= " wechat.pkl "