이는 OpenAI API인 Langchain을 사용하여 사용자 입력에서 응답을 생성하도록 지원하는 간단한 Matrix 봇입니다. 봇은 프롬프트의 첫 번째 단어에 따라 !gpt
, !chat
, !v
, !pic
, !new
, !lc
및 !help
명령에 응답합니다.
Docker 방법(권장):
적절한 값으로 config.json
또는 .env
편집하세요.
설명 및 전체 매개변수 목록은 https://github.com/hibobmaster/matrix_chatgpt_bot/wiki를 참조하세요.
지속 데이터베이스 전용으로 두 개의 빈 파일을 생성합니다.
touch sync_db context.db manage_db
sudo docker compose up -d
Manage_db(무시 가능)는 langchain 에이전트용, sync_db는 매트릭스 동기화 데이터베이스용, context.db는 봇 채팅 컨텍스트용입니다.
libolm-dev
git clone https://github.com/hibobmaster/matrix_chatgpt_bot.git
python -m venv venv
source venv/bin/activate
pip install -U pip setuptools wheel
pip install -r requirements.txt
room_id
: 봇이 있는 방에서 작동합니다. {
"homeserver" : " YOUR_HOMESERVER " ,
"user_id" : " YOUR_USER_ID " ,
"password" : " YOUR_PASSWORD " ,
"device_id" : " YOUR_DEVICE_ID " ,
"room_id" : " YOUR_ROOM_ID " ,
"openai_api_key" : " YOUR_API_KEY " ,
"gpt_api_endpoint" : " xxxxxxxxx "
}
python src/main.py
봇과 상호 작용하려면 다음 프롬프트 중 하나를 사용하여 Matrix 룸의 봇에 메시지를 보내면 됩니다.
!help
도움말 메시지
!gpt
일회성 응답을 생성하려면:
!gpt What is the meaning of life?
!chat
공식 API를 사용하여 컨텍스트 대화로 채팅하려면 !chat Can you tell me a joke?
스크린샷을 참고하시면 됩니다
Room Level: quote a image and @bot + {prompt}
Thread Level: quote a image with a {prompt}
!lc
langchain API 엔드포인트를 사용하여 채팅하려면 !lc All the world is a stage
!pic
openai DALL·E 또는 LocalAI를 사용하여 이미지를 생성하려면 !pic A bridal bouquet made of succulents
!agent
표시 또는 langchain 에이전트 설정 !agent list
!agent use {agent_name}
!new + {chat}
새로운 대화 시작LangChain(flowise) 관리자: https://github.com/hibobmaster/matrix_chatgpt_bot/wiki/Langchain-(flowise)
https://github.com/hibobmaster/matrix_chatgpt_bot/wiki/
객실 수준:
스레드 수준:
프롬프트와 함께 봇을 언급하면 봇이 스레드로 응답합니다.
컨텍스트를 유지하려면 언급하지 않고 스레드에서 직접 프롬프트를 보내세요.