alchemine / paper-chat

Paper-Chat은 arXiv ID를 이용하여 학술 논문에 대하여 대화할 수 있는 AI 챗봇입니다.
0 stars 2 forks source link
chatbot elasticsearch langchain openai python

Paper-Chat

Paper-Chat은 arXiv ID를 이용하여 학술 논문에 대하여 대화할 수 있는 AI 챗봇입니다. \ 연구자, 학생들의 빠른 학습, 효율적인 실전 적용과 트렌드 분석 등을 위해 설계되었으며 복잡한 학술 내용을 쉽게 이해하고 탐색할 수 있도록 도와줄 수 있습니다.

alt text

사전 요구사항

  1. Docker, Docker Compose가 설치되어 있어야 합니다.

설치 및 실행

Production

  1. Repository를 가져오기

    git clone https://github.com/alchemine/paper-chat.git
    cd paper-chat
  2. Docker-compose를 통해 cluster(entrypoint, elasticsearch cluster)를 구축하고 Streamlit 앱을 실행

    docker-compose -f docker-compose.prd.yml up
  3. 브라우저에서 Streamlit app에 접속

    http://localhost:8501

Development

  1. Repository를 가져오기

    git clone https://github.com/alchemine/paper-chat.git
    cd paper-chat
  2. Docker-compose를 통해 cluster(entrypoint, elasticsearch cluster)를 구축

    docker-compose -f docker-compose.dev.yml up
    • 혹은, dev container를 사용
  3. AzureChatOpenAI를 사용할 경우, dev.env 파일에 필요한 환경변수가 설정되어 있어야 합니다.

    OPENAI_API_KEY=...
    
    # Needed if using Azure LLM
    AZURE_OPENAI_ENDPOINT=...
    AZURE_OPENAI_API_KEY=...
    OPENAI_API_VERSION=...
    AZURE_OPENAI_LLM_DEPLOYMENT_NAME=...
    AZURE_OPENAI_LLM_MODEL=...
    AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT=...
    AZURE_OPENAI_EMBEDDINGS_MODEL=...
    • OPENAI_API_KEY를 적으면 OpenAI API Key 항목이 자동으로 해당 값으로 채워집니다.
    • OpenAI API Key에 azure 라고 치면 AzureChatOpenAI를 사용할 수 있습니다.

사용 방법

1. Sidebar에 OpenAI API Key와 논문의 arXiv ID를 입력합니다.

alt text

2. 논문 요약이 자동으로 생성되어 표시됩니다.

alt text

3. Chatbot 인터페이스를 통해 논문에 대하여 질문하면, 논문 내용을 기반으로 답변을 제공받을 수 있습니다.

alt text

4. 다른 논문에 대하여 질문하고 싶다면, sidebar에 새로운 arXiv ID를 입력하세요.

alt text

추가 기능 및 기능 개선

주요 개발 진행 상황은 Issues를 참고해주세요.