BtB(Blue-text Bot), 로컬에서 실행되는 채팅 기록을 기억(memory)하고 관리할 수 있는 macOS용 채팅 봇
소개
Blue-text Bot AI (btb)는 Ollama와 AppleScript를 사용하여 로컬에서 실행되는 봇입니다. 이 프로젝트는 사용자의 메시지 기록을 주기적으로 확인하고, 새로운 메시지를 AppleScript를 통해 전송합니다. 이후, 필요한 내용들을 JSON을 사용하여 메모리를 관리하며, 사용자는 필요한 경우 이를 브라우저에서 실시간으로 편집할 수 있습니다. btb는 아직 초기 단계의 프로젝트이지만, 메시지 관리와 메모리 편집이라는 두 가지 주요 기능을 제공합니다.
이 프로젝트는 Mac과 별도의 Apple 계정이 필요합니다. Ollama를 설치하고 요구 사항을 충족한 후 서비스를 실행하면 됩니다. 이와 유사한 다른 도구로는 Slack의 봇이나 Discord 봇이 있지만, 대부분의 봇은 클라우드 기반입니다. btb는 로컬에서 실행되기 때문에 보안과 프라이버시 측면에서 더 유리할 수 있습니다.
주요 특징 (동작 방식)
-
메시지 관리:
~/Library/Messages/chat.db
를 매 초마다 파싱하여 최신 메시지를 확인하고, AppleScript (send.applescript
)를 사용하여 응답 메시지를 전송합니다. -
JSON 메모리 관리: 최신 메모리를 JSON 형식으로 Ollama 채팅 기록에 주입하고, 별도의 모델을 사용하여 새로운 정보를 요약하고 JSON을 업데이트합니다.
-
실시간 편집: Flask와 Websockets를 사용하여 사용자가 브라우저에서 JSON을 실시간으로 편집할 수 있습니다.
사용 방법
먼저 Ollama를 설치하고, 모델을 다운로드 받습니다.
btb 저장소도 함께 복제(clone)하여 필요 패키지들을 설치하고 실행합니다.
# ollama에서 모델 가져오기
ollama pull llama3
# 필요 패키지 설치
pip install -r requirements.txt
# 서비스 실행
python service.py
라이선스
이 프로젝트는 MIT License로 공개 및 배포되고 있습니다.
더 읽어보기
이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다.
파이토치 한국 사용자 모임이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)
아래쪽에 좋아요를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~