- 서비스의 실제 동작을 확인할 수 있는 서비스 링크 🌍
| 기능 이름 | 데스크탑 | 다크모드 |
|---|---|---|
| 라디오 채널 | ![]() |
![]() |
| 논문요약 | ![]() |
![]() |
| 북마크별자리 | ![]() |
|
| 기능 이름 | 라디오 채널 | 논문요약 | 북마크별자리 |
|---|---|---|---|
| 이미지 | ![]() |
![]() |
![]() |
이 서비스는 사용자가 논문을 검색하고 요약본을 확인하면서, 챗봇을 통해 질문할 수 있는 논문 웹 서비스입니다. 논문을 요약해서 읽어주는 라디오와 논문 간 연관도를 시각화한 논문 별자리 서비스 등을 통해 논문을 흥미롭게 접할 수 있는 요소를 더했습니다. 이 README는 서비스의 기능과 설치 방법에 대해 안내합니다.
- 사용자가 원하는 논문을 쉽고 빠르게 검색하고, 챗봇을 통해 필요한 정보를 효율적으로 얻는 것이 어려운 문제를 해결하기 위해 개발되었습니다. 연구자들이 필요한 논문을 찾고, 요약된 정보를 바탕으로 빠르게 이해할 수 있도록 돕습니다.
팀명: 곰국
역할: 팀장, INFRA 연락처: [email protected] GIT: github.com/찬호 |
역할: FE / HLS 연락처: [email protected] GIT: github.com/성민 |
역할: BE 연락처: [email protected] 기술 블로그: github.com/민경 |
역할: AI / DATA 연락처: [email protected] 기술 블로그: Git-io |
역할: FE 연락처: [email protected] GIT: github.com/윤주 |
역할: FE 연락처: [email protected] GIT: github.com/현수 |
- 논문 검색 및 요약: 사용자가 원하는 논문을 쉽게 찾고 요약된 정보를 제공하여 시간 절약 ⏱️
- 챗봇 기반 질의응답: 논문 내용을 바탕으로 실시간으로 질문에 대한 답변을 제공해주는 인터랙티브 챗봇 🤖
- PDF 분석 및 벡터 임베딩: 논문 PDF를 다운로드하고 벡터 임베딩을 통해 효율적인 데이터 검색 및 분석 🔍
-
논문 검색 및 요약 ✨
- 사용자가 원하는 논문을 검색하고, 논문의 목차, 주요 요약, 챕터별 요약을 제공합니다.
-
챗봇 질의응답 🤖
- 논문 내용에 대한 질의응답이 가능한 RAG 기법을 활용한 챗봇을 제공합니다. 논문에서 직접 답을 찾아드립니다!
-
논문 PDF 다운로드 및 분석 📄
- 사용자의 질문에 따라 해당 논문의 PDF를 다운로드하고, 이를 청크로 분할하여 분석합니다.
-
임베딩 및 벡터 검색 🔍
- OpenAI 임베딩 라이브러리를 이용하여 논문 데이터를 벡터화하고, Faiss에 저장하여 효율적인 검색을 지원합니다.
- Docker가 설치되어 있어야 합니다 🐳
- Python 3.11.10 버전을 사용합니다 🐍
- MySQL 데이터베이스 연결 정보가 필요합니다 (자세한 정보는 아래 참조)
$ git clone https://lab.ssafy.com/s11-bigdata-dist-sub1/S11P21B208.git
$ cd S11P21B208.env파일을 생성하고 아래와 같은 정보로 설정합니다:MYSQL_HOST=j11b208.p.ssafy.io MYSQL_PORT=3306 MYSQL_USER=root MYSQL_PASSWORD=INPUT YOUR PASSWORD DATABASE=paperdot
| 분야 | 기술스택 | 담당자 |
|---|---|---|
| FE | React, TypeScript, Zustand | 권성민, 이윤주, 장현수 |
| BE | JDK(17), HDFS(2.7.3), SpringBoot(3.3.3) | 김민경, 이찬호 |
| 데이터베이스 | MySQL(8.0.23), Redis(7.4.0), Elastic Search(8.15.1) | 김민경, 박상필, 이찬호 |
| 임베딩 및 벡터 검색 | Faiss(cpu-1.8.0.post1), KR-SBERT-V40K-klueNLI-augSTS | 박상필, 장현수 |
| 컨테이너 관리 및 배포 | Jenkins(2.476), Docker(27.2.1) | 이찬호 |
| AI 기술 | LangChain(0.3.2), Scikit-Learn(1.3.0), FastAPI(0.115.0) | 박상필 |
| LLM 모델 | LLama3.1-ko-Bllossom-8B, GPT-4o | 박상필, 권성민 |
- 라디오를 들으며 유저들과 채팅으로 지식을 함양해보세요 ✨
- 논문 내용에서 궁금한 점은 챗봇에게 질문해보세요 🤖
- 웹사이트에 접속하여 원하는 논문을 검색하세요 🔍
- 논문 요약을 확인하고, 나만의 정리 노트를 작성해보세요 📖
- 논문에 대한 추가 정보를 쉽게 얻을 수 있습니다 📘
- 궁금한 점은 질문과 답변을 통해 빠르게 문제를 해결하세요! ❓
- Q: Docker 설치가 필요한가요?
- A: 네, 서비스는 Docker를 통해 배포됩니다.
- Q: 어떤 데이터베이스를 사용하나요?
- A:
MySQL을 사용합니다.
- A:
- Q: 유사 논문 추천 기능
- MapReduce 분산처리로
벡터및TF-IDF유사도를 계산합니다.
- MapReduce 분산처리로
- Q: 사용자 북마크 및 개인화 서비스
논문(Node)간연관 관계(Edge)를 기반으로 알고리즘이 계산됩니다.
- Q: Docker 설치가 필요한가요?
PaperDot/
📂 S11P21B208
├── 📂 .gitlab
│ ├── 📂 issue_templates
│ └── 📂 merge_request_templates
├── 📂 AI
│ ├── 📂 app
│ │ ├── 📂 api
│ │ ├── 📂 config
│ │ ├── 📂 embeddings
│ │ ├── 📂 search
│ │ ├── 📂 tf_idf
│ │ └── 📂 vector_search
│ ├── 📂 app_overview
│ │ ├── 📂 caches
│ │ └── 📂 pdf_summary
│ └── 📂 app_rag
│ ├── 📂 caches
│ ├── 📂 datas
│ └── 📂 models
├── 📂 Back
│ └── 📂 paperdot
│ ├── 📂 bin
│ │ ├── 📂 main
│ │ └── 📂 test
│ ├── 📂 gradle
│ └── 📂 src
│ ├── 📂 main
│ │ ├── 📂 java
│ │ │ └── 📂 gomgook
│ │ │ └── 📂 paperdot
│ │ └── 📂 resources
│ └── 📂 test
├── 📂 Front
│ ├── 📂 public
│ └── 📂 src
│ ├── 📂 apis
│ ├── 📂 assets
│ │ └── 📂 images
│ ├── 📂 components
│ │ ├── 📂 chat
│ │ ├── 📂 common
│ │ ├── 📂 main
│ │ └── 📂 search
│ ├── 📂 pages
│ └── 📂 router
└── 📂 Radio
└── 📂 radio
├── 📂 bin
│ ├── 📂 main
│ └── 📂 test
├── 📂 gradle
└── 📂 src
├── 📂 java
│ └── 📂 com
└── 📂 resources
- AI: AI 모델 관련 파일들이 포함된 디렉토리.
- Backend-feedme: 백엔드 애플리케이션 코드.
- Front-feedme: 프론트엔드 애플리케이션 코드.
기여를 원하시면 이 저장소를 포크하고, 브랜치를 생성한 후 풀 리퀘스트를 보내주세요! 🙌
- 코드 스타일: PEP8을 준수해주세요 📝
- PR 설명: 변경 사항과 의도를 명확하게 설명해주세요 📄
- 데이터베이스와 환경 변수를 설정할 때 민감한 정보는
.env파일에 안전하게 보관하세요 🔐 - 외부에 노출되지 않도록 주의해주세요!
- 이슈나 질문은 MatterMost 혹은 이메일을 통해 남겨주세요 📝
감사합니다! 🙇♂️🙇♀️













